From claude-skills
Use when a thumbs-upped design spec is ready and you want the whole spec-to-PR pipeline to run autonomously — hardens the spec, writes the plan, executes it via dex, opens a PR, and runs PR review — in one invocation. Triggers on: ship it, ship-it, run the pipeline, spec to PR, autonomous feature pipeline, conductor.
How this skill is triggered — by the user, by Claude, or both
Slash command
/claude-skills:ship-itThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Run the full feature pipeline from a thumbs-upped design spec to a reviewed pull request, autonomously, in one invocation. This skill is a **pure conductor**: it sequences existing units and owns the transitions between them. It duplicates none of their logic — each unit is invoked **live**, so improvements to those units are always picked up.
Run the full feature pipeline from a thumbs-upped design spec to a reviewed pull request, autonomously, in one invocation. This skill is a pure conductor: it sequences existing units and owns the transitions between them. It duplicates none of their logic — each unit is invoked live, so improvements to those units are always picked up.
Pipeline (sequential): harden spec → write plan → resolve branch → execute → open PR → review loop.
Policy: fully autonomous, best-effort, never halt on quality. The only hard abort is a failed preflight. A non-clean quality outcome (open IMPORTANTs, review notes) is recorded and the chain continues. A hard failure that makes the next step impossible (e.g. zero code produced → nothing to commit) skips the now-impossible steps and jumps to the final report — it never fabricates a downstream artifact.
Underlying units (invoked live, never reimplemented): spec-review-codex, writing-plans, plan-to-dex (all via the Skill tool), and the /commit-commands:commit-push-pr + /review-pr slash commands.
The heavy Skill steps (1, 2, 4) emit a lot of output — codex review iterations, the full plan, dex apply/review logs across every task. To keep that out of the conductor's context, Steps 1, 2, and 4 run as execute-and-report subagents: a subagent (the Agent tool) invokes the step's Skill inside its own context, absorbs all the raw output, and returns only the structured contract (outcome / state / notes). The conductor's context never holds the raw logs. (This works because an Agent subagent can invoke the Skill tool — verified.)
Steps 3, 5, 6 run in the main loop: Step 3 is two git commands (no context cost), Step 5 is outward-facing and cheap (you want PR creation visible), and Step 6's /review-pr already spawns its own specialized agents — wrapping it in another subagent would nest agents and hide the findings. After Step 6, dispatch one boundary verifier — a subagent that extracts the contract from the completed review without performing work — to collect leftover findings.
spec-review-codexwriting-plans (from the hardened spec)plan-to-dex (includes its final Opus review)/commit-commands:commit-push-pr/review-prPipeline state (spec path, plan path, branch, PR number, leftover findings) lives in conversation memory and the subagent hand-offs (the execute-and-report subagent or boundary-verifier returns — the same three-field contract) — never written to the workspace. The only persisted artifact is the final report (written to the OS temp dir).
Run these checks before any mutation. Preflight failure is the only hard abort; once past it, the never-halt policy governs.
codex on PATH: command -v codex — else STOP: "codex CLI not found; required by spec-review-codex and plan-to-dex."dex on PATH: command -v dex — else STOP: "dex not found. Install: curl -sSfL https://raw.githubusercontent.com/francescoalemanno/dex/main/install.sh | bash."pr-review-toolkit plugin present: the /review-pr command file must exist on disk — find ~/.claude/plugins -path '*commands/review-pr.md' -print -quit | grep -q . — else STOP: "pr-review-toolkit plugin not installed; required for the PR review step." (A pre-check on disk is used because a slash command's resolvability cannot be tested without invoking it, and the early abort avoids running the whole pipeline only to fail at the PR step.)commit-commands plugin present: the /commit-commands:commit-push-pr command file must exist on disk — find ~/.claude/plugins -path '*commands/commit-push-pr.md' -print -quit | grep -q . — else STOP: "commit-commands plugin not installed; required to open the PR."docs/superpowers/specs/*-design.md and confirm it with the user before starting. If no file matches that glob, STOP and ask the user to provide the spec path explicitly.On any STOP, print the missing item plus its remedy and exit without touching the repo.
| # | Step | Unit invoked | Success bar | State handed forward |
|---|---|---|---|---|
| 1 | Harden spec | Skill(spec-review-codex) | PASS, or 3-iteration cap | (possibly rewritten) spec path |
| 2 | Write plan | Skill(writing-plans) | plan file written | plan path |
| 3 | Resolve branch | conductor itself | on a non-main/master branch | branch name |
| 4 | Execute | Skill(plan-to-dex) (incl. Opus review) | dex loop completes | dex status + diff summary |
| 5 | Open PR | /commit-commands:commit-push-pr | PR created | PR number / URL |
| 6 | Review loop | /review-pr + fix | clean, or capped at 3 attempts | leftover findings |
Isolation: Steps 1, 2, 4 run as execute-and-report subagents (raw output stays in the subagent); Steps 3, 5, 6 run in the main loop (see Step Isolation).
Dispatch an execute-and-report subagent (see "Step Subagents") that runs Skill(spec-review-codex) on the spec resolved in preflight — letting its full 3-iteration fix loop run — and returns the contract: outcome is clean / finished-with-notes / failed (a PASS maps to clean; an open-IMPORTANTs cap to finished-with-notes), state = the current (possibly rewritten) spec path. Record it; continue regardless (never halt on quality).
Dispatch an execute-and-report subagent that runs Skill(writing-plans) on the hardened spec from Step 1 and returns the plan path as state. This is the earliest generative step — do not re-brainstorm or re-interview. writing-plans writes to docs/superpowers/plans/YYYY-MM-DD-<feature>.md. After the subagent returns, the conductor confirms the file exists on disk: test -f <plan-path>. If no plan file exists on disk (hard failure), skip to the final report (Steps 3-6 are impossible without a plan).
plan-to-dex refuses main/master. Get the current branch (git rev-parse --abbrev-ref HEAD):
git switch -c feat/<spec-slug>.Record the branch name.
Dispatch an execute-and-report subagent (see "Step Subagents") that runs Skill(plan-to-dex) with the plan path from Step 2 — letting the dex apply/review loop run to completion, including its own final Opus review — and returns the contract: state = dex status + a one-line diff summary; notes = any failed dex tasks. This step emits the most output of any in the pipeline, so the dex logs staying in the subagent's context (not the conductor's) is the biggest isolation win.
Post-step zero-diff check: after the subagent returns, the conductor checks the repo in its own shell — never from the subagent's state summary — by running git status --porcelain and inspecting git log for dex commits. If dex produced zero diff (no working-tree changes and no dex commits), there is nothing to commit → skip Steps 5-6 and jump to the final report. Do not open an empty PR. Verifying against git directly (not the summary) is what stops a mis-summary from fabricating a PR.
Run the /commit-commands:commit-push-pr slash command to commit, push the branch, and open the PR. Capture the PR number and URL from its output. If no PR is created (hard failure), skip Step 6 and jump to the final report.
Loop, up to 3 passes:
/review-pr slash command against the PR.After 3 passes, stop even if findings remain. Dispatch the boundary verifier (see "Step Subagents") to collect any leftover CRITICAL/IMPORTANT for the final report.
Every subagent — the three execute-and-report subagents (Steps 1/2/4) and the one boundary verifier (Step 6) — returns the same three-field contract:
outcome: clean | finished-with-notes | failedstate: the artifact to hand forward (per-step below)notes: any leftover CRITICAL/IMPORTANT findings or failure reason, verbatim enough to act on (empty if none)Per-step state:
state = current (possibly rewritten) spec path; notes = open IMPORTANTs if the loop hit its cap.state = plan path.state = dex status + one-line diff summary; notes = any failed dex tasks.state = PR URL; notes = leftover CRITICAL/IMPORTANT after 3 passes.The subagent runs the step AND returns the contract — the raw output stays in its context:
You are executing one step of an autonomous pipeline. Invoke
Skill(<step-skill>)with these inputs: . Let it run to completion. Then return only the three-field contract —outcome(clean|finished-with-notes|failed),state(),notes(verbatim leftover CRITICAL/IMPORTANT or failure reason; empty if none). Do not paste the step's raw output, logs, or findings back — only the contract. If the step fails, write its full output tail to a temp file and put that path innotes.
The verifier reads the completed /review-pr output and extracts state — it never performs the step's work:
You are a boundary verifier. Read only the step output provided below — do not perform any work or run any commands beyond what is needed to read state. Return exactly three fields:
outcome(clean|finished-with-notes|failed),state(the PR URL),notes(verbatim leftover CRITICAL/IMPORTANT after 3 passes; empty if none).Step output: {paste the just-completed review output here}
Keep every subagent prompt scoped to one step so the conductor's own context stays lean.
Fully autonomous, best-effort:
"Never halt" means never block on quality — it does not mean invent work that cannot exist.
Because nothing stops mid-run to flag problems, the final report is the contract. Always emit it at the end of any run that cleared preflight. Write it in /handoff style to the OS temporary directory, never the workspace, and also summarize it in the conversation. Include:
clean / finished-with-notes / skipped (reason) / failed (reason).npx claudepluginhub adelrioj/claude-skills --plugin claude-skillsCreates bite-sized, testable implementation plans from specs or requirements, with file structure and task decomposition. Activates before coding multi-step tasks.