Agent skill

Babysit PR

by UniClipboard in UniClipboard/UniClipboard

Automatically monitor CI checks and review comments (coderabbitai, github-actions) on the current PR.

AGPL-3.0Auto-check passedDevOps & Cloud

Install Babysit PR

skills CLI
$ npx skills add UniClipboard/UniClipboard --skill babysit-pr -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install UniClipboard/UniClipboard babysit-pr --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/UniClipboard/UniClipboard.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/babysit-pr .claude/skills/babysit-pr && rm -rf skills-src

Use ~/.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/

Facts

Skill name
babysit-pr
GitHub stars
1.9k
Token cost
~2.1k tokens
SKILL.md length
890 words
Files
1
Skills in repo
24
Repo updated
First seen
Licence
AGPL-3.0

At a glance

Automatically monitor CI checks and review comments (coderabbitai, github-actions) on the current PR.

  • Works in 6 steps: Initialize or resume → Check CI status → Gather failures and review comments → …
  • Tasks that involve CI/CD
  • SKILL.md covers Purpose, State file, Workflow and Safety guardrails, plus 2 more sections
  • Calls gh, git and cargo

What it does

Babysit PR is an agent skill from UniClipboard/UniClipboard. Automatically monitor CI checks and review comments (coderabbitai, github-actions) on the current PR. Analyze findings, fix issues, push, and loop until all checks pass or max rounds reached.

Its SKILL.md is about 2.1k 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 DevOps & Cloud, covering CI/CD. It works with GitHub Actions. The repository describes itself as: Real-time clipboard sync across all your devices — local-first, peer-to-peer, and end-to-end encrypted. No account. No cloud dependency. No central server. The licence is AGPL-3.0.

When your agent uses it

  • Tasks that involve CI/CD

Example prompts

  • “/babysit-pr”

Workflow steps

6 steps, taken from the step headings in SKILL.md.

  1. Initialize or resume
  2. Check CI status
  3. Gather failures and review comments
  4. Analyze and fix
  5. Commit and push
  6. Wait for the next check or finish

What it can do on your machine

Read from SKILL.md and the folder at commit 19fc8bc. It shows what the files ask for, not the result of running them.

  • Tool permissions

    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.

  • Runs code

    Shell commands in SKILL.md call:

    • gh
    • git
    • cargo
    • pnpm

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use gh, git and pnpm, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Babysit PR loads about 2.1k tokens when it runs. Until then it costs about 51 tokens; SKILL.md has 890 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~51
When it runs · the whole SKILL.md, loaded when a task matches
~2.1k

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.

Safety

Auto-check passed

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.

SKILL.md

The full file from UniClipboard/UniClipboard at commit 19fc8bc, republished under its AGPL-3.0 licence (© UniClipboard). 890 words, ~2,119 tokens.

