ADR-0103: The plan tool is offered in every mode
- Status: Accepted
- Date: 2026-09-11
- Deciders: jka
- Decision: D103
Context
In the first live test the maintainer asked, in plain words, for a plan while the pane was
in Review. ADR-0101 withheld present_plan outside plan mode, so the model wrote a text
file called plans/lorem_ipsum_plan.txt instead. The feature was never entered and the UI
gave no hint why.
Decision
present_plan is available in every mode. Plan mode withholds only tools that change
something. The tool's description tells the model when to use it: when the user asks, or
before a large, ambiguous or hard-to-reverse change; not for a small obvious fix.
Approving a plan leaves plan mode, and emits agent.mode, only if the mode was plan. The
approval result has two wordings accordingly.
Consequences
- Asking for a plan works in any mode, matching the VS Code Claude extension.
- Plan mode's guarantee is unchanged: it makes editing impossible until a plan is approved. Making a plan possible and making editing impossible are separate guarantees.
- A plan presented outside plan mode is still gated and never auto-accepted.