D2.5 enumerated the six permission modes as a tool-gating mechanism. This chapter zooms in on the one an architect chooses on purpose: plan. Plan mode is read-only research with a written proposal at the end — and the real exam question is not “what is plan mode” but “when do you plan first versus edit directly.” That is a risk-containment decision, and there is no named “direct execution” mode — going direct just means working in a mode that lets edits through. The chapter closes on opusplan, the alias that makes the strong-model-plans/fast-model-executes split automatic.
What plan mode restricts
Plan mode is the one mode whose purpose is to change nothing: “Plan mode tells Claude to research and propose changes without making them. Claude reads files, runs shell commands to explore, and writes a plan, but does not edit your source. Permission prompts still apply the same as default mode.” [Official] Choose a permission mode · AnthropicT1-official original It is read-only — best for exploring a codebase before changing it. [Official] Choose a permission mode · AnthropicT1-official original
Its contrast is not a single “direct” mode but the write modes from D2.5 — default (reads auto-approved, edits prompt) and acceptEdits (edits and common filesystem commands auto-approved) — the modes that let changes through.
[Official]
Configure permissions · AnthropicT1-official original “Going direct” is shorthand for working in one of those, not a toggle of its own.
Entering and exiting plan mode
You can enter plan mode four ways: cycle with Shift+Tab (the CLI cycle runs default → acceptEdits → plan), prefix a single prompt with /plan (optionally with a task, /plan fix the auth bug), start the session with claude --permission-mode plan, or set permissions.defaultMode: "plan" in settings.
[Official]
Choose a permission mode · AnthropicT1-official original
Exit is the part that trips people up: “Approving a plan exits plan mode and switches the session to the permission mode each approve option describes, so Claude starts editing. To plan again, cycle back to plan mode with Shift+Tab, or prefix your next prompt with /plan.”
[Official]
Choose a permission mode · AnthropicT1-official original When the plan is ready Claude presents it, and each approve option (auto, accept-edits, review-each-edit) names the write mode the session lands in.
The decision: plan first, or go direct?
Because plan mode adds a research-and-review round before any edit, the choice between it and going direct is a bet on reversal cost and uncertainty:
Model per phase: the opusplan alias
Plan mode separates thinking from doing in time — research first, edits after. That split is exactly where a model-per-phase pays, and Claude Code ships an alias for it. opusplan is one of the eight model aliases, and it “uses Opus in plan mode, switches to Sonnet for execution.”
[Official]
Model configuration · AnthropicT1-official original Spelled out: “The opusplan model alias provides an automated hybrid approach: In plan mode — Uses opus for complex reasoning and architecture decisions. In execution mode — Automatically switches to sonnet for code generation and implementation.”
[Official]
Model configuration · AnthropicT1-official original
Set it like any alias — /model opusplan during a session, or claude --model opusplan at startup.
[Official]
Model configuration · AnthropicT1-official original The reasoning-heavy plan runs on the strong model; the moment execution begins, the fast model takes over. You spend the expensive tokens where the leverage is — on the design — and the cheaper model on the mechanical edits.
Where plan mode fits the workflow
Plan mode is the front of the iterative loop — the “explore and plan” phase before “implement and commit” (the rhythm developed in D3.5). The hands-on mechanics — how the approval screen looks, how to drive the loop turn by turn — are the handbook’s territory rather than this book’s: see the Use book, Chapter 3, Your First Working Session.
Practice
Exercise solutions
B. The change is unfamiliar, multi-file, and expensive to get wrong — exactly the profile where planning first pays. In plan mode Claude maps the full set of call sites and proposes the complete edit before touching anything, so a missed reference shows up in a proposal you can reject, not as breakage you have to walk back. A and D both start editing before the scope is known: you discover missed call sites as broken edits (A) or as a long stream of one-at-a-time approvals with no view of the whole (D). C removes the safety entirely — and approving plans is the opposite move from skipping permission checks. Plan mode here converts an unbounded reversal cost into a bounded one.
In plan mode Claude can read files and run shell commands to explore, and it writes a plan — but it does not edit your source. The thing people wrongly assume it suppresses is permission prompts: they “still apply the same as default mode,” so plan mode is not a quiet, prompt-free sandbox — it is a no-edit mode that still gates the actions it does allow. Read-only is the guarantee; silence is not.
(a) The session is now in acceptEdits — approving a plan exits plan mode and switches the session to the write mode the chosen approve option names, and Claude starts editing. The read-only guarantee is gone. (b) To plan again you must re-enter plan mode: cycle back with Shift+Tab, or prefix your next prompt with /plan. Approval is one-way; getting back to research is a deliberate re-entry, not an undo.
(a) Under opusplan, the planning phase runs on Opus (complex reasoning and architecture) and execution runs on Sonnet (code generation) — the switch is automatic at the plan→execute boundary. (b) No — opusplan does not give you a 1M planning window. The automatic 1M-context upgrade applies to the opus alias only, not opusplan, whose Opus plan phase runs at the standard 200K. For a ~400K planning context you would use opus[1m] (or pin a 1M model) for that phase instead.
Exam essentials
- Plan mode = read-only research — Claude reads, explores via shell, and writes a plan, but does not edit source; permission prompts still apply the same as default mode (it is no-edit, not prompt-free).
- “Direct execution” is not a mode — it is working in a write mode (
default/acceptEdits); plan’s contrast is the modes that let edits through. - Enter —
Shift+Tabcycle (default→acceptEdits→plan),/plan [task],--permission-mode plan, ordefaultModein settings. - Exit — approving a plan exits plan mode into the chosen write mode and Claude starts editing; to plan again, cycle back with
Shift+Tabor prefix/plan. opusplan— alias that runs Opus in plan mode, Sonnet in execution; set via/model opusplanor--model opusplan. Approval flips both the permission mode and the model. Its plan phase runs at 200K — the 1M upgrade isopus-only, notopusplan.- The decision — plan when reversal cost is high or the design space is uncertain (unfamiliar / multi-file / risky); go direct for small diffs in known code. Plan contains misunderstandings before edits.