360 Secure SkillHub
360 安全技能中心

babysit

通过 gh CLI 获取已打开 PR 的状态,按合并冲突、CI 失败、评审意见和机器人评论的优先级处理,循环复查直到通过或需用户决策,最后汇报已修复、已回应和待决事项。依赖外部配套技能与参考文档。

michael-denyer
热度 0.00
最近更新 2026-10-19 04:13:07
分类:开发依赖:代码执行 / 第三方 API / 读写文件应用场景:代码审查 / 调试排错 / DevOps / 工作流

安装技能

复制下面的话术发给你的 Agent,它会通过 secure-skills 检索并安装该技能。

执行命令安装此 skill: npx secure-skills-cli add michael-denyer/pstack-claude/babysit
Metadata
name
babysit
description
Watch an open PR — fix failing CI, handle the straightforward review comments, and drive it to a mergeable state. Claude Code analog of Cursor's built-in /babysit. Use after opening a PR when the user wants the agent to shepherd it without re-prompting.

Babysit a PR

On Codex, read the platform mapping, including its per-skill notes, before following this skill.

On GitHub Copilot, read the platform mapping, including its per-skill notes, before following this skill.

Claude Code analog of Cursor's built-in /babysit. The implementation is a loop over gh CLI plus the Claude Code loop skill for pacing.

Inside poteto-mode, the Babysit playbook (../poteto-mode/playbooks/babysit.md) supersedes this skill: it owns mode declaration, the merge frontier, stack safety, and the watch-pr watcher. This skill stays the standalone /babysit entry point for a single PR outside a poteto-mode run.

When to use

  • There's an open PR and the user explicitly wants it kept green, and you are not already inside a poteto-mode run (the playbook owns that case).
  • The user invokes /babysit directly.
  • A subagent that opens a PR does NOT babysit — return to the parent and let the parent decide.

Steps

  1. Fetch PR state.

    gh pr view <number> --json number,title,state,mergeable,reviewDecision,statusCheckRollup,mergeStateStatus,comments,reviews
    
  2. Triage in priority order.

    • Merge conflicts (mergeStateStatus == DIRTY): run the fix-merge-conflicts skill. Force-push only if the branch is yours and not shared.
    • Failing checks (statusCheckRollup entries with conclusion: FAILURE): run the fix-ci skill. Root-cause the failure; fix the underlying code or test; commit; push.
    • Review comments: run the get-pr-comments skill for the summary, then act only on feedback you actually agree with. When a comment has a single mechanical answer — a rename, a guard clause, a formatting nit — make the edit and quote the comment in the commit message. When it hinges on a judgement call, or you can't tell what's being asked, don't guess: leave it and reply with what you would have done.
    • Review-bot comments (Bugbot and similar automation): classify fix/dismiss/ask before acting, per bugbot-triage.md. Ask by default on security, data, and high-severity findings.
  3. Loop. Use the Claude Code loop skill to pace re-checks. Pick the interval from what you're watching:

    • Active CI run: poll gh pr checks --watch (it blocks until checks finish, so no separate loop interval needed).
    • Awaiting reviewer: 20–30 min heartbeat.
    • Idle but want to catch new comments: hourly.
  4. When to stop.

    • Build is green, every comment resolved, branch merges cleanly → call it ready.
    • You've run three rounds of fix → push → recheck and it still isn't fully green → stop, summarise what's still broken, and hand control back.
    • The next fix would force a design choice → pause and put it to the user with AskUserQuestion.
  5. Report. Summarize fixes applied, comments addressed, comments deferred (with reason), current PR status. Cite each commit by SHA.

Hard rules

  • Don't rewrite history on a branch others may have pulled. If a rebase or force-push looks necessary, clear it with the user first.
  • Don't tweak a test's expected values just to get a pass. Only change an assertion when the behaviour genuinely changed and the assertion was pinned to the old behaviour.
  • Never skip hooks (--no-verify).
  • Never bypass a failing check by marking it as not required.
  • gh pr ready only when all checks are green and no unresolved review comments remain.

Cross-refs

  • Opening a PR does not start a babysit; inside poteto-mode the Babysit playbook owns the request and starts only when asked.
  • Use interrogate before opening if the diff is contested; once open, babysit takes over.
  • Use unslop on any prose you write here (PR comments, commit messages, status reports).

Provenance

This is a Claude Code analog of Cursor's /babysit, not a port — Cursor's implementation is closed source. The skill is independently authored, with its own prose and structure; the workflow is informed by Cursor's public /babysit behavior. The only overlap with other PR tools is the gh CLI commands it runs, which are functional invocations rather than copied text.