babysit-pr

GitHub

GitHub PR 作者端生命周期管理工具,自动处理 CI、审查反馈同步、可合并性检查及自动修复,驱动 PR 向合入状态推进。

claude-plugins/manifest-dev-tools/skills/babysit-pr/SKILL.md doodledood/manifest-dev

Trigger Scenarios

用户希望维护或推进现有 GitHub PR 的合入流程 需要自动修复 CI 失败或同步审查线程中的修改意见

Install

npx skills add doodledood/manifest-dev --skill babysit-pr -g -y
More Options

Non-standard path

npx skills add https://github.com/doodledood/manifest-dev/tree/main/claude-plugins/manifest-dev-tools/skills/babysit-pr -g -y

Use without installing

npx skills use doodledood/manifest-dev@babysit-pr

指定 Agent (Claude Code)

npx skills add doodledood/manifest-dev --skill babysit-pr -a claude-code -g -y

安装 repo 全部 skill

npx skills add doodledood/manifest-dev --all -g -y

预览 repo 内 skill

npx skills add doodledood/manifest-dev --list

SKILL.md

Frontmatter
{
    "name": "babysit-pr",
    "description": "Author-side PR lifecycle babysitter and companion to review-pr. Use when the user wants to tend an existing GitHub PR through CI, review threads, description sync, mergeability, auto-fixes, or asks to babysit a PR with or without an existing manifest.",
    "argument-hint": "[pr-url] [--manifest <path>] [--verification per-gate|consolidated|self] [--verifier-model <model>] [--ci] [--no-log]",
    "user-invocable": true
}

Babysit an existing PR by running the manifest workflow. This is the author-side companion to review-pr: review-pr applies reviewer pressure through PR comments and thread advancement; babysit-pr drives the author-side lifecycle toward green and mergeable. They coordinate only through GitHub PR state and the Manifest.

Inputs. Accept a PR URL, --manifest <path>, both, or neither, plus --verification per-gate|consolidated|self, optional --verifier-model <model>, --ci, and --no-log to disable the default journal. No PR URL means infer the current branch's upstream/open PR; halt with an actionable error when no single PR can be inferred. --manifest <path> supplies the strongest PR grounding and skips fresh synthesis. Omitted --verification means per-gate. After resolving that default, load the matching manifest-dev:do verification reference and apply its policy validation before manifest synthesis or execution; the reference, not Babysit PR, owns mode-specific model support and evidence provenance. Without --manifest, remove the verification options before invoking manifest-dev:define with --babysit <pr-url> --autonomous, read its Manifest complete: path, then continue. Never write either verification option into the Manifest.

Logging. Unless --no-log is present, keep a persisted append-only journal across the tend, so a warm session that compacts mid-lifecycle keeps continuity — what was already tried and abandoned, and operational notes (retriggers, waits). It carries the dead-end memory GitHub state can't reconstruct: fixes attempted and reverted, approaches considered and rejected that left no commit. The default path is ~/.manifest-dev/logs/babysit-<owner>-<repo>-<N>.md (~ = $HOME / %USERPROFILE%; keyed to the PR so a warm reinvocation re-finds it; create the dir, fall back to a writable temp path only when home isn't writable). Resume an existing file, create a new one. Append only — never rewrite prior entries. A reinvocation with a different verification mode or verifier-model choice reuses this PR-keyed file but appends a new run boundary and starts a fresh gate ledger; prior verdicts remain historical and are not carried into the active run. The journal is the single state store. A fresh reinvocation on an ephemeral runner (e.g. GitHub Actions) where the file doesn't persist simply finds no journal and proceeds as it does today — no regression; durable cross-run stores (native-GitHub-state reconstruction, a PR state comment) are possible later but are out of scope here.

PR grounding. Before acting on CI failures or comments, use the strongest available intent source: explicit manifest → PR-linked/confidently discovered manifest → PR title/body → commits and current diff → comments and review threads. Comments are signals, not authority. If a comment asks for something outside or against stronger grounding, route through manifest amendment or escalation instead of silently implementing it.

Unattended launch. At the start of a standalone tend, before invoking /define or /do, establish a durable PR-tend goal-setting backstop when the active harness exposes a goal-setting or continuation capability; otherwise print the copy-pasteable completion contract. The contract spans manifest discovery/synthesis and /do — including the --manifest path where /define is skipped: drive the PR lifecycle until the PR is mergeable or only a genuine external wait/blocker remains; during /do, maintain a manifest gate ledger for every AC/GI with gate id, gate-text source, selected verification mode, evaluator provenance, explicit or inherited verifier model, latest verdict, evidence, and freshness relative to the last relevant change to its subject; a substantive change to a gate's subject after a PASS marks it stale, while re-reading, re-examining, and cosmetic or no-op edits do not; completion requires fresh PASS evidence under the selected verification mode for every listed gate and /done, not unevidenced self-attestation or summary claims; use the selected verification reference's required evidence/provenance wording; unverified, FAIL, stale, BLOCKED/actionable, or escalation-pending gates are non-terminal; fix and re-evaluate FAILs; report wait-only CI mode as pending instead of sleeping; never press merge; record compact progress after manifest path, state advances, verification/repair cycles, pushes, waits, and blockers. This is the outer backstop for the tend; nested /define handoff text and /do unattended-launch text should not set or print competing narrower goals when this babysit backstop exists.

