Finishing a Development Branch
obra/superpowers
Walks the last step of a branch: confirm tests pass, detect the git environment, ask how to integrate, carry out your choice and clean up the worktree.
Follow an open pull request with xtask watch-pr. An agent skill from s3s-project/s3s.
$ npx skills add s3s-project/s3s --skill watch-pr -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install s3s-project/s3s watch-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/s3s-project/s3s.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/watch-pr .claude/skills/watch-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 "watch-pr" agent skill from https://github.com/s3s-project/s3s/tree/main/.agents/skills/watch-pr into .claude/skills/watch-pr/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "watch-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/s3s-project/s3s/tree/main/.agents/skills/watch-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 s3s-project/s3s --skill watch-pr -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install s3s-project/s3s watch-pr --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/s3s-project/s3s.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.agents/skills/watch-pr .agents/skills/watch-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 "watch-pr" agent skill from https://github.com/s3s-project/s3s/tree/main/.agents/skills/watch-pr into .agents/skills/watch-pr/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "watch-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 s3s-project/s3s --skill watch-pr -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install s3s-project/s3s watch-pr --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/s3s-project/s3s.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.agents/skills/watch-pr .cursor/skills/watch-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 "watch-pr" agent skill from https://github.com/s3s-project/s3s/tree/main/.agents/skills/watch-pr into .cursor/skills/watch-pr/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "watch-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/s3s-project/s3s.git --path .agents/skills/watch-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 s3s-project/s3s --skill watch-pr -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install s3s-project/s3s watch-pr --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/s3s-project/s3s.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.agents/skills/watch-pr .gemini/skills/watch-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 "watch-pr" agent skill from https://github.com/s3s-project/s3s/tree/main/.agents/skills/watch-pr into .gemini/skills/watch-pr/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "watch-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 s3s-project/s3s watch-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 s3s-project/s3s --skill watch-pr -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/s3s-project/s3s.git skills-src && mkdir -p .github/skills && cp -r skills-src/.agents/skills/watch-pr .github/skills/watch-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 "watch-pr" agent skill from https://github.com/s3s-project/s3s/tree/main/.agents/skills/watch-pr into .github/skills/watch-pr/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "watch-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 s3s-project/s3s --skill watch-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 s3s-project/s3s watch-pr --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/s3s-project/s3s.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.agents/skills/watch-pr .opencode/skills/watch-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 "watch-pr" agent skill from https://github.com/s3s-project/s3s/tree/main/.agents/skills/watch-pr into .opencode/skills/watch-pr/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "watch-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.
watch-prFollow an open pull request with xtask watch-pr. An agent skill from s3s-project/s3s.
Watch PR is an agent skill from s3s-project/s3s. Follow an open pull request with xtask watch-pr. Use when a pull request has to be watched until it merges or closes, when a watcher exits and has to be restarted from its log, or when deciding between watching the pull request and waiting for its checks.
Its SKILL.md is about 900 tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It sits in Development, covering Pull requests. The licence is Apache-2.0.
Read from SKILL.md and the folder at commit cd69f7e. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
ghcargoFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use 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.
Watch PR loads about 900 tokens when it runs. Until then it costs about 66 tokens; SKILL.md has 555 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); files beside SKILL.md are not scanned.
The full file from s3s-project/s3s at commit cd69f7e, republished under its Apache-2.0 licence (© s3s-project). 555 words, ~900 tokens.
.claude/skills/watch-pr/SKILL.md (or your agent's skills folder).cargo run -p xtask -- watch-pr <PR#> follows the state that decides whether a pull request can land. Hang it in the background when a pull request opens, read its log when it exits, and hang it again: a zero exit is the signal, and a non-zero exit means the watcher itself failed.
Each tick prints one state line; the line is appended to target/pr-watch/pr-<n>.log when it differs from the last logged one, once when the log is empty, and at a heartbeat every twenty ticks (--log moves the file). The line covers state, draft, mergeStateStatus, auto-merge, base and head, the review decision, review and comment counts, labels, review requests, the check summary with the names of failing checks, the title, and the merge-queue entry.
It exits when something decision-relevant changes, when the pull request merges or closes, or when its twelve-hour budget runs out. Restarting it after each exit keeps the coverage continuous: the baseline is restored from the last line of the log, so a restart does not re-report a change that was already read, and it does not miss one that happened while nothing was watching.
A zero exit means one of those three; a non-zero exit means the snapshot failed three times in a row, usually because gh is unavailable. The failure lines are printed to stdout rather than appended to the log, so read them before restarting.
It deliberately ignores the churn that would wake somebody for nothing: check counts moving while the set is still running, a flap between BLOCKED, UNSTABLE and UNKNOWN (GitHub reports UNKNOWN while it recomputes mergeability, and the answer is usually the state the pull request already had), and comments written by a bot. A new failure, a settled check set, a review, a label, a review request, a merge-queue entry and the merge or close transition all count.
Keep one watcher per pull request, and hang the next one after every exit; the twelve-hour budget means a pull request that stays open needs a new watcher every twelve hours, so a quiet one takes two hangs a day.
Read the log at natural nodes rather than polling it: when a watcher exits, when a review arrives, when the checks settle. Report what changed, then hang the next watcher with the last line as its baseline. When the pull request merges or closes, keep the terminal line in the same log, stop watching, and continue with the landing steps in the pull-request skill — the merge does not delete the head branch and main may have moved.
watch-pr covers the pull request as a whole. When the checks, or a single run, are the whole question, gh watches them directly:
gh pr checks <PR> --watch --interval 60 waits for the checks of a pull request (exit code 0 when they pass, non-zero when one fails, 8 while the set is pending).gh run watch <run-id> --exit-status follows one workflow run.gh pr checks --watch refreshes every ten seconds by default, so pass 60 to match the pace used here. Reach for watch-pr when the draft state, the reviews, the labels, the review requests or the merge-queue entry matter: it keeps a baseline across restarts, which the built-in commands do not.
© s3s-project, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in .agents/skills/watch-pr of s3s-project/s3s.
Open the folder on GitHubat commit cd69f7e
Watch 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 |
|---|---|---|---|---|---|---|
| Watch PR this skills3s-project/s3s | 311 | — | ~900 | Automated safety check: Pass | Apache-2.0 | |
| Finishing a Development Branchobra/superpowers | 297k | 5 repos | ~1.9k | Automated safety check: Pass | MIT | |
| PR Babysitteropeninterpreter/openinterpreter | 69k | 3 repos | ~4.2k | Automated safety check: Pass | Apache-2.0 | |
| Check PRonyx-dot-app/onyx | 32k | 2 repos | ~2.3k | Automated safety check: Pass | MIT | |
| PR Design DocOpenHands/OpenHands | 90k | — | ~2.4k | Automated safety check: Pass | MIT | |
| WooCommerce Code Reviewwoocommerce/woocommerce | 11k | 3 repos | ~1.1k | Automated safety check: Pass | Custom licence |
obra/superpowers
Walks the last step of a branch: confirm tests pass, detect the git environment, ask how to integrate, carry out your choice and clean up the worktree.
openinterpreter/openinterpreter
Watches an open GitHub pull request until it merges, handling review comments, diagnosing CI failures and retrying flaky checks along the way.
onyx-dot-app/onyx
Checks a GitHub, GitLab, or Perforce (p4) pull request (or merge request, or shelved changelist) for unresolved review comments, failing status checks, and incomplete PR descriptions.
OpenHands/OpenHands
For a non-trivial pull request, write a self-contained HTML design doc under the temporary .pr/ directory and link a visibility-appropriate preview in the PR description, so maintainers grasp the…
woocommerce/woocommerce
Reviews WooCommerce code changes against the project's standards, flagging backend PHP architecture, naming, documentation, data integrity and testing violations.
payloadcms/payload
A skill your agent uses when a Payload pull request needs a concise visual walkthrough for reviewers.
s3s-project/s3s
Measure and grow the line coverage of the s3s crate. An agent skill from s3s-project/s3s.
s3s-project/s3s
Work with stacked pull requests in this repository using gh stack.
s3s-project/s3s
Review a pull request or a proposed change to this repository.
s3s-project/s3s
Change generated code in this repository. An agent skill from s3s-project/s3s.
s3s-project/s3s
Add, run or schedule a fuzz target in this repository. An agent skill from s3s-project/s3s.
s3s-project/s3s
Run or triage the mutation sweep in this repository. An agent skill from s3s-project/s3s.
Categories
Follow an open pull request with xtask watch-pr. An agent skill from s3s-project/s3s. Watch PR is an agent skill from s3s-project/s3s. Follow an open pull request with xtask watch-pr.
Watch PR fits situations like: A pull request has to be watched until it merges; A watcher exits and has to be restarted from its log; deciding between watching the pull request and waiting for its checks.
Run `npx skills add s3s-project/s3s --skill watch-pr -a claude-code`. Or copy the skill folder (.agents/skills/watch-pr in s3s-project/s3s) into .claude/skills/watch-pr in your project. Claude Code loads it when a task matches its description.
Run `npx skills add s3s-project/s3s --skill watch-pr -a codex`. Or copy the skill folder (.agents/skills/watch-pr in s3s-project/s3s) into .agents/skills/watch-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 s3s-project/s3s --skill watch-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/watch-pr, .gemini/skills/watch-pr, .github/skills/watch-pr and .opencode/skills/watch-pr in your project.
Going by SKILL.md and its folder, Watch PR needs the command-line tools its instructions call (gh and cargo).
SKILL.md contains no URLs. Its commands use 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. Review the folder before installing.
Watch PR is published under the Apache-2.0 licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.
About 900 tokens (SKILL.md is roughly 3.6k 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 Watch PR: Finishing a Development Branch (obra/superpowers, 297k stars), PR Babysitter (openinterpreter/openinterpreter, 69k stars), Check PR (onyx-dot-app/onyx, 32k stars) and PR Design Doc (OpenHands/OpenHands, 90k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
s3s-project (a GitHub organization) maintains it in s3s-project/s3s, which has 311 GitHub stars. The repository holds 10 skills in this directory. The repository was last updated on October 8, 2026.
Source: s3s-project/s3s on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.