[Bug] ExitPlanMode tool missing from Opus 4.6 1M context deferred registry

Resolved 💬 3 comments Opened Apr 8, 2026 by pierreoosthuizen Closed Apr 12, 2026

Bug Description
Bug: ExitPlanMode tool missing from registry in Opus 4.6 1M context sessions

Environment:

  • Model: claude-opus-4-6 (1M context window)
  • Platform: macOS (darwin)
  • Claude Code CLI v2.1.92

Symptom:
In a session where plan mode was activated via the system reminder ("Plan mode is active — you MUST call ExitPlanMode at the end of your turn"), calling ExitPlanMode returns Error: No such tool available: ExitPlanMode.

ToolSearch with query "ExitPlanMode plan exit" (max_results=3) returned only ExitWorktree, mcp__claude-in-chrome__update_plan, and EnterWorktree. ToolSearch with query "select:ExitPlanMode" (direct name lookup) returned "No matching deferred tools found".

Root cause: ExitPlanMode is completely absent from the deferred tool registry for the session. It is not mis-ranked — it simply does not exist in the tool surface.

Impact: The plan mode system reminder explicitly instructs the model to call ExitPlanMode, but the tool is unavailable. The model cannot programmatically exit plan mode and must fall back to a plain-text workaround and wait for user verbal approval.

Note: This issue does not reproduce in standard Sonnet sessions — ExitPlanMode appears in the deferred tool list and loads correctly. The bug appears specific to the Opus 4.6 1M context configuration.

---

Environment Info

  • Platform: darwin
  • Terminal: Apple_Terminal
  • Version: 2.1.92
  • Feedback ID: 29ba481d-91b9-4709-9593-e07c3f4b441d

Errors

[{"error":"Error: Tool mcp__claude-peers__check_messages not found\n    at I9K (file:///opt/homebrew/lib/node_modules/@anthropic-ai/claude-code/cli.js:2214:30247)\n    at Fz (file:///opt/homebrew/lib/node_modules/@anthropic-ai/claude-code/cli.js:553:20978)\n    at SY (file:///opt/homebrew/lib/node_modules/@anthropic-ai/claude-code/cli.js:553:39515)\n    at QW (file:///opt/homebrew/lib/node_modules/@anthropic-ai/claude-code/cli.js:553:50208)\n    at bx6 (file:///opt/homebrew/lib/node_modules/@anthropic-ai/claude-code/cli.js:553:86881)\n    at Sx6 (file:///opt/homebrew/lib/node_modules/@anthropic-ai/claude-code/cli.js:553:85842)\n    at R96 (file:///opt/homebrew/lib/node_modules/@anthropic-ai/claude-code/cli.js:553:85663)\n    at t38 (file:///opt/homebrew/lib/node_modules/@anthropic-ai/claude-code/cli.js:553:82031)\n    at C6 (file:///opt/homebrew/lib/node_modules/@anthropic-ai/claude-code/cli.js:553:6358)\n    at Immediate.Mh1 [as _onImmediate] (file:///opt/homebrew/lib/node_modules/@anthropic-ai/claude-code/cli.js:546:5822)","timestamp":"2026-04-08T05:33:52.346Z"},{"error":"Error: Tool mcp__claude-peers__set_summary not found\n    at I9K (file:///opt/homebrew/lib/node_modules/@anthropic-ai/claude-code/cli.js:2214:30247)\n    at Fz (file:///opt/homebrew/lib/node_modules/@anthropic-ai/claude-code/cli.js:553:20978)\n    at SY (file:///opt/homebrew/lib/node_modules/@anthropic-ai/claude-code/cli.js:553:39515)\n    at QW (file:///opt/homebrew/lib/node_modules/@anthropic-ai/claude-code/cli.js:553:50208)\n    at bx6 (file:///opt/homebrew/lib/node_modules/@anthropic-ai/claude-code/cli.js:553:86881)\n    at Sx6 (file:///opt/homebrew/lib/node_modules/@anthropic-ai/claude-code/cli.js:553:85842)\n    at R96 (file:///opt/homebrew/lib/node_modules/@anthropic-ai/claude-code/cli.js:553:85663)\n    at t38 (file:///opt/homebrew/lib/node_modules/@anthropic-ai/claude-code/cli.js:553:82031)\n    at C6 (file:///opt/homebrew/lib/node_modules/@anthropic-ai/claude-code/cli.js:553:6358)\n    at Immediate.Mh1 [as _onImmediate] (file:///opt/homebrew/lib/node_modules/@anthropic-ai/claude-code/cli.js:546:5822)","timestamp":"2026-04-08T05:33:52.346Z"},{"error":"Error: Tool mcp__claude-peers__check_messages not found\n    at I9K (file:///opt/homebrew/lib/node_modules/@anthropic-ai/claude-code/cli.js:2214:30247)\n    at Fz (file:///opt/homebrew/lib/node_modules/@anthropic-ai/claude-code/cli.js:553:20978)\n    at SY (file:///opt/homebrew/lib/node_modules/@anthropic-ai/claude-code/cli.js:553:39515)\n    at QW (file:///opt/homebrew/lib/node_modules/@anthropic-ai/claude-code/cli.js:553:50208)\n    at bx6 (file:///opt/homebrew/lib/node_modules/@anthropic-ai/claude-code/cli.js:553:86881)\n    at Sx6 (file:///opt/homebrew/lib/node_modules/@anthropic-ai/claude-code/cli.js:553:85842)\n    at R96 (file:///opt/homebrew/lib/node_modules/@anthropic-ai/claude-code/cli.js:553:85663)\n    at t38 (file:///opt/homebrew/lib/node_modules/@anthropic-ai/claude-code/cli.js:553:82031)\n    at x6 (file:///opt/homebrew/lib/node_modules/@anthropic-ai/claude-code/cli.js:553:6480)\n    at T6 (file:///opt/homebrew/lib/node_modules/@anthropic-ai/claude-code/cli.js:553:4964)","timestamp":"2026-04-08T07:45:12.938Z"},{"error":"Error: Tool mcp__claude-peers__set_summary not found\n    at I9K (file:///opt/homebrew/lib/node_modules/@anthropic-ai/claude-code/cli.js:2214:30247)\n    at Fz (file:///opt/homebrew/lib…

Note: Content was truncated.

View original on GitHub ↗

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