babysit-pr

Installation
SKILL.md

Babysit PR

Keep a pull request moving until every reviewer has been answered, the latest commit has been reviewed, and its required checks pass. The reviewers are independent agents this skill starts, as defined in REVIEWERS.md, and people. The agents review the pull request once when it has no review yet, and check each round of fixes before it is pushed, so every pushed commit is reviewed without waiting for an outside service. Human reviewers get the same treatment as the agents: their comments are audited on the merits, fixed when they meet the fix bar, and answered in every case. A failing check is feedback too, decided under Failing checks. Work without asking for approval, unless the user asked to approve fixes first, and stop only for the reasons under Stop. Never force-push or merge.

Most review findings are real, but fixing every real finding makes a pull request grow with each round: each fix adds code that the next review finds new edge cases in. This skill fixes what matters, settles the rest by reply, and stops pushing when the rounds stop finding what matters.

Start

  1. Find the PR. Use the PR from the conversation, otherwise the current branch's PR. Ask only if neither is clear. If the working tree is not on the PR's head branch, check it out with gh pr checkout; for a PR from a fork, pushes go to the fork's branch.

  2. Write down the PR's intent before reading any comment: the problem it solves, the approach it chose, its known limits, and what it deliberately leaves out. Take it from the user's instructions in this conversation, then the linked issue, the PR description, and the commits, in that order. Every comment is judged against this intent. Also note the requirements the reviewers get: the issue number, or the agreed request written out in full when there is no issue.

  3. Check the current state once. Run the watcher with --timeout 0, which checks the PR once and returns without waiting:

    python3 "<skill-path>/scripts/watch_pr.py" [--pr URL_OR_NUMBER] --timeout 0
    

    Keep its checked_at for a later --since. Its reviews field gives first_reviewed_commit, last_reviewed_commit, and fix_checks; the head is reviewed when last_reviewed_commit equals pull_request.head_sha. Its checks field lists the head's failing and pending checks, each marked required when branch protection requires it, and pull_request.mergeable is MERGEABLE, CONFLICTING, or UNKNOWN while GitHub is still computing it.

Installs
31
GitHub Stars
3
First Seen
Oct 1, 2026