Stale pull requests

Every day, see which pull requests need attention, who owns them and the next step to unblock each one.

What you’ll set up

Connections

GitHub repositories (read pull requests) · Required

Reads open pull requests, reviewers, review comments and check status. Closes and comments on nothing.

Upgrades

Slack or email

Sends the nudges you approve to the people named. Nothing is sent before you approve it.

Inputs

Repositories to watch · Required

List, no default

Days without activity before a pull request counts as stale · Optional

Text, default 5

Include draft pull requests · Optional

Choice of no or yes, default no

Brief · Required

Text, prefilled and editable during setup.

Runs

Runs every day at 08:00

Done by Research analyst

You approve before anything goes out.

Set up this job

You approve every report · Free to start

How it runs

One agent does the work. Its department head reviews it, then you approve.

  1. 1Research analyst

    Runs daily at 08:00 and prepares the report from your connected sources.

  2. 2CTO · Review

    The department head reviews the report before it reaches you.

  3. 3You

    You approve before anything goes out.

What you get

Sample, not live dataPull requests needing attention (Sample, not live data)

Sample, not live data. Repository, people and pull requests are invented.

Sample: Pull request #42 has waited five days for review. Ask the assigned reviewer for a decision. The agent re-read its status and reviewer just before the list was sent.

PRQuiet forBlocked on
#42 Add CSV export5 daysReviewer
#39 Fix timezone bug8 daysAuthor, two comments open
#31 Dark mode tokens6 daysNo reviewer requested

Why pull requests go quiet

A pull request that nobody touches for a week costs more than the code in it: the author loses context, the reviewer forgets it exists, and the branch drifts toward a conflict. The usual tools treat this as hygiene. The actions/stale workflow, for example, labels issues and pull requests after 60 days of inactivity by default and closes them 7 days later. That tidies a backlog, but a five-day-old review request is a people problem, not a cleanup problem.

How the scheduled job works

You add the job, name the repositories and connect them from GitHub with read access. Each day a scheduled research analyst agent lists open pull requests sorted by last update, skips drafts unless you ask, and for each one past your threshold names the blocker: waiting on review, waiting on the author, failing checks, a conflict, or no reviewer at all. It re-reads each item just before reporting and drafts one short nudge per person. Its department head, the CTO agent, reviews the list, then you approve, edit or skip each nudge.

A worked example

In the sample, #42 has waited five days on a requested reviewer, so the nudge asks that reviewer for a decision or a handoff. #39 is waiting on its author, who has two review comments open. #31 has no reviewer at all, so the nudge goes to you with a suggestion of who could take it. Three short messages, each to the right person, approved in under a minute. For what did merge this week, see the weekly pull request digest below.

Questions

Start with one report

Set up this job

You approve every report · Free to start