all guides

Plan mode, explained by monkey

(plus the plan prompt)

comment: PLAN

Plan mode makes Claude Code look around your project and write a step-by-step plan before it changes a single file. Here's the prompt monkey uses, and every key and setting on one cheat sheet.

In plan mode, Claude reads your files, runs commands to look around, and writes a step-by-step plan, but it doesn't edit your code until you approve. You read the plan, fix it if you need to, and only then does it start building. It's the cheapest way to catch a bad idea before it turns into an afternoon of fixing.

The plan prompt

Paste this into Claude Code and swap the first line for your task. Starting with /plan puts Claude in plan mode and starts on the task in one go, whatever mode you were in.

say this to Claude:
/plan [what you want, for example: add a dark mode switch to the settings page] Before you write the plan, read the files this touches and tell me in two or three lines how they work right now. Then give me a numbered, step-by-step plan: 1. Every file you'll change or create, and what changes in each one 2. Anything you'll add or remove: packages, settings, database changes 3. How we'll check it works: what to run, and what I should see 4. Anything risky, and anything you're not sure about Keep it short enough to read in a minute. If something important is unclear, ask me before you finish the plan.

When the plan comes back, read it like a quote from a builder. If a step is wrong, pick No, keep planning and say what to change, for example:

say this to Claude:
Keep planning. Drop step 3, we already have a helper for that in utils. And add a last step that runs the tests.

Cheat sheet: getting into plan mode

  • Type /plan. It works from any mode, in one step.
  • Type /plan with your task after it, like /plan fix the auth bug, to enter plan mode and start on that task straight away.
  • Press Shift+Tab to cycle through the modes until the status bar says ⏸ plan mode on.
  • Start Claude Code already in plan mode: claude --permission-mode plan

The Shift+Tab cycle, from a fresh session:

cheat sheet
auto mode on      (where a new session starts)
manual mode on    1 press
accept edits on   2 presses
plan mode on      3 presses

Cheat sheet: when the plan is ready

  • Yes, and use auto mode: approve the plan and let Claude build. If auto mode isn't available to you, this option reads Yes, auto-accept edits.
  • Yes, manually approve edits: approve the plan, then approve each edit yourself.
  • No, keep planning: stay in plan mode and tell Claude what to change.
  • Ctrl+G: open the plan in your own text editor and rewrite it before Claude starts.
  • Shift+Tab: leave plan mode without approving.

Make plan mode the default for a project

Put this in .claude/settings.json in your project and every session there starts in plan mode:

json
{ "permissions": { "defaultMode": "plan" } }

Just want it for one session? Start with claude --permission-mode plan instead.

Three tips most people miss

  • Build from a clean slate. Turn on the showClearContextOnPlanAccept setting ("showClearContextOnPlanAccept": true) and the approve menu gets a new first option: it approves the plan, clears the planning chatter out of the conversation, and builds from the plan alone. It's off by default.
  • Your plan survives compaction. It's saved as a file in ~/.claude/plans/ and put back into context after a compact, so a long build doesn't lose it.
  • Approving a plan also names the session after it.

When to skip it

Plan mode adds overhead, so don't use it for everything. The docs' rule of thumb: "If you could describe the diff in one sentence, skip the plan." Fixing a typo or changing a colour? Just ask. A new feature, a change across lots of files, or code you don't fully understand yet? Plan first.

Good to know

  • Plan mode isn't fully read-only. Claude still runs shell commands to look around. When auto mode is available, a safety check approves or blocks those commands instead of asking you. File edits stay blocked until you approve.
  • If you started the session with bypass permissions available (--dangerously-skip-permissions and similar), plan mode doesn't actually block anything in the terminal. Claude is only told to plan.
  • Browser actions, like opening a tab, still ask for permission in plan mode.
Permission modes and plan modethe official docs: entering plan mode, the Shift+Tab cycle, Ctrl+G and approvingBest practiceswhen a plan is worth it, and when to skip it

Monkey believe in you. Now go build.

follow @nocodemonkey

More guides