Harness Engineering · ~7 min
Fixing a plan costs minutes. Fixing an implementation costs context, tokens, and git reverts. A read-only phase makes the agent prove it understands before it can change a thing.
Plan Mode is a permission mode that blocks every file write and state-changing command. The agent can read, search, and analyze — but cannot modify. That forces a clean split between understanding and implementation, catching wrong approaches before they produce wrong code.
The mechanism is just a constraint: read-only forces the agent to ask questions and propose steps rather than execute them. You review, correct, and approve — then switch to implementation. It's a permission boundary (Lesson 5) repurposed as a thinking discipline.
Tool-specific Plan Mode and the tool-agnostic plan-first loop are the same shape:
| Phase | What happens | Mode |
|---|---|---|
| Explore | Agent reads the codebase, maps relevant files and dependencies | Plan (read-only) |
| Plan | Agent proposes step-by-step approach; you review and edit it | Plan (read-only) |
| Implement | Agent executes against the approved plan | Normal |
| Verify | Run tests, review the diff, check for regressions | — |
OpenAI's Sora Android team hit this directly: implementation-first prompts produced code that was functional but architecturally inconsistent; shifting to a plan-first loop gave them confidence in the direction before implementation began — like a design document giving a tech lead confidence in a project. Before approving a plan, check it identified the right files, matches existing patterns, has no scope creep, and accounts for tests.
Plan Mode is investment; it pays off unevenly.
Use it for multi-file changes with cross-file dependencies, unfamiliar codebases where wrong assumptions are likely, tasks with several valid approaches you want to choose between, and refactors that need explicit scope boundaries. Skip it for single-file well-defined changes ("add a null check to line 42"), tasks where the path is obvious from context, and quick fixes where planning overhead exceeds the cost of a bad attempt.
Telling an agent to skip planning on a multi-file feature yields code that compiles but misses architectural intent — it picks the first viable approach, which may conflict with existing patterns, miss shared utilities, or duplicate code. The rework exceeds what a 30-second plan review would have cost. The flip side is real too: forcing a plan onto a one-line change is pure overhead. Match the ceremony to the stakes.
Retrieval practice — recall, don't peek
Question 1Plan Mode works by restricting the agent to…
Question 2The core economic argument for planning first is that…
Question 3The best opening move of a plan-first loop is to…
Question 4Plan Mode is best skipped for…
Question 5 · spaced recall from Lesson 09In the commands/agents split, the workflow steps belong in the…