Why plan mode
Jumping straight into complex work risks:
- Going far in the wrong direction before you can stop it
- Hiding the change scope from you until after the fact
- Magnifying losses when an assumption is wrong
Plan mode is the gate before any code change — it shows you the plan, you approve, then it runs. Slightly slower upfront, much higher success rate on complex work.
Toggle
| Action | Shortcut |
|---|---|
| Enter plan mode | Shift+Tab |
| Exit plan mode | Shift+Tab again |
A mode indicator shows up in the input area when active.
What a good plan contains
Claude’s plan typically includes:
- Context — why the change is needed
- Files to modify — exact paths
- What changes per file — function or section level
- Assumptions — what state/environment is assumed
- Verification — build, tests, manual checks
If a section is empty, ask Claude to fill it. If an assumption is wrong, correct it and ask for a revised plan.
When to use it
| Good fit | Skip it |
|---|---|
| New feature (3+ files) | Single typo fix |
| Refactor | Single-file rename |
| DB migration | Adding a console.log |
| Dependency change | Comment edits |
| API signature change | Obvious bug fixed in seconds |
What to review
- Missing files — affected files Claude didn’t catch
- Wrong assumptions — “assumes X exists” — does it?
- Irreversibility cost — migrations, deletions, data changes
- Test plan — how the change will be verified after the fact
Mid-execution adjustments
When mid-execution requires deviating from the plan, Claude should stop and report. From there, re-enter plan mode for a revised plan, then resume.
Pairs with
- CLAUDE.md — “Use plan mode for complex changes” as a rule encourages Claude to suggest it.
- Superpowers —
/write-plan,/execute-planslash commands save plans as files for larger work. - claude-mem — preserve plans and progress across sessions.
Common misconceptions
- “Plan mode means no edits at all” — correct, no file edits until approval. Reads and searches still happen.
- “Approval guarantees execution exactly as planned” — usually yes, but Claude stops if it hits an issue.
- “Plan mode is always better” — for trivial work it’s overhead. Use it when impact is broad.
Next steps
- Superpowers — automate the plan-mode workflow with slash commands
- claude-mem — preserve plans and progress across sessions
- Writing a Great CLAUDE.md — encode plan-mode rules in CLAUDE.md