ExitPlanMode proceeds without waiting for user to select execution mode
Bug Description
After ExitPlanMode completes, the model presents a "How would you like to proceed?" prompt with options (auto-accept edits / manually approve edits / type feedback), but the turn has already finished — the user's next input goes to a new turn rather than being interpreted as a selection from that menu. The selection prompt is purely cosmetic since the model already exited plan mode and proceeded in the same turn.
Expected Behavior
The user should be able to choose between auto-accept edits, manual approval, or providing feedback before execution begins.
Steps to Reproduce
- Enter plan mode (model calls
EnterPlanMode) - Model explores codebase and writes a plan file
- Model calls
ExitPlanMode ExitPlanModereturns "User has approved exiting plan mode. You can now proceed."- Model outputs the selection prompt in the same turn — but the turn is already complete
- User's next input is treated as a new message, not a selection from the prompt
Screenshot
The screenshot below shows the selection prompt rendered at the end of the turn, followed by "Crunched for 7m 22s" — indicating the model had already finished its turn. The user never got a chance to select an option.
<img width="625" height="232" alt="Image" src="https://github.com/user-attachments/assets/b2d12a42-2c12-48b5-9b1b-2278898379c4" />
Environment
- Claude Code CLI (v2.1.109)
- Model: claude-opus-4-6 (1M context)
- macOS Darwin 25.4.0
Additional Context
The ExitPlanMode tool itself works correctly — it exits plan mode. The issue is that there's no mechanism for the model to pause mid-turn and wait for user input after presenting execution mode options. The CLAUDE.md instruction to present the selection prompt creates a dead-end UX where the prompt renders but can't actually be interacted with.
This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