PR Babysitter
openinterpreter/openinterpreter
Watches an open GitHub pull request until it merges, handling review comments, diagnosing CI failures and retrying flaky checks along the way.
Run a full pull request review and post review comments directly to the current branch's GitHub PR.
$ npx skills add testdouble/han --skill post-code-review-to-pr -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install testdouble/han post-code-review-to-pr --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/testdouble/han.git skills-src && mkdir -p .claude/skills && cp -r skills-src/han-github/skills/post-code-review-to-pr .claude/skills/post-code-review-to-pr && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "post-code-review-to-pr" agent skill from https://github.com/testdouble/han/tree/main/han-github/skills/post-code-review-to-pr into .claude/skills/post-code-review-to-pr/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "post-code-review-to-pr", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/testdouble/han/tree/main/han-github/skills/post-code-review-to-prType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add testdouble/han --skill post-code-review-to-pr -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install testdouble/han post-code-review-to-pr --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/testdouble/han.git skills-src && mkdir -p .agents/skills && cp -r skills-src/han-github/skills/post-code-review-to-pr .agents/skills/post-code-review-to-pr && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "post-code-review-to-pr" agent skill from https://github.com/testdouble/han/tree/main/han-github/skills/post-code-review-to-pr into .agents/skills/post-code-review-to-pr/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "post-code-review-to-pr", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add testdouble/han --skill post-code-review-to-pr -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install testdouble/han post-code-review-to-pr --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/testdouble/han.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/han-github/skills/post-code-review-to-pr .cursor/skills/post-code-review-to-pr && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "post-code-review-to-pr" agent skill from https://github.com/testdouble/han/tree/main/han-github/skills/post-code-review-to-pr into .cursor/skills/post-code-review-to-pr/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "post-code-review-to-pr", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/testdouble/han.git --path han-github/skills/post-code-review-to-pr--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add testdouble/han --skill post-code-review-to-pr -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install testdouble/han post-code-review-to-pr --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/testdouble/han.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/han-github/skills/post-code-review-to-pr .gemini/skills/post-code-review-to-pr && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "post-code-review-to-pr" agent skill from https://github.com/testdouble/han/tree/main/han-github/skills/post-code-review-to-pr into .gemini/skills/post-code-review-to-pr/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "post-code-review-to-pr", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install testdouble/han post-code-review-to-prInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add testdouble/han --skill post-code-review-to-pr -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/testdouble/han.git skills-src && mkdir -p .github/skills && cp -r skills-src/han-github/skills/post-code-review-to-pr .github/skills/post-code-review-to-pr && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "post-code-review-to-pr" agent skill from https://github.com/testdouble/han/tree/main/han-github/skills/post-code-review-to-pr into .github/skills/post-code-review-to-pr/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "post-code-review-to-pr", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add testdouble/han --skill post-code-review-to-pr -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install testdouble/han post-code-review-to-pr --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/testdouble/han.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/han-github/skills/post-code-review-to-pr .opencode/skills/post-code-review-to-pr && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "post-code-review-to-pr" agent skill from https://github.com/testdouble/han/tree/main/han-github/skills/post-code-review-to-pr into .opencode/skills/post-code-review-to-pr/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "post-code-review-to-pr", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
post-code-review-to-prRun a full pull request review and post review comments directly to the current branch's GitHub PR.
Post Code Review To PR is an agent skill from testdouble/han. Run a full pull request review and post review comments directly to the current branch's GitHub PR. Requires the gh CLI to be installed and a PR to already exist for the current branch. Use when you want review feedback posted to GitHub as PR comments. For local code review without posting to GitHub, use code-review instead. Does not write or update PR descriptions — use update-pr-description for that.
Its SKILL.md is about 1.9k tokens, which your agent loads only when the skill is triggered. The skill folder holds 5 other files, including scripts (for example `scripts/create-review-tempfile.sh`, `scripts/post-pr-comment.sh` and `scripts/post-pr-review.sh`).
It sits in Development, covering Pull requests and Code review. It works with GitHub. The repository describes itself as: Han: AI skills and agents for "Solo" product engineers and small teams. The licence is MIT.
5 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit abba73a. It shows what the files ask for, not the result of running them.
Pre-approves these tools, so the agent can use them without asking each time:
Bash(jq *)Bash(gh *)Bash(git *)Bash(make *)Bash(npm *)ReadWriteGrepGlobSkill…and 2 more on the same allowed-tools line.
From allowed-tools in the SKILL.md frontmatter.
Ships 4 files in scripts/ (Shell), which the agent can run.
Shell commands in SKILL.md call:
gitghbashFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use git and gh, which can reach the network depending on how they are called.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Post Code Review To PR loads about 1.9k tokens when it runs. Until then it costs about 107 tokens; SKILL.md has 1,010 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.
The full file from testdouble/han at commit abba73a, republished under its MIT licence (© testdouble). 1,010 words, ~1,867 tokens.
.claude/skills/post-code-review-to-pr/SKILL.md (or your agent's skills folder). This skill also uses 4 other files; get the full folder from GitHub.When running a PR code review, follow the process outlined here.
which gh 2>/dev/null || echo "not installed"which jq 2>/dev/null || echo "not installed"If gh is not found, inform the user it must be installed and configured; if jq is not found, inform the user it must
be installed. In either case, immediately stop.
git branch --show-current 2>/dev/null || echo unknowngit symbolic-ref --short refs/remotes/origin/HEAD 2>/dev/null || echo unknowngh pr diff --name-only 2>/dev/null || echo "no pr"bash "${CLAUDE_PLUGIN_ROOT}/scripts/han-config-dir.sh" 2>/dev/null || echo "$HOME/.claude"cat .han/config.md 2>/dev/null || echo ""As your first action, use the Read tool on .han/config.md inside the personal config directory path above. A read
that returns no file is no personal configuration: continue silently. When that file or the project .han/config.md
probe supplies content, apply it per config-rule.md, which governs precedence
between the two files, relative-path resolution, and what to do with a file that reads but cannot be used.
If changed files is empty or reads no pr, or gh pr view --json number,url fails, inform the user no reviewable PR
exists for the current branch and stop.
Invoke the /code-review skill to perform the full code review. Pass along any user-provided focus areas or context
from the original arguments.
/code-review writes its report to a file and names the path in its closing message; it does not print the review into
the conversation. Capture that path — Step 3 reads the report from it. After /code-review completes, proceed
immediately to Step 3 — do not stop here.
Ask the user whether they'd like to post the review to the PR on GitHub using AskUserQuestion with options "Yes, post
the review to GitHub" and "No, just the local review". If the user declines, proceed to Step 5.
If the user accepts:
${CLAUDE_SKILL_DIR}/scripts/pr-metadata.sh, which outputs JSON with owner_repo,
pr_number, head_sha, pr_author_login, and current_user_login.Because the review body will be publicly visible on the PR, run a clarity pass on the draft before posting.
Match the body's length to what the review found. Every finding earns its place by naming a specific problem at a
specific location. Skip filler sections, a restated summary of the diff, and boilerplate the reader can see for
themselves on the PR. Three sections are exempt from that length-matching and are never cut or shortened: the Review
Summary table, the Review Recommendation, and the Review Coverage section. Review Coverage names no problem at any
location by construction; it says which coverage the review did not have, and deleting it as filler would hide that from
the widest audience the review reaches. Stay inside what the review covered: this step edits wording and severity, and
never adds a finding /code-review did not raise.
/tmp/post-code-review-to-pr-draft.md) using the Write tool.han-core:junior-developer agent in artifact-review mode with the prompt: "You are reviewing the
text of a code review that is about to be posted publicly on a GitHub pull request. The review is at {draft_path}. Do
not re-review the code — review the review. Flag findings whose wording is unclear, severity is mis-assigned (CRIT
used where WARN would be accurate, or vice versa), language is accusatory or blaming rather than evidence-based, or
file_path:line_number references are missing or invalid. Leave the Review Summary table, the Review Recommendation,
and any Review Coverage section as they are; they are not findings and are not subject to the length-matching bar.
Return a short list of specific edits with before/after text; return an empty list if the review reads well as-is."${CLAUDE_SKILL_DIR}/scripts/create-review-tempfile.sh. Write the final,
edited review body to that path using the Write tool (not Bash).pr_author_login matches current_user_login (self-authored PR), post as a PR
comment (GitHub rejects formal reviews from PR authors) by running
${CLAUDE_SKILL_DIR}/scripts/post-pr-comment.sh {pr_number} {temp_file_path}. If they differ, determine event type
(REQUEST_CHANGES if any CRIT or WARN findings exist, COMMENT if only SUGG) and post as a formal review by running
${CLAUDE_SKILL_DIR}/scripts/post-pr-review.sh {owner/repo} {pr_number} {head_sha} {event_type} {temp_file_path}.If any Critical or Warning issues were identified, ask the user using AskUserQuestion — "Would you like me to create a
plan to fix the identified issues?" with options "Yes, create a fix plan" and "No, just the review". If yes, enter plan
mode and create a detailed implementation plan listing each Critical and Warning item by task ID, with specific code
changes, file paths, and line numbers, ordered by priority (Critical first). If no Critical or Warning issues were
found, the review is complete — suggestions alone do not warrant a fix plan.
© testdouble, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 4 other files (scripts) in han-github/skills/post-code-review-to-pr of testdouble/han.
Open the folder on GitHubat commit abba73a
Post Code Review To PR next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Post Code Review To PR this skilltestdouble/han | 279 | — | ~1.9k | Automated safety check: Pass | MIT | |
| PR Babysitteropeninterpreter/openinterpreter | 69k | 3 repos | ~4.2k | Automated safety check: Pass | Apache-2.0 | |
| GitHub Review Iterationprisma/orm | 48k | — | ~2.2k | Automated safety check: Pass | Apache-2.0 | |
| PR Review State Fetchprisma/orm | 48k | — | ~767 | Automated safety check: Pass | Apache-2.0 | |
| PR Finalize Reviewmicrosoft/garnet | 12k | — | ~3.1k | Automated safety check: Pass | MIT | |
| Fastlane Pull Request Reviewfastlane/fastlane | 42k | — | ~550 | Automated safety check: Pass | MIT |
openinterpreter/openinterpreter
Watches an open GitHub pull request until it merges, handling review comments, diagnosing CI failures and retrying flaky checks along the way.
prisma/orm
Runs a loop on a GitHub pull request: fetch review state, triage comments into actions, implement them and resolve threads, repeating until nothing actionable is left.
prisma/orm
Fetches a pull request's canonical review state as JSON, validates it, and renders markdown, a text summary and triage target files from it using bundled scripts.
microsoft/garnet
Checks that a pull request's title and description match its implementation and reviews the code for Garnet best practices, reporting findings without posting them.
fastlane/fastlane
Reviews a fastlane pull request against its linked issue and the project guides, separating blocking from non-blocking findings and handling vulnerabilities privately.
thedotmack/claude-mem
Keeps watching a pull request, fixing real review and CI problems and resolving stale threads, until it is clean and ready to merge.
testdouble/han
Convert a stakeholder summary markdown file into a single self-contained HTML executive report — bottom line and decision asks up front, supporting detail later — styled with a Test Double-derived…
testdouble/han
Update Han plugin documentation so every skill, agent, guidance doc, index, and cross-reference is current and accurate.
testdouble/han
Authoritative guidance for building Claude Code skills, agents, and plugins, plus init and update steps that install and refresh the plugin-building skills in the current repository.
testdouble/han
Cut a Han release: update CHANGELOG.md with the changes since the last release, bump and tag every plugin that changed as {plugin-name}--v{version} so a version-constrained dependency can resolve…
testdouble/han
Builds a feature implementation plan from an existing feature specification (or equivalent context) through a facilitated team conversation.
testdouble/han
Restructure existing code without changing its behavior, through a test-gated refactoring loop: a named target, a green suite over that target before any edit, a planned sequence of small named…
Works with
Categories
Run a full pull request review and post review comments directly to the current branch's GitHub PR. Post Code Review To PR is an agent skill from testdouble/han. Run a full pull request review and post review comments directly to the current branch's GitHub PR.
Post Code Review To PR fits situations like: you want review feedback posted to GitHub as PR comments; tasks that involve Pull requests; tasks that involve Code review.
Run `npx skills add testdouble/han --skill post-code-review-to-pr -a claude-code`. Or copy the skill folder (han-github/skills/post-code-review-to-pr in testdouble/han) into .claude/skills/post-code-review-to-pr in your project. Claude Code loads it when a task matches its description.
Run `npx skills add testdouble/han --skill post-code-review-to-pr -a codex`. Or copy the skill folder (han-github/skills/post-code-review-to-pr in testdouble/han) into .agents/skills/post-code-review-to-pr in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add testdouble/han --skill post-code-review-to-pr -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/post-code-review-to-pr, .gemini/skills/post-code-review-to-pr, .github/skills/post-code-review-to-pr and .opencode/skills/post-code-review-to-pr in your project.
Going by SKILL.md and its folder, Post Code Review To PR needs a shell for the scripts in its folder and the command-line tools its instructions call (git, gh and bash). Our summary lists: A Bash shell. Its frontmatter pre-approves these tools: Bash(jq *), Bash(gh *), Bash(git *), Bash(make *), Bash(npm *), Read, Write, Grep, Glob, Skill, Agent, Bash(bash "${CLAUDE_PLUGIN_ROOT}/scripts/han-config-dir.sh").
SKILL.md contains no URLs. Its commands use git and gh, which can reach the network depending on how they are called. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.
Post Code Review To PR is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.9k tokens (SKILL.md is roughly 7.5k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Post Code Review To PR: PR Babysitter (openinterpreter/openinterpreter, 69k stars), GitHub Review Iteration (prisma/orm, 48k stars), PR Review State Fetch (prisma/orm, 48k stars) and PR Finalize Review (microsoft/garnet, 12k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
testdouble (a GitHub organization) maintains it in testdouble/han, which has 279 GitHub stars. The repository holds 54 skills in this directory. The repository was last updated on October 1, 2026.
Source: testdouble/han on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.