AI dev workflow
Dani Reyes6 min read31 views

Claude Code plan mode: when it earns its place (2026)

A field note on Claude Code plan mode after months of daily use: when it saves me, when I skip it, three failure modes the listicles miss, and the exact habit I built around it.

A laptop in a dim navy room showing a short plan on a terminal in lime green, with a small pause icon beside it
A laptop in a dim navy room showing a short plan on a terminal in lime green, with a small pause icon beside it
On this page

Quick answer

Plan mode is the Claude Code setting where the agent researches your codebase and writes a step-by-step plan before it touches a single file. You reach it by pressing Shift+Tab until the prompt footer says plan mode. Nothing gets edited until you approve the plan. After a few months of living in it, I use plan mode for anything that spans more than two files, and I skip it for one-line fixes. This is a field note on when it earns its place, when it wastes my time, and the exact habit I built around it (2026).

The moment it clicked

I used to let Claude Code start editing on the first message.

It felt fast. It was not.

Half the time it changed the wrong file, or it fixed the symptom in one place and left the same bug in three others. I would spend more time unpicking the edit than I saved.

Then I started hitting Shift+Tab until the footer flipped to plan mode.

Now Claude reads first. It opens the files, traces the call path, and hands me a plan. No edits. Just a list of what it intends to do and where. I read the plan, poke the holes, and only then approve.

That one change did more for my hit rate than any prompt trick I have tried this year.

What plan mode actually is

Two things, and they matter in this order:

  1. It is read-only. In plan mode Claude Code can search, read, and reason, but it cannot edit files or run destructive commands. That constraint is the whole point.
  2. It ends with a plan you approve. When Claude is done researching, it presents the steps. You approve to execute, or you send it back with notes.

You cycle into it with Shift+Tab. The prompt footer tells you which mode you are in: normal, auto-accept edits, or plan. If you have ever watched Claude confidently edit the wrong module, plan mode is the seatbelt.

The official Claude Code docs cover the mechanics well, so I will not repeat them. Anthropic's own engineering guidance leans on the same idea: make the model plan before it acts.

When plan mode earns its place

Here is where I reach for it without thinking:

  • Anything spanning more than two files. Refactors, renames, a new endpoint that touches routes plus a service plus a test. The plan surfaces the files I forgot existed.
  • Unfamiliar code. New repo, someone else's project, a corner I have not touched in months. The research pass is worth it just for the map.
  • The vague ask. "Make the dashboard faster." When I cannot specify the change myself, I want to see the model's plan before it commits to an approach.
  • Anything near data or migrations. Read-only by default means it cannot fire a destructive command while it is still guessing.

For these, the plan is not overhead. It is the review I would have had to do anyway, moved earlier.

When I skip it

Plan mode is not free. It adds a round trip.

I skip it for:

  • One-line fixes and typos. Planning a two-character change is theater.
  • Tests I can describe exactly. If I already know the file and the assertion, I just say it.
  • Throwaway scripts. If I am going to delete it in an hour, I do not need a plan.

The rule I settled on: if I can name the file and the change in one sentence, I skip plan mode. If I cannot, I use it.

The failure modes nobody mentions

Plan mode is a tool, not a guarantee. Three ways it still bites:

The plan reads great and misses a file. A good-looking plan is not a complete plan. I read every step and ask, out loud, "what is not in here?" Usually there is one file.

Over-planning small work. Early on I planned everything. It made me slower on the exact tasks where speed was the point. Now I match the mode to the size of the change.

Stale plans. If I edit something myself after the plan is written, the plan is now wrong. I re-plan instead of trusting the old steps.

The habit I actually built

Two moves, every time:

bash
# 1. Enter plan mode before describing the task
#    Press Shift+Tab until the footer reads "plan mode"

# 2. Keep a scratch file open for the plan
#    Paste the approved plan into notes.md, then approve

I keep a notes.md in the repo root and paste the approved plan into it. Two reasons. It gives me a diff-able record of what we agreed to do, and when the session compacts or I come back tomorrow, the plan is still there in plain text.

That pairs well with the memory setup I wrote about in what I keep in Claude Code memory, and it is the same instinct behind the handful of commands I actually kept: make the workflow deterministic where you can, and let the model improvise only where it helps.

If you try one thing

Next time you open Claude Code on something bigger than a typo, hit Shift+Tab before you type the task. Read the plan. Find the missing file. Then approve.

That single pause is the best habit I have added to my AI workflow this year.

Postscript: I still catch myself skipping plan mode on a "quick" change that turns out to touch six files. The seatbelt only works if you put it on before the crash.

Dani Reyes

Written by

Dani Reyes

Indie developer writing DevMoment from inside the work, on vibe coding, MCP, and weekend builds.

Frequently asked questions

What is plan mode in Claude Code?

Plan mode is a read-only Claude Code setting where the agent researches your codebase and writes a step-by-step plan before making any edits. It cannot change files or run destructive commands while planning. You review the plan and approve it before anything is executed.

How do you turn on plan mode in Claude Code?

Press Shift+Tab to cycle through the modes. The prompt footer shows which mode you are in: normal, auto-accept edits, or plan. Keep pressing Shift+Tab until the footer reads plan mode, then describe your task.

When should you use plan mode instead of letting Claude Code edit directly?

Use plan mode for changes that span more than two files, unfamiliar code, vague asks, or anything near data and migrations, where seeing the approach first prevents wrong edits. Skip it for one-line fixes, typos, and tasks you can describe in a single sentence, where the extra round trip is not worth it.