Drop in for a virtual coffee, Wednesdays at 5:30pm

Plan first

How I think about it

I use it when a change is large, spans several files or touches the architecture.

I also use it when there is more than one good approach and I want to choose first.

The skill is reading a real task and judging whether it needs planning.

I plan the investigation first and settle the approach.

Matt Cameron, in my own words

Explore and design before you write code. Have AI map the relevant parts of the codebase and propose an approach, agree it with you, then switch to building. Good AI coding tools have a plan or design mode for exactly this: a phase where AI investigates and lays out the approach with nothing committed yet.

Reach for it when the change is large, spans several files, touches the architecture, or has more than one sensible design and you want to choose before you commit. Planning first turns "I am not sure how this should go together" into a decision you made on purpose, rather than one the first draft of the code made for you.

The shape is two phases: plan to settle the approach, then execute to build it. When the exploring gets long and noisy, push it into a separate pass so its output does not crowd the main thread. You keep the plan in front of you and pull in only what matters.

Doing this with Claude Code: Plan first

Reach for plan mode when the work matters, a change that is large, spans several files, touches the architecture or has more than one good approach you want to choose between first. It also suits work that has to fit decisions written down elsewhere, like a knowledge base. Plan mode makes no changes, it produces a plan. Because nothing is touched yet you explore safely and settle the design before any risk, which avoids costly rework later. Expect open questions about the approach before any code. When the discovery is verbose and would fill the context with noise, push it into a separate Explore subagent. It runs in its own context, does the reading over there and hands back a summary, so the main thread stays lean. Then the plan settles the approach and the steps that carry it out are just direct execution.

Plan first earns its keep when the work matters: knowing when it fits, settling the design with nothing touched yet, pushing noisy discovery aside, spotting the signals and planning then executing.

When it fits. Large, multi-file or architectural changes, or more than one good approach you want to choose between first.

Nothing touched yet. Plan mode makes no changes, it produces a plan, so you settle the design before any risk and avoid costly rework.

Push discovery aside. When the exploring is verbose, hand it to a separate Explore pass that reads in its own context and returns a summary, so the main thread stays lean.

Spot the signals. Restructuring, a migration across many files or a choice between approaches, that is the cue to plan rather than start coding.

Plan then execute. Plan the investigation, settle the approach, then switch to direct execution to build it.

Part of Ways to build it with AI.