Plan Mode & Adaptive Thinking
Read-only exploration before any edit
- Enter plan mode three ways — Shift+Tab to cycle, --permission-mode plan, or /plan [description] — and explain why it's read-only
- Edit a proposed plan in an external editor with Ctrl+G before approving, instead of rubber-stamping it
- Exit plan mode cleanly with Shift+Tab twice and fit plan mode into the Explore → Plan → Implement → Commit workflow
- Explain the 2026 status of extended thinking: `ultrathink` still gives a one-off reasoning boost, the older tiered think/think-hard escalation was streamlined, and reasoning is adaptive in Opus/Sonnet 4.6+
- Decide when plan mode earns its overhead and when to skip it for trivial changes
Plan mode is Claude Code's read-only gear: it explores your codebase and proposes a plan without touching a single file, so you can review and edit before any edit happens. This lesson shows you how to enter it, shape the plan, approve it deliberately, and clears up the 2026 truth about extended thinking — `ultrathink` still works as a one-off deep-reasoning boost, while the older tiered think/think-hard escalation was streamlined as 4.6+ models reason adaptively.
- 1Plan mode is a read-only gear
- 2Three ways to enter plan mode
- 3Edit the plan before you approve it
- 4Exiting plan mode and the full loop
- 5Extended thinking in 2026: ultrathink still works, the tiers were streamlined
- 6When plan mode earns its overhead — and when to skip it
Plan mode is a read-only gear
Think of Claude Code as a car with a gear selector. Most of the time you're in default — Claude can read, but it asks before it edits a file or runs a command. acceptEdits is a faster gear: it auto-applies edits and only stops for riskier commands. Plan mode is the opposite of fast: it is a read-only gear. In plan mode Claude can explore your repository — open files, search code, trace how things connect — but it cannot edit anything, run mutating commands, or make changes. Its only output is a proposed plan for you to review.
That constraint is the whole point. The most expensive mistakes with an agentic tool happen when it confidently edits ten files in a direction you didn't intend. Plan mode moves that decision before any change exists: Claude does the research, lays out exactly what it intends to do, and hands you a stop-and-think moment. You read the plan, fix what's wrong, and only then let it act.
This maps onto Claude Code's recommended Explore → Plan → Implement → Commit workflow. Plan mode owns the first two phases — Explore (read files, gather context) and Plan (Claude drafts a detailed plan) — keeping research cleanly separated from execution. You approve, Claude drops back into an editing gear, and then it implements.
Key insight
Read-only is a feature, not a limitation
Plan mode can't edit, can't run mutating commands, can't create files. That is exactly why it's safe to let Claude loose on an unfamiliar codebase in plan mode — the worst it can do is read things and propose. You review the proposal before any of it becomes real.
Three ways to enter plan mode
There are three entry points, and they suit different moments.
| How | When to use it |
|---|---|
| Shift+Tab (cycle) | Mid-session, fastest. Press to cycle permission modes: default → acceptEdits → plan (and auto/bypass if enabled). Watch the mode indicator change. |
--permission-mode plan | At launch. Start the whole session read-only from the terminal — great for poking at an unfamiliar repo you don't want touched. |
/plan [description] | Mid-session, with intent. Jump straight into plan mode and optionally hand Claude the task in one go. |
All three land in the same read-only mode. Pick whichever fits: cycling with Shift+Tab is the muscle-memory default, --permission-mode plan is best when you want the session to begin safe, and /plan is handy when you already know the task you want planned.
# Start a session that's read-only from the first keystroke
claude --permission-mode plan# Or, already inside a session, jump in with a task
/plan refactor the auth middleware to use the new token helperShift+Tab is the same key you'll use to leave (more on that below). The permission mode you're in is always shown in the interface, so you're never guessing whether Claude can edit.
Tip
Shift+Tab cycles, it doesn't toggle
Shift+Tab steps through the modes in order — default → acceptEdits → plan. If you overshoot plan mode, keep pressing to wrap back around. On some configurations the cycle key is surfaced as Alt+M instead; the on-screen mode indicator is your source of truth.
Edit the plan before you approve it
Plan mode's payoff is the plan, and the most common beginner mistake is to skim it and hit approve. Don't rubber-stamp it. The plan is a draft you are meant to shape.
Press Ctrl+G (or Ctrl+X Ctrl+E) to open the proposed plan in your external text editor — your real $EDITOR, with full editing power. Tighten the scope, delete steps you don't want, add a constraint Claude missed, fix an assumption about your architecture. Save and close, and your edited version becomes the plan Claude executes.
This is where plan mode earns its keep. Claude's first draft is usually good but rarely perfect: it might plan to touch a file you'd rather leave alone, or pick an approach you have a reason to avoid. Editing the plan is far cheaper than letting Claude implement the wrong thing and then unwinding it.
When the plan reads the way you want, approve it deliberately. Approval is the moment Claude transitions from proposing to doing — treat it as a real decision, not a reflex.
Watch out
Don't blindly approve
Approving an unread plan throws away the entire safety benefit of plan mode — you've just let Claude edit on a plan you never checked. Read it. Use Ctrl+G to fix anything off. Then approve. The thirty seconds you spend here routinely saves an hour of cleanup.
Exiting plan mode and the full loop
To leave plan mode, press Shift+Tab twice. Because Shift+Tab cycles through modes, two presses from plan moves you out of read-only and back into an editing gear, where Claude can actually carry out the approved plan.
Put together, the round trip looks like this:
- Enter plan mode (Shift+Tab,
--permission-mode plan, or/plan). - Claude explores read-only and drafts a plan.
- You review and edit the plan with Ctrl+G.
- You approve the plan deliberately.
- Exit with Shift+Tab twice so Claude can implement.
- Verify and commit — let tests, a build, or a diff confirm the work.
That last step matters: Claude tends to stop when work looks done, so giving it a verifier (a test command, a build, a screenshot) lets it close its own loop instead of leaving you as the checker. Plan mode handles the front of the workflow; verification handles the back.
Example
A clean run, end to end
claude --permission-mode plan → ask for the change → Claude reads the relevant files and proposes a 5-step plan → Ctrl+G, you remove a step that touches the public API → save → approve → Shift+Tab twice → Claude implements and runs the test suite you pointed it at → green → you commit. Research, review, execution, and verification, each in its own lane.
Extended thinking in 2026: ultrathink still works, the tiers were streamlined
Here's the part that's changed and that a lot of older tutorials get wrong. For years, Claude Code had a tiered set of magic keywords you'd drop into a prompt to buy more reasoning budget — think, think hard, think harder, and ultrathink, in escalating order. They were a Claude Code prompt feature you typed inline.
ultrathink is still a current keyword — type it in a prompt for a one-off deep-reasoning boost when you want Claude to chew on something hard. What changed is the tiered escalation: with Opus and Sonnet 4.6+ reasoning adaptively (the model decides how much to reason based on the difficulty of the task), the older think / think hard / think harder ladder was streamlined — you rarely need to hand-tune reasoning depth, because a 4.6+ model already scales its own. So don't treat ultrathink as gone; treat the micro-managing of think tiers as no longer necessary.
There's also a manual toggle for turning extended thinking on or off explicitly — see the interactive-mode keyboard shortcuts in the docs for the current key. But for everyday work on 4.6+ models, the right mental model is: reach for ultrathink when you want an extra push, and otherwise let the model adapt on its own rather than sprinkling think-tier keywords.
| 2025 era | 2026 (Opus/Sonnet 4.6+) | |
|---|---|---|
Tiered think / think hard / think harder | Escalating reasoning ladder | Streamlined — model adapts depth on its own |
ultrathink | One-off deep-reasoning boost | Still works — same one-off boost |
| Default reasoning depth | You hand-tuned it with keywords | Adaptive — model auto-decides |
| Manual on/off | — | Toggle available (see interactive-mode docs) |
Tip
ultrathink still works — the tiers were streamlined
ultrathink is current: type it in a prompt for a one-off deep-reasoning boost. What faded is the tiered think / think hard / think harder ladder — on Opus/Sonnet 4.6+ reasoning is adaptive, so the model picks its own depth and you rarely need to hand-tune it. There's also a manual on/off toggle for extended thinking; check the interactive-mode docs for the current shortcut.
When plan mode earns its overhead — and when to skip it
Plan mode is not free. Reading, proposing, reviewing, and approving adds a round trip before any code is written. For the right tasks that's the best money you'll spend; for the wrong ones it's friction.
Use plan mode when the work is uncertain or far-reaching:
- Multi-file changes — refactors, renames that ripple, anything spanning modules.
- Unfamiliar code — a repo or area you don't know well, where you want to see Claude's understanding before it acts.
- High-stakes or ambiguous tasks — where a wrong approach is expensive to undo and you want to lock the direction first.
Skip plan mode for small, clear fixes:
- Fixing a typo, adding a log line, a one-file rename, a trivial tweak. Here the plan-and-approve dance costs more than the change itself — just let Claude do it in default mode.
The rule of thumb: the more uncertain or multi-file the work, the more plan mode pays off. The more trivial and obvious the change, the more it just gets in your way. Match the ceremony to the stakes.
Tip
Two gears, one habit
A simple working rhythm: default mode for small obvious edits, plan mode the moment a task feels multi-file, unfamiliar, or risky. Shift+Tab makes switching cheap — so switch.
Try it: Run one task through plan mode, end to end
Pick a small but non-trivial change in a repo you have handy — for example, "extract the duplicated date-formatting logic into a shared helper and update the two call sites." Then drive it entirely through plan mode:
- Enter plan mode by launching with
claude --permission-mode plan(or press Shift+Tab inside a session until the mode indicator readsplan). Confirm Claude is read-only. - Ask for the change and let Claude explore and produce a proposed plan. Read the whole thing.
- Edit the plan with Ctrl+G: change at least one thing — narrow the scope, remove a step, or add a constraint like "don't modify the public API." Save and close.
- Approve the edited plan deliberately.
- Exit plan mode with Shift+Tab twice, let Claude implement, and point it at a test or build command so it can verify its own work.
- Reflect: would this task have been faster without plan mode? Write one sentence on where the line sits between 'worth the overhead' and 'just do it.'
Bonus: on a hard sub-problem, try typing ultrathink in a prompt for a one-off deep-reasoning boost — it's still a current keyword. Notice you no longer need to climb the old think / think hard / think harder ladder, because a 4.6+ model already scales its reasoning adaptively. Reach for ultrathink when you want an extra push; otherwise let the model adapt. That's the 2026 mental model in one move.
Key takeaways
- 1Plan mode is a read-only gear: Claude explores and proposes but cannot edit files or run mutating commands until you approve.
- 2Enter plan mode three ways — Shift+Tab to cycle, --permission-mode plan at launch, or /plan [description] mid-session.
- 3Edit the proposed plan in an external editor with Ctrl+G before approving — don't blindly rubber-stamp it.
- 4Exit plan mode with Shift+Tab twice, which moves you back into an editing gear so Claude can implement the approved plan.
- 5`ultrathink` still works in 2026 for a one-off deep-reasoning boost; the older tiered think / think hard / think harder escalation was streamlined as Opus/Sonnet 4.6+ reason adaptively, with a manual on/off toggle in the interactive-mode docs.
- 6Plan mode adds overhead — use it for multi-file, unfamiliar, or high-stakes work and skip it for trivial changes.
Quiz
Lock in what you learned
Check your understanding
0 / 4 answered
1.What can Claude do while in plan mode?
2.You're in plan mode and Claude has proposed a plan, but it includes a step touching a file you'd rather leave untouched. What's the right move?
3.In 2026, on Opus/Sonnet 4.6+, what is the correct statement about extended thinking?
4.For which task is plan mode's overhead clearly worth it, versus better skipped?
Go deeper
Hand-picked sources to keep learning
Authoritative reference for default / acceptEdits / plan / auto / dontAsk / bypassPermissions, including plan mode's read-only behavior.
Covers the Explore → Plan → Implement → Commit workflow and when to lean on plan mode versus skip it.
Full keyboard-shortcut reference: Shift+Tab to cycle modes, Ctrl+G to edit the plan, and the current toggle for extended thinking.
Step-by-step workflows that show plan mode in the context of real multi-file tasks.
Authoritative reference for how extended thinking and keywords like ultrathink work in prompts, and how 4.6+ models reason adaptively.
Source repo, changelog, and issue tracker — useful for confirming version-gated features and current shortcuts.