Download SKILL.mdSave it as .claude/skills/babysit-pr/SKILL.md (or your agent's skills folder).
name
babysit-pr
description
Automatically monitor CI checks and review comments (coderabbitai, github-actions) on the current PR. Analyze findings, fix issues, push, and loop until all checks pass or max rounds reached.

babysit-pr

Purpose

After a push or PR creation, CI checks and automated reviewers (CodeRabbit, GitHub Actions) produce status checks and review comments. This skill monitors those results, analyzes review comments and check failures, fixes legitimate issues, pushes, and loops - up to 3 rounds.

State file

/tmp/codex-babysit-pr-state.json tracks progress across monitoring cycles:

json
{
  "pr_number": 123,
  "round": 0,
  "max_rounds": 3,
  "processed_comment_ids": [],
  "started_at": "2026-06-08T10:00:00Z"
}
  • round increments each time you push a fix. Checking status without pushing does NOT count as a round.
  • Lock file: /tmp/codex-babysit-pr.lock — prevents the PostToolUse hook from re-triggering while this skill is active.

Workflow

Step 0 — Initialize or resume
bash
touch /tmp/codex-babysit-pr.lock

Check if state file exists:

  • No state file: Create one. Get PR number via gh pr view --json number --jq .number. Set round=0, started_at=now, processed_comment_ids=[].
  • State file exists: Read it. If round >= max_rounds → go to Cleanup (max rounds). If started_at is more than 90 minutes ago → go to Cleanup (timeout).

If no PR exists for the current branch, output "No PR found for current branch" and clean up.

Step 1 — Check CI status
bash
gh pr checks --json name,state,conclusion,link 2>/dev/null

Also fetch the overall PR status:

bash
gh pr view --json statusCheckRollup --jq '.statusCheckRollup[] | {context: .context, state: .state, description: .description, targetUrl: .targetUrl}'

Classify:

  • Some checks still PENDING -> keep the current Codex turn active, wait with the available command/session wait mechanism, and check again without incrementing the round
  • Some checks FAILED → proceed to Step 2
  • All checks passed → proceed to Step 2 anyway to collect review comments. Only go to Cleanup (success) if Step 2b also finds zero unprocessed actionable comments. Never short-circuit before checking comments — bots like CodeRabbit post asynchronously and may finish after CI passes.
Step 2 — Gather failures and review comments
2a — Failed checks

From the checks output in Step 1, collect all checks with conclusion == "failure" or state == "FAILURE". For each failed check:

  • Note the check name, failure link/URL
  • If the failure link points to a GitHub Actions run, fetch the log:
    bash
    gh run view <run_id> --log-failed 2>/dev/null | tail -100
2b — Review comments from bots

GitHub bots post comments in three different locations. You must check all three to avoid missing feedback. Bot usernames always end with [bot] — use contains matching, never exact equality.

bash
BOT_FILTER='select(.user.login | test("coderabbitai|github-actions|codecov"))'

# 1. Inline review comments (attached to specific diff lines)
gh api repos/UniClipboard/UniClipboard/pulls/<PR_NUMBER>/comments \
  --jq "[.[] | ${BOT_FILTER} | {id, user: .user.login, body, path, line, diff_hunk, created_at}]"

# 2. Review bodies (the top-level text of a review submission)
gh api repos/UniClipboard/UniClipboard/pulls/<PR_NUMBER>/reviews \
  --jq "[.[] | ${BOT_FILTER} | {id, user: .user.login, body, state}]"

# 3. Issue comments (general PR comments — where CodeRabbit posts its
#    walkthrough summary; also used by codecov, react-doctor, vercel, etc.)
gh api repos/UniClipboard/UniClipboard/issues/<PR_NUMBER>/comments \
  --jq "[.[] | ${BOT_FILTER} | {id, user: .user.login, body: (.body | .[0:2000]), created_at}]"

Filter out IDs already in processed_comment_ids.

Why all three? CodeRabbit posts its walkthrough + actionable findings as an issue comment, not a review comment. If you only check pulls/comments and pulls/reviews, you will miss it entirely. The [bot] suffix on usernames is added by GitHub for app-installed bots — filtering on the bare name (e.g. "coderabbitai") silently drops every match.

Step 3 — Analyze and fix

For each issue (failed check or new review comment):

  1. Understand the problem: Read the relevant file(s) and context.
  2. Evaluate legitimacy:
    • CI check failures: always legitimate — must fix.
    • CodeRabbit comments: evaluate whether the suggestion improves correctness, security, or performance. Skip pure style nits, subjective preferences, and false positives. When skipping, note the reason briefly.
    • GitHub Actions bot comments: usually legitimate (lint errors, type errors, test failures) — fix them.
  3. Fix: Edit the relevant files. Be surgical — only change what's needed.
  4. Record: Add the comment/check ID to processed_comment_ids.

If the fix touches Rust code, run a quick validation:

bash
cargo check -p <affected_crate> 2>&1 | tail -20

If the fix touches TypeScript/frontend code:

bash
pnpm type-check 2>&1 | tail -20
Step 4 — Commit and push

Only if fixes were made:

bash
git add <specific fixed files>
git commit -m "$(cat <<'EOF'
fix: address CI/review feedback (babysit-pr round N)
EOF
)"
git push

Replace N with the actual round number. Increment round in the state file.

If no fixes were needed (all comments were false positives / already processed, but checks are still failing for unknown reasons):

  • Do NOT push an empty commit.
  • Log the situation and perform one more bounded check in the same turn. If it also shows nothing fixable, stop and report to the user.
Show full SKILL.md (323 more words)Show less
Step 5 - Wait for the next check or finish

After pushing, keep the turn active and wait for CI with the available recurring monitoring or command-session wait mechanism. Prefer gh pr checks --watch --interval 30 when checks have registered. Poll long-running command sessions in bounded intervals so the user continues to receive status updates. When CI reaches a terminal state, return to Step 2 and scan all three review-comment endpoints again before declaring success.

Cleanup

On success (all checks pass):

bash
rm -f /tmp/codex-babysit-pr.lock /tmp/codex-babysit-pr-state.json

