A Claude Code skill that waits for a
PR's GitHub CI checks to finish and returns a slim pass/fail summary — one
background call instead of polling gh pr checks by hand.
watch.sh runs a single long-lived poll loop that blocks until every check on one or
more PRs has settled, then prints a one-line verdict per PR plus a compact per-check
breakdown. Full JSON and failing-job logs are written to a temp file so logs never
pollute stdout. As a Claude Code skill it's meant to be launched in the background,
so you can keep working while CI runs.
# current branch's PR
bash watch.sh
# explicit PR number / URL / branch (numbers use the cwd repo unless --repo given)
bash watch.sh 1234
bash watch.sh https://github.com/owner/name/pull/1234
# watch several at once — one call, one combined summary
bash watch.sh 1234 1240 --repo owner/nameRequires an authenticated gh and jq.
See SKILL.md for the full skill definition: arguments, options/env
vars, output format, exit codes, and behaviour notes.
Install it with the skills CLI, which pulls
this repo's SKILL.md + watch.sh straight into your agent's skills directory:
# into the current project (interactive — choose agent + scope when prompted)
npx skills add codesoda/ci-watch
# …or globally, targeting Claude Code, non-interactively
npx skills add codesoda/ci-watch --agent claude-code --global --yesIf npx runs a stale cached build, pin the latest: npx skills@latest add codesoda/ci-watch.
Prefer to wire it up by hand (or hack on a local checkout)? Clone and symlink it into your skills directory instead:
git clone git@github.com:codesoda/ci-watch.git ~/projects/ci-watch
ln -s ~/projects/ci-watch ~/.skills/.agents/skills/ci-watch