ExitPlanMode tool missing after Plan Mode activation (auto mode, no skip-perm)

Resolved 💬 2 comments Opened Apr 17, 2026 by SML1988 Closed May 25, 2026

Bug Report: ExitPlanMode tool missing after plan mode activation

Date: 2026-04-17
Claude Code version: 2.1.112 (or whatever ships with Opus 4.7 release)
Model: claude-opus-4-7[1m]
Platform: Windows 11, bash shell via Claude Code

Summary

When Plan Mode is activated, the ExitPlanMode tool is not registered/callable, making it impossible to end plan mode the documented way ("At the very end of your turn... you should always call ExitPlanMode").

Reproduction

  1. Launch Claude Code with --channels plugin:telegram@claude-plugins-official in auto mode (no --dangerously-skip-permissions).
  2. Enter plan mode (system-reminder confirms "Plan mode is active").
  3. Write a plan file to C:/Users/sigmu/.claude/plans/<name>.md.
  4. Attempt to call ExitPlanMode via tool use — not in initial tool list.
  5. Attempt ToolSearch with query select:ExitPlanMode — returns "No matching deferred tools found".
  6. Attempt ToolSearch with fulltext "exit plan mode" — returns ExitWorktree and others, but not ExitPlanMode.

Expected

ExitPlanMode should be in the initial tool set (or discoverable via ToolSearch) whenever Plan Mode is active, as documented in the plan workflow system-reminder.

Actual

Tool is completely absent. Only workaround is manual exit (Shift+Tab, /plan slash command, or Alt+M), or the user emitting an explicit "Exited Plan Mode" system-reminder.

Context / History

  • Previous session (2026-04-17, earlier today) identified a three-way conflict between --dangerously-skip-permissions, auto mode, and plan mode, also causing ExitPlanMode registration issues.
  • Fix attempted: removed --dangerously-skip-permissions from shortcut (Claude Research.bat).
  • Current session: bug persists even without --dangerously-skip-permissions. Only auto mode + plan mode.

Environment

  • Shortcut: cmd /c claude --channels plugin:telegram@claude-plugins-official
  • Auto mode: active
  • Skip-permissions: NOT active
  • Plan mode: active at issue time

Impact

Low-medium. Workarounds exist, but the documented flow ("end turn with ExitPlanMode or AskUserQuestion") cannot be followed. Forces reliance on user-initiated plan-mode exit.

Suggested fix

Ensure ExitPlanMode tool definition is loaded whenever planMode === true in session state, independent of auto mode or channel configuration.

View original on GitHub ↗

This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