Output: "All CI checks passed. babysit-pr complete after N round(s)."

On max rounds reached:

bash
rm -f /tmp/codex-babysit-pr.lock /tmp/codex-babysit-pr-state.json

Output: "Reached max rounds (3). Some checks may still be failing — manual review needed. PR: <url>"

On timeout (90 min):

bash
rm -f /tmp/codex-babysit-pr.lock /tmp/codex-babysit-pr-state.json

Output: "babysit-pr timed out after 90 minutes. Check PR status manually."

On no PR found:

bash
rm -f /tmp/codex-babysit-pr.lock /tmp/codex-babysit-pr-state.json

Safety guardrails

  • Max 3 rounds of fix-push cycles (round only increments on push)
  • 90-minute hard timeout from first invocation
  • Lock file prevents recursive hook triggering
  • Comment dedup via processed_comment_ids
  • Never --force push
  • Never amend existing commits
  • Skip CodeRabbit style nits — only fix correctness/security/CI issues
  • If cargo check or type-check fails after your fix, revert the fix and note it — don't push broken code
  • Each commit only includes files directly related to the fix

Skipped comment handling

When you decide to skip a CodeRabbit comment (false positive, style nit, etc.), briefly note:

text
Skipped: [comment summary] — reason: [false positive / style nit / not applicable]

This helps the user understand what was deliberately not addressed.

Anti-patterns

  • Blindly applying every CodeRabbit suggestion without evaluating it
  • Pushing empty commits or "no-op" changes
  • Running indefinitely when CI is stuck on an infrastructure issue (not a code problem)
  • Modifying files unrelated to the review feedback
  • Ignoring CI failures and only processing review comments (or vice versa)
  • Only checking pulls/comments + pulls/reviews and skipping issues/comments — CodeRabbit's main comment lives there
  • Filtering bot usernames with exact match (== "coderabbitai") instead of substring/regex (test("coderabbitai")) — GitHub appends [bot] to app-installed bot names
  • Declaring success when CI passes without first scanning all three comment endpoints for unprocessed actionable feedback

© UniClipboard, AGPL-3.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in .agents/skills/babysit-pr of UniClipboard/UniClipboard.

Open the folder on GitHubat commit 19fc8bc

Compare with similar skills

Babysit 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.

Babysit PR compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Babysit PR this skillUniClipboard/UniClipboard1.9k—~2.1kAutomated safety check: PassAGPL-3.0
Analyze GitHub Action Logswithastro/astro63k1 repos~1.3kAutomated safety check: PassCustom licence
GitHub Actions Templatesbartstc/vite-ts-react-template12214 repos~1.9kAutomated safety check: PassMIT
Nushellccusage/ccusage19k—~938Automated safety check: PassCustom licence
Repo Hygiene Scan and FixQwenLM/qwen-code28k—~1.7kAutomated safety check: PassApache-2.0
Senior DevOps Toolkitmaslennikov-ig/claude-code-orchestrator-kit2606 repos~1.1kAutomated safety check: NotesCustom licence

Similar skills

  • Official

    Analyze recent GitHub Actions workflow runs to identify patterns, mistakes, and improvements.

    63k GitHub starsUsed in 1 repo~1.3k tokens
    DevOps & CloudAuto-check passed
  • GitHub Actions Templates

    bartstc/vite-ts-react-template

    Create production-ready GitHub Actions workflows for automated testing, building, and deploying applications.

    122 GitHub starsUsed in 14 repos~1.9k tokens
    DevOps & CloudAuto-check passed
  • Nushell

    ccusage/ccusage

    Guides ccusage Nushell scripts. An agent skill from ccusage/ccusage.

    19k GitHub stars~938 tokensUpdated today
    DevOps & CloudAuto-check passed
  • Scheduled CI skill that scans a repository for small, certain docs, test and code hygiene issues and fixes them on one branch with a commit per finding.

    28k GitHub stars~1.7k tokensUpdated today
    DevOps & CloudAuto-check passed
  • Senior DevOps Toolkit

    maslennikov-ig/claude-code-orchestrator-kit

    Comprehensive DevOps skill for CI/CD, infrastructure automation, containerization, and cloud platforms (AWS, GCP, Azure). Includes pipeline setup…

    260 GitHub starsUsed in 6 repos~1.1k tokens
    DevOps & CloudAuto-check: notes
  • CI Failure Triage and Repair

    Chachamaru127/claude-code-harness

    Diagnoses failing CI pipelines and tests, deciding first whether the test or the implementation is at fault, and hands hard cases to a dedicated fixer subagent.

    3.2k GitHub starsUsed in 1 repo~1.1k tokens
    DevOps & CloudAuto-check: notes

