harden-task-file
Harden a manifest-dev task guidance file for one-shot quality — either /define''s quality-gate/Default set or figure-out''s probe set. Iterates: orthogonality…
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.
$ npx -y skills add doodledood/manifest-dev --skill babysit-pr --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/babysit-prContext preview
The summary Claude sees to decide when to auto-load this skill.
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.
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>] [--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 `--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. Without `--manifest`, invoke `define` with `--babysit <pr-url> --autonomous`, read its `Manifest complete:` path, then continue.
**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 reuses this PR-keyed file but appends a new run boundary; prior verdicts remain historical and are not carried into the active run. When the journal is unavailable on an ephemeral runner, reconstruct current PR state from GitHub and record that prior abandoned attempts could not be recovered.
**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. Where the project keeps a `NORTH_STAR.md` — usually already in context through the project context file — apply it as a standing check on whatever the chain selects rather than as another rung in it: it says nothing about this PR's intent, so it cannot be ranked among sources that do. A request that is well-grounded here and still crosses a stated `Never` — the checkable part of that document, since the rest of it informs and does not route — goes down that same amendment-or-escalation path with the clash named, never into a silent refusal. Where the project keeps none, the chain is the whole of it, as today.
**Unattended launch.** At the start of a standalone tend, before invoking `/define` or `/do`, establish a durable PR-tend goal-setting backstop. It spans manifest discovery or synthesis and `/do`, including the `--manifest` path where `/define` is skipped, and during `/do` it carries the gate clause below. It is the outer backstop for the tend: nested `/define` handoff text and `/do` unattended-launch text should not set or print competing narrower goals while this babysit backstop exists. Emit the blocks below verbatim, substituting `<pr-url>`. Do not summarize, shorten, reword, or re-punctuate them. Set it through the harness's goal-setting, continuation, or durable-completion-condition capability where one exists; print it in copy-pasteable form for the user's own continuation mechanism where none does. Emit the PR-tend prefix, then the PR goal block, then the gate clause, as one contract: one unlabeled block introduced by a sentence of your own, since the fences and their labels are this file's markers rather than part of what you emit.
Drive the pull request at <pr-url> until it is mergeable or a blocker requires a person and no useful independent work remains. Never press merge. In CI one-shot mode, report an external wait as pending once no actionable work remains; otherwise keep tending through waits. Discover or synthesize the Manifest for this pull request. Record its path in a checkpoint note as soon as it exists.
Work until every Acceptance Criterion and Global Invariant in the Manifest holds, each with evidence from the artifacts that gate names, and completion has been reported. The Manifest is the contract, not the run's to rewrite: it changes only through the skill that wrote it, never by direct edit, and a changed gate returns unverified. Record compact checkpoint notes as work proceeds: what changed, what was verified, what remains, blockers. Assume the user is AFK; make authorized decisions without asking questions. Surface blockers promptly and continue useful independent work. Stop after reporting completion, a blocker requiring a person when no useful independent work remains, or an external wait that this run's no-wait policy makes terminal. Continue while authorized, actionable work remains.
Track every Acceptance Criterion and Global Invariant in the Manifest: its id, its latest verdict, the evidence behind that verdict, and whether that evidence is still fresh relative to the last relevant change to the gate's subject. Completion requires every gate to hold on fresh evidence. Unverified, failing, stale, actionably blocked, or escalation-pending gates do not satisfy successful completion. A terminal wait is re
Skills for agentic coding CLIs. They keep three things in your project instead of in your head: what it's becoming, what's worth doing next, and what done means here. The agent reads them, works against them, and checks the result before reporting it finished.
Harden a manifest-dev task guidance file for one-shot quality — either /define''s quality-gate/Default set or figure-out''s probe set. Iterates: orthogonality…
Analyze Claude Code sessions to learn what went right/wrong and suggest high-confidence improvements to skills. Use when asked to analyze a session, learn from…
Sync the prompt-engineering plugin from a local clone of claude-code-plugins into .claude/ so the repo is self-contained for isolated/web environments. Copies…
Regenerate the Codex distribution copy of the plugin skills and check it for drift. Run after changing anything under claude-plugins/*/skills. OpenCode and Pi…
Analyzes the current project structure and tech stack. Use when asked to explore, understand, or summarize a project. Trigger terms: project overview, analyze…
Explain a topic like I'm a 5 year old. Use when the user types /eli5 <topic> or asks for a dead-simple picture explainer of how something works.