ship
Finalizes tests/docs/changelog and merges the PR to make it deployment-ready.
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Menu
Finalizes tests/docs/changelog and merges the PR to make it deployment-ready.
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Based on SOC occupation classification
Pre-meeting B2B account research. Produces a structured account brief (company overview, recent news, tech stack, decision structure hypothesis, hypothesized pain points, approach strategy). Use before /discovery-prep.
Generates a Discovery meeting plan from an account brief โ SPIN questions, MEDDIC checklist, hypothesized pain points with verification questions, objection prep, time-boxed agenda. Run after /account-brief, before the meeting.
Generates post-meeting follow-up assets โ customer-facing email draft, internal action list, CRM update fields, account_brief updates, champion status tracking. Run after any sales meeting.
Converts sales-written meeting notes (discovery type) into a PRD draft for PoC building, and updates account_brief.md with newly learned facts. The bridge between sales discovery and engineering PoC. Run after a discovery meeting, before /kickoff.
Generates a closing proposal from demo meeting notes + the actual PoC + account brief. Business-value first; technical specs in appendix. Run after a demo meeting, before contract negotiation.
Analyzes and critiques business viability. Use after /brainstorm and before /prd.
| name | ship |
| description | Finalizes tests/docs/changelog and merges the PR to make it deployment-ready. |
| disable-model-invocation | true |
| allowed-tools | Read, Glob, Grep, Write, Edit, Task, Bash(bash scripts/checkpoint.sh *), Bash(bash scripts/wt_cleanup.sh *), Bash(bash scripts/registry_edit.sh *), Bash(bash scripts/flock_edit.sh *), Bash(bash scripts/worktree.sh *), Bash(python3 scripts/*), Bash(git *), Bash(gh *), Bash(pytest *), Bash(npm *), Bash(bash ${CLAUDE_PLUGIN_ROOT}/scripts/*), Bash(python3 ${CLAUDE_PLUGIN_ROOT}/scripts/*) |
Kit root: ${CLAUDE_PLUGIN_ROOT}
scripts/ dir): prefix every kit script command with it, e.g.
bash <kit-root>/scripts/checkpoint.sh โฆ. Absolute paths also work from worktrees.${โฆ} placeholder above โ standalone layout: run commands as written.Run these checks silently at the start. Use results to adapt behavior:
[ -f issues.md ] โ if true, this project uses the sprint system. Respect issue numbering and STATUS.md.[ -f docs/sprint_state.md ] โ if true and Status shows running, a sprint is active. Be aware of parallel work in worktrees.[ -f docs/prd_digest.md ] โ if true, read it for quick project context before starting.gh auth status before any GitHub operation.Every phase has a checkpoint. Run the verification command and check the exit code.
ADVISORY: line (advisory gate): report the gap, self-correct, continue.
Standard prefix:bash scripts/checkpoint.sh
Append --skill <name> --phase <phase> --issue <ID> for the specific check.
checkpoint.sh resolves the main repo root internally, so the command stays
a single prefix-matchable form (safe to allowlist as Bash(bash scripts/checkpoint.sh *)).
Pipeline skills operate in git worktrees to isolate changes from main.
WT="$(bash scripts/wt_setup.sh <branch>)" โ creates the
worktree via scripts/worktree.sh create and writes .claude-kit/freeze-dir.txt
inside it in a single step.bash scripts/worktree.sh rootbash scripts/wt_cleanup.sh <branch> โ cd's to main root
inside a subshell, then removes the worktree (never leaves CWD dangling).
All file operations happen inside $WT/. Shared files live on main only.Shared files (issues.md, STATUS.md, CHANGELOG.md) are managed on main only.
Always use registry_edit.sh for concurrent-safe writes โ it resolves the
main repo root internally and delegates to flock_edit.sh:
bash scripts/registry_edit.sh issues.md -- bash -c '<update command>'
Never commit these files to feature branches. Steps:
CHECKPOINT โ MANDATORY โ NEVER SKIP Run:
bash scripts/checkpoint.sh --skill ship --phase checks --issue $ARGUMENTSIf exit code โ 0: STOP immediately and report the failure. Do NOT proceed.
3.5) Ask documenter subagent to review and update project documentation:
Update shared files via the registry wrapper:
bash scripts/registry_edit.sh STATUS.md -- bash -c '<update command>'
gh pr merge (merge/squash per repo rules) and delete branch.CHECKPOINT โ MANDATORY โ NEVER SKIP Run:
bash scripts/checkpoint.sh --skill ship --phase merge --issue $ARGUMENTSIf exit code โ 0: STOP immediately and report the failure. Do NOT proceed.
wt_cleanup.sh wrapper โ it cd's to the main repo root and
removes the worktree in a single subshell, so the caller's CWD is
never left inside a deleted directory:
bash scripts/wt_cleanup.sh <branch>
CHECKPOINT โ MANDATORY โ NEVER SKIP Run:
bash scripts/checkpoint.sh --skill ship --phase cleanup --issue $ARGUMENTSIf exit code โ 0: STOP immediately and report the failure. Do NOT proceed.
git checkout main && git pull
pytest -q --tb=shortnpm testverify_gates.py runs automatically via checkpoint
(e2e-web, e2e-mobile, api, integration, load โ as configured in docs/test_plan.md).git revert -m 1 <merge_commit>.CHECKPOINT โ MANDATORY โ NEVER SKIP Run:
bash scripts/checkpoint.sh --skill ship --phase smoke --issue $ARGUMENTSIf exit code โ 0: STOP immediately and report the failure. Do NOT proceed.
Post-ship test gap advisory (optional, non-blocking):
git diff --name-only HEAD~1 HEADsrc/module.py โ tests/test_module.pysrc/component.ts โ src/component.test.ts or src/component.spec.tsTest coverage gaps detected in shipped code:
- src/auth.py โ no corresponding test file
- src/webhook.py โ test exists but may lack coverage for new functions
Suggestion: run `/testgen <path>` to generate missing tests.
Review-quality eval advisory (optional, non-blocking โ ISSUE-002):
docs/review_notes/$ARGUMENTS.md (or legacy docs/review_notes.md). If neither exists, skip silently.claude -p process (no separate billing; uses the session auth):
python3 scripts/eval_review.py --pr <pr_number> --notes docs/review_notes/$ARGUMENTS.md
docs/review_eval_<pr>.md and prints eval: pass|concerns โ <path>. Surface the verdict + any missed Critical/High findings to the user.eval_review.py always exits 0 โ on concerns, or if the claude CLI is unavailable (eval skipped: โฆ), report it and continue. It never fails the ship.IMPORTANT: Never commit issues.md, STATUS.md, or CHANGELOG.md to the feature branch.
These are registry files managed only on main. Always use bash scripts/registry_edit.sh <file> -- bash -c '<update command>' โ the wrapper resolves the main repo root internally.
gh pr checks <pr> โ all CI checks must be green.gh pr merge fails: report the error (e.g., merge conflicts, branch protection rules).git revert -m 1 <merge_commit> to revert the merge.git revert -m 1 <merge_commit_sha> on main.