More from UniClipboard/UniClipboard

All 24 skills in this repo
  • Beui

    UniClipboard/UniClipboard

    Pick and install beUI (@beui) animated React components from the shadcn registry.

    1.9k GitHub stars~1.8k tokensUpdated today
    Auto-check passed
  • Create PR

    UniClipboard/UniClipboard

    Push the current branch and open a GitHub pull request against main.

    1.9k GitHub stars~4.6k tokensUpdated today
    Auto-check passed
  • Design Audit

    UniClipboard/UniClipboard

    定期审计代码库的工程设计问题(高心智复杂度、单一真相源被破坏、catch-all 胖接口、死代码、散落魔法字面量、泄漏抽象、资源生命周期靠环形缓冲)与可优化点,范围限定为自上次审计以来的 git churn,每条发现都落到 file:line 并对照本项目自己的 VISION.md / 各级 AGENTS.md / memory…

    1.9k GitHub stars~554 tokensUpdated today
    Auto-check passed
  • Dual Side Debug

    UniClipboard/UniClipboard

    Inspect uniclipboard logs from BOTH the macOS host and the mounted Windows peer when debugging cross-platform sync, pairing, transfer, or daemon issues.

    1.9k GitHub stars~2.6k tokensUpdated today
    Auto-check passed
  • E2E Test Thinker

    UniClipboard/UniClipboard

    Analyze the current branch's diff against main and determine which changes are testable via CLI-based end-to-end tests.

    1.9k GitHub stars~1.7k tokensUpdated today
    Auto-check passed
  • iOS Log Diagnose

    UniClipboard/UniClipboard

    Drive the UniClipboard iOS app in a simulator and read its OSLog yourself to diagnose a mobile-sync bug, instead of asking the user to paste logs.

    1.9k GitHub stars~1.1k tokensUpdated today
    Auto-check passed

Works with

Categories

Questions about Babysit PR

What does Babysit PR do?

Automatically monitor CI checks and review comments (coderabbitai, github-actions) on the current PR. Babysit PR is an agent skill from UniClipboard/UniClipboard. Automatically monitor CI checks and review comments (coderabbitai, github-actions) on the current PR.

When should I use Babysit PR?

Babysit PR fits situations like: tasks that involve CI/CD.

How do I install Babysit PR in Claude Code?

Run `npx skills add UniClipboard/UniClipboard --skill babysit-pr -a claude-code`. Or copy the skill folder (.agents/skills/babysit-pr in UniClipboard/UniClipboard) into .claude/skills/babysit-pr in your project. Claude Code loads it when a task matches its description.

How do I install Babysit PR in Codex?

Run `npx skills add UniClipboard/UniClipboard --skill babysit-pr -a codex`. Or copy the skill folder (.agents/skills/babysit-pr in UniClipboard/UniClipboard) into .agents/skills/babysit-pr in your project. Codex loads it when a task matches its description.

Can I use Babysit PR in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add UniClipboard/UniClipboard --skill babysit-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/babysit-pr, .gemini/skills/babysit-pr, .github/skills/babysit-pr and .opencode/skills/babysit-pr in your project.

What does Babysit PR need to run?

Going by SKILL.md and its folder, Babysit PR needs the command-line tools its instructions call (gh, git, cargo and pnpm).

Does Babysit PR access the network?

SKILL.md contains no URLs. Its commands use gh and git, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Babysit PR safe to install?

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.

What licence does Babysit PR use?

Babysit PR is published under the AGPL-3.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Babysit PR use?

About 2.1k tokens (SKILL.md is roughly 8.5k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Babysit PR?

Skills that share tags, products or a category with Babysit PR: Analyze GitHub Action Logs (withastro/astro, 63k stars), GitHub Actions Templates (bartstc/vite-ts-react-template, 122 stars), Nushell (ccusage/ccusage, 19k stars) and Repo Hygiene Scan and Fix (QwenLM/qwen-code, 28k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Babysit PR?

UniClipboard (a GitHub organization) maintains it in UniClipboard/UniClipboard, which has 1,860 GitHub stars. The repository holds 24 skills in this directory. The repository was last updated on October 9, 2026.

Source: UniClipboard/UniClipboard on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.