Implementation Planning
Use this skill before you implement non-trivial work.
Do not create a plan for:
- one-line fixes
- simple configuration changes
- typo fixes
- direct answers
- read-only analysis
- routine command execution
Create the plan
- Save the plan as
plans/<topic>-plan.mdin the project root. - Use a descriptive topic name.
- Create the
plans/directory when it does not exist. - Make the initial plan exploratory when the codebase has unresolved facts.
- Before implementation, make the plan implementation-ready.
- Present the plan path and a concise, high-signal summary.
- Wait for user approval before implementation.
Do not write only a checklist.
Required sections
Include these sections unless the work is trivial:
- Brief
- Current state / relevant context
- Proposed implementation
- File-by-file impact
- Risks and edge cases
- Validation / testing
- Step-by-step execution checklist
- Open questions / assumptions
Plan quality
- Be concise in wording, but cover the required details.
- Name likely files, modules, systems, and interfaces when you can infer them.
- State important tradeoffs and the preferred choice.
- State uncertain details as assumptions.
- Explain the Brief in plain English in two to four sentences.
- State what changes and why the work is necessary now.
- Do not use the Brief for implementation steps, task history, or generic goals.
When you present the plan, summarize:
- the Brief
- major implementation decisions
- likely files or systems affected
- key risks and tradeoffs
- validation approach
- open questions and assumptions
Maintain the plan
- Update the plan when implementation changes material decisions or details.
- Mark completed checklist steps as work finishes.
- Record deviations and the reason for each deviation.
- Keep completed plans as decision records.
- Mark a completed plan with the completion date.
- Never delete a plan.
Plan review
For genuinely non-trivial planning work, offer the grill skill. Use it to challenge the plan against project documentation, terminology, and existing decisions before implementation.