About plan
A task-planning skill that creates and commits a plan file after `/orient` and a single `/brainstorming` round. It is for repository tasks that need a structured handoff to `/review`, with explicit scope, threat-model, and testing requirements.
Key features
- 01Checks worktree and `/orient` prerequisites
- 02Runs one `/brainstorming` round
- 03Fills every plan template field
- 04Detects target branch from reflog
- 05Commits plan before `/review`
Use cases
- 01Preparing an implementation task for review
- 02Recording concrete implementation and test steps
- 03Selecting a threat model for a repository change
Install
Copy the command and run it in a terminal.
npx skills add https:/ / github.com/ camacho/ ai-skills --skill planAfter installing, type/planin Claude Code to confirm it loaded.
Details
From the project README/plan
Write a plan file for the current task. Requires /orient to have run first.
Sequence
- Check prerequisites. Confirm a worktree exists and /orient has identified the task. If not, stop and tell the user.
- Brainstorm (one round). Invoke
/brainstormingwith the task description. One round only — capture direction, do not iterate. - Read the template. Read
ai-workspace/plans/TEMPLATE.mdfrom the repo root. - Write the plan. Create
ai-workspace/plans/<branch-slug>.mdwith ALL template fields:
| Field | How to fill |
|---|---|
| Branch | Current branch name |
| Target | Branch to merge into. Default: detected via reflog parent (see below), falling back to main. Override only when intentionally retargeting. /ship reads this field. |
| Created | Today's date (YYYY-MM-DD) |
| Status | In Progress |
| Threat model | See selection table below |
| Scope ceiling | Keep template defaults (400/6 soft, 800/10 hard) |
| Task | 1-3 sentences: what and why |
| Steps | Checkbox list of concrete implementation steps |
| Confidence Scaffold | Required for adversarial. Recommended for complex advisory. |
| Outcomes & Learnings | Leave empty — populated by /archive |
-
Commit the plan. Stage and commit the plan file before handing off to
/review:git -C "$WORKTREE" add ai-workspace/plans/<name>.md git -C "$WORKTREE" commit -m "plan: <name>"Required because
/reviewworks against committed state. A session crash or/clearafter writing the plan but before/reviewruns loses the brainstorming work otherwise. See ADR-008 (refs/wip/checkpoints/<branch>Stop-hook backstop) for the recovery path if this step is skipped.
Detecting the Target
The default Target is the branch this branch was cut from, read from the reflog:
TARGET=$(
git reflog show HEAD --pretty=format:'%gs' \
| grep "^branch: Created from" \
| head -1 \
| sed 's/branch: Created from //' \
| sed 's|^origin/||'
)
TARGET=${TARGET:-main}
Falls back to main when the reflog is empty (web sessions, detached-HEAD creation). Use this whenever the user hasn't explicitly named a Target. Pure git — works in any environment without tool installs.
Threat model selection
| Signal | Model |
|---|---|
| Internal tooling, refactor, docs, tests, config | advisory |
| Auth, secrets, input validation, CI, hooks, permissions | adversarial |
| Unsure | adversarial |
Guardrails
- Do NOT review the plan. That is /review (Step 4).
- Do NOT start implementation. The plan is the deliverable.
- Do NOT skip any template field.
- Do NOT proceed to
/reviewwithout committing the plan file first. - If brainstorming reveals the task is one-sentence scope, say so and skip.
- Scope ceiling values are fixed — do not change them.
- Steps must be concrete actions with checkboxes, not vague phases.
- Include test steps explicitly. When tests need a separate author (TDD contract), list them as distinct tasks from implementation so /build dispatches test-writer and implementer separately.
Output
After writing, report:
Plan written: ai-workspace/plans/<name>.md
Threat model: advisory|adversarial
Steps: <count>
Next step: /review