The Plan Gate
PLAN.md is the single most important checkpoint in the build. Claude Code writes it at the end of Prompt 01 and stops. No app code exists yet.
Read PLAN.md end-to-end
Section titled “Read PLAN.md end-to-end”Don’t skim. Specifically check:
- Component tree matches what you’d expect from the bootstrap input
- Routes / pages list is complete
- File count estimate is reasonable (warning sign if it’s 3× what you expected)
- CSS approach (Tailwind utility, components, design tokens)
- Any “deviations from spec” Claude Code flagged
Approve or redirect
Section titled “Approve or redirect”Reply in Claude Code with one of:
Plan approved, proceed.— Claude Code starts scaffolding immediately.Adjust X then re-plan.— Claude Code rewritesPLAN.mdand stops again. Iterate as many times as needed.
The cost of a re-plan is seconds. The cost of redirecting after Claude Code has written 40 files is much higher. Use the gate.
Plan Mode — a runtime-level sibling
Section titled “Plan Mode — a runtime-level sibling”Claude Code has a built-in plan permission mode. While active, it’s read-only: Claude Code can read files, run grep, list directories, but cannot edit, write, or run bash. Press Shift+Tab to cycle between default, acceptEdits, and plan.
Plan Mode and the Plan Gate are complementary, not equivalent. Plan Mode enforces no-writes at the runtime level; the Plan Gate is the file artifact (PLAN.md) you review before approving the build. Use Plan Mode when exploring an unfamiliar codebase, asking Claude Code to propose an architecture without touching anything, or any time the next prompt should result in analysis rather than changes. Switch back to acceptEdits (the recommended default for the bootstrap templates) once the plan is approved.