Execution. After resolving the manifest path, invoke manifest-dev:do on it with the parsed verification options. For --ci, pass CI one-shot / no-wait context to /do. Unless --no-log is present, pass the resolved journal path to /do so it reads prior context before acting and appends after — /do is the sole journal consumer; the stateless check-pr skill neither reads nor needs it. When --no-log is present, forward it to /do so the opt-out holds there too — otherwise /do's own default execution log would recreate the record the user declined. Do not print a follow-up command as the primary outcome; this skill owns the define→do chain. /do owns the execution contract: it reads the manifest, evaluates the lifecycle gate according to the selected mode while activating check-pr, handles wait/retrigger/reply/sync findings, fixes in-scope code blockers when it can, and stops via /done, /escalate, or CI pending-summary when no-wait mode leaves only wait-shaped blockers.

CI mode. --ci means one complete state advance, then exit. Execute every immediately actionable step, including trusted auto-fixes, tests, commits, pushes, retriggers, safe description syncs, and safe replies/resolutions. When only waiting remains, report the wait state and exit successfully; do not keep the runner alive with long sleeps. The next GitHub event, scheduled run, or manual dispatch reinvokes the skill.

Mutation boundary. Auto-fix and push only when the PR head is trusted and writable: normal push permission exists, the head branch is not a protected/base branch, the PR is not an untrusted fork path with privileged secrets, the local checkout matches the current PR head SHA before fixing, and the push is a normal fast-forward branch update. Never press merge, never force-push, and never push to a base branch. The target is mergeable, not merged.

Failure handling. If PR inference fails, manifest-dev:define is unavailable, returns no manifest path, or rejects the PR URL, stop and surface the reason. If the user supplied --manifest, read it as grounding but do not rewrite it before /do; later new scope or conflicting comments go through /do's amendment/escalation path.

Version History

  • 2ac487e Current 2026-08-20 08:55

Same Skill Collection

.claude/skills/auto-optimize-prompt/SKILL.md
.claude/skills/compress-prompt/SKILL.md
.claude/skills/harden-task-file/SKILL.md
.claude/skills/learn-from-session/SKILL.md
.claude/skills/optimize-prompt-token-efficiency/SKILL.md
.claude/skills/sync-claude-code-plugins/SKILL.md
.claude/skills/sync-tools/SKILL.md
claude-plugins/manifest-dev-tools/skills/handoff/SKILL.md
claude-plugins/manifest-dev-tools/skills/prompt-engineering/SKILL.md
claude-plugins/manifest-dev-tools/skills/re-pitch/SKILL.md
claude-plugins/manifest-dev-tools/skills/review-pr/SKILL.md
claude-plugins/manifest-dev-tools/skills/review-prompt/SKILL.md
claude-plugins/manifest-dev-tools/skills/walk-pr/SKILL.md
claude-plugins/manifest-dev/skills/auto/SKILL.md
claude-plugins/manifest-dev/skills/check-pr/SKILL.md
claude-plugins/manifest-dev/skills/define/SKILL.md
claude-plugins/manifest-dev/skills/do/SKILL.md
claude-plugins/manifest-dev/skills/done/SKILL.md
claude-plugins/manifest-dev/skills/escalate/SKILL.md
claude-plugins/manifest-dev/skills/figure-out-team/SKILL.md
claude-plugins/manifest-dev/skills/figure-out/SKILL.md
claude-plugins/manifest-dev/skills/init-context/SKILL.md
claude-plugins/manifest-dev/skills/just-auto/SKILL.md
claude-plugins/manifest-dev/skills/just-do/SKILL.md
claude-plugins/manifest-dev/skills/next-ticket/SKILL.md
claude-plugins/manifest-dev/skills/poll-slack/SKILL.md
claude-plugins/manifest-dev/skills/review-writing/SKILL.md
claude-plugins/manifest-dev/skills/run-ticket/SKILL.md
claude-plugins/manifest-dev/skills/sweep-tickets/SKILL.md
claude-plugins/manifest-dev/skills/ticket-up/SKILL.md
claude-plugins/PLUGIN_TEMPLATE/skills/example/SKILL.md
claude-plugins/manifest-dev-tools/skills/teach-me/SKILL.md
claude-plugins/manifest-dev/skills/chat-surface/SKILL.md
claude-plugins/manifest-dev/skills/review-code/SKILL.md

Metadata

Files
0
Version
2ac487e
Hash
80b47543
Indexed
2026-08-20 08:55

- 위키
Copyright © 2011-2026 iteam. Current version is 2.155.2. UTC+08:00, 2026-08-25 08:44
浙ICP备14020137号-1 $방문자$