Plan first, execute second
The single highest-leverage rule in this handbook. It is also the rule most often violated by developers new to the workflow.
The rule
Before any non-trivial change, the agent presents a written plan. You read it. You approve, redirect, or reject. Then execution happens.
The slash commands enforce this. If you're using a slash command, you're already following the rule.
Why it works
Cheap redirects
The cheapest moment to redirect is at plan. Code hasn't been written. No diff to revert. No mental cost to discard.
The most expensive moment to redirect is after the diff. Code is written, tests are written, you've internalized the change. Some developers ship the wrong thing just to avoid backing out.
A record of intent
The plan is a written artifact. If you come back two days later, you can re-read it. If a teammate looks at the PR, you can paste the plan into the description. If something went wrong, you can audit "did we do what we said?"
Forces deliberate scope
A vague request becomes a vague plan, which becomes a vague PR. Forcing the agent to write a plan surfaces vague scope before it becomes a problem.
Aligns the user and the agent
The plan is the contract. Both parties read it; both parties agree. Misalignment surfaces here, not at PR review.
What approval looks like
| Approval | When |
|---|---|
| "Approved" | Plan is exactly right |
| "Approved, but [one specific thing]" | Plan is 95% right |
| "Approved with changes: 1, 2, 3" | Plan needs adjustments but no rework |
| "Hold — let me think" | You're not sure; pause until you are |
| "No, do X instead" | Plan is wrong; redirect specifically |
| "Re-plan: [new constraints]" | Plan was based on wrong assumptions |
What the user reads for at plan time
- Wrong scope. The plan touches files it shouldn't.
- Missing scope. The plan misses something the ticket requires.
- Wrong approach. The plan picks an inferior pattern.
- Wrong tools. The plan uses Gemini direct when openrouter is available.
- Wrong tests. The plan uses webmock when service-level stubs are preferred.
- Wrong order. The plan's phases would make migrations irreversible.
The anti-pattern
"Just do it. Skip the plan."
This is almost always slower, not faster. You save the 60 seconds of plan-presentation. But you lose the redirect opportunity (cost: minutes to hours), the deliberate scope (cost: scope creep), the artifact (cost: harder review), and the alignment (cost: misalignment surfaces later).
In every measured case in the data behind this handbook, sessions that started with a plan finished faster than sessions that didn't. Counterintuitive, but consistent.