| name | plan-style |
|---|---|
| description | Planning conventions for pattern surveys, decision escalation, task tracking, skill loading, and finalization. Use when writing implementation plans, or when the user asks to "load plan style", "plan conventions", or "how should I structure a plan". |
Use EnterPlanMode to enter plan mode if not already in it. When writing an implementation plan:
- Survey patterns — Search the codebase for analogous features
- Escalate decisions — Surface product/design decisions via
AskUserQuestionbefore drafting - Draft the plan with these elements:
- Task tracking — A section at the top so the implementation session can track progress via
TaskCreate - Existing patterns — A note listing analogous features found in the codebase and whether the approach follows or deviates from them
- Skills line — An instruction to load relevant skills before making edits
- Finalize step — A final step instructing to run the
/finalizeskill after implementation
- Task tracking — A section at the top so the implementation session can track progress via
- Review the plan — Run the review pipeline before presenting to the user
At the start, use TaskCreate to create a task for each step:
- Survey patterns
- Escalate decisions
- Draft the plan
- Run
/review-planskill - Run
/evaluate-findingsskill - Run
/apply-findingsskill - Present revised plan
Before drafting the plan, spawn a subagent (model: "opus", do not set run_in_background) to search the codebase for analogous features. Provide:
- A summary of what the plan will add or change
- Instructions to find all existing instances of similar behavior (e.g., if adding a new validation, find all existing validations; if adding a new endpoint, find all existing endpoints)
The subagent should return:
- Patterns found — List of analogous features with file paths and a brief description of how each works
- Proposed alignment — Whether the new work should follow or deviate from these patterns, and why
- No patterns — If no analogous features exist, state that explicitly
Include the subagent's findings as an "Existing patterns" note in the plan.
Before drafting plan steps, identify product or design decisions that the user's request does not resolve. Escalate these via AskUserQuestion before embedding them in the plan.
Escalate when:
- A plan step requires choosing between user-facing behaviors and the request doesn't specify a preference (e.g., opt-in vs opt-out, strict vs lenient, sync vs async)
- The plan assumes product requirements that weren't stated
- Design trade-offs affect UX or product direction rather than technical implementation
- Multiple valid approaches exist and the choice is a matter of product preference, not technical merit
Do not escalate technical decisions the agent can make autonomously: which data structure, which existing pattern to follow, internal implementation approach. The boundary is product intent.
Present each decision as a concise trade-off with options via AskUserQuestion. Draft plan steps that depend on these decisions only after the user responds.
Add a "Task Tracking" section near the top of the plan (after the title, before the first step).
If the plan has few steps or each step is small (e.g., one edit per file), use a single implementation task:
## Task Tracking
At the start, use `TaskCreate` to create a task for each item:
1. Implement the plan
2. Run `/finalize` skillIf the plan has substantial, distinct steps, create a task per step:
## Task Tracking
At the start, use `TaskCreate` to create a task for each step:
1. [Step 1 label]
2. [Step 2 label]
3. ...
N. Run `/finalize` skillAlways include "Run /finalize skill" as the last task.
Identify currently available skills from the skill list in the system prompt. Determine which skills are relevant for this plan's work by comparing the work type against each skill's trigger description.
Add an instruction to the plan: "After plan approval and before making edits, run /skill-a, /skill-b."
Add a final step to the plan:
## Step N: Run `/finalize` Skill
Run the `/finalize` skill to run tests, simplify code, review, and commit.After drafting the plan and before presenting it to the user:
- Run the
/review-planskill with the full plan text - Run the
/evaluate-findingsskill on the combined review findings - Run the
/apply-findingsskill on the evaluated findings to incorporate accepted changes into the plan - Present the revised plan to the user for approval