[Bug] Plan mode doesn't auto-switch between Sonnet 4.5 and Haiku 4.5
Status Fixed / completed
Maintainer reply ✓ Yes — km-anthropic
Activity 7 comments · opened Oct 16, 2025 · closed Oct 17, 2025
💡 Likely answer: A maintainer (km-anthropic, contributor)
responded on this thread — see the highlighted reply below.
Bug Description
Plan mode doesn't auto-switch between Sonnet 4.5 and Haiku 4.5. When I set Haiku as default, entering plan mode should switch to Sonnet, then back to Haiku for execution. Instead, the model stays on Haiku the whole time. I have to manually /model sonnet and /model haiku to switch.
Environment Info
- Platform: darwin
- Terminal: vscode
- Version: 2.0.20
- Feedback ID: 088b5fed-6736-41f3-8396-ab644f0b9bdc
Errors
[{"error":"SyntaxError: Unexpected token '`', \"```json\n{\n\"... is not valid JSON\n at JSON.parse (<anonymous>)\n at file:///opt/homebrew/lib/node_modules/@anthropic-ai/claude-code/cli.js:62:719\n at Q (file:///opt/homebrew/lib/node_modules/@anthropic-ai/claude-code/cli.js:8:15093)\n at Bn2 (file:///opt/homebrew/lib/node_modules/@anthropic-ai/claude-code/cli.js:1056:20444)\n at process.processTicksAndRejections (node:internal/process/task_queues:105:5)","timestamp":"2025-10-16T22:31:02.604Z"},{"error":"SyntaxError: Unexpected token '`', \"```json\n{\n\"... is not valid JSON\n at JSON.parse (<anonymous>)\n at file:///opt/homebrew/lib/node_modules/@anthropic-ai/claude-code/cli.js:62:719\n at Q (file:///opt/homebrew/lib/node_modules/@anthropic-ai/claude-code/cli.js:8:15093)\n at Bn2 (file:///opt/homebrew/lib/node_modules/@anthropic-ai/claude-code/cli.js:1056:20444)\n at process.processTicksAndRejections (node:internal/process/task_queues:105:5)","timestamp":"2025-10-16T22:33:24.431Z"},{"error":"SyntaxError: Unexpected token '`', \"```json\n{\n\"... is not valid JSON\n at JSON.parse (<anonymous>)\n at file:///opt/homebrew/lib/node_modules/@anthropic-ai/claude-code/cli.js:62:719\n at Q (file:///opt/homebrew/lib/node_modules/@anthropic-ai/claude-code/cli.js:8:15093)\n at Bn2 (file:///opt/homebrew/lib/node_modules/@anthropic-ai/claude-code/cli.js:1056:20444)\n at process.processTicksAndRejections (node:internal/process/task_queues:105:5)","timestamp":"2025-10-16T22:35:56.520Z"},{"error":"SyntaxError: Unexpected token '`', \"```json\n{\n\"... is not valid JSON\n at JSON.parse (<anonymous>)\n at file:///opt/homebrew/lib/node_modules/@anthropic-ai/claude-code/cli.js:62:719\n at Q (file:///opt/homebrew/lib/node_modules/@anthropic-ai/claude-code/cli.js:8:15093)\n at Bn2 (file:///opt/homebrew/lib/node_modules/@anthropic-ai/claude-code/cli.js:1056:20444)\n at process.processTicksAndRejections (node:internal/process/task_queues:105:5)","timestamp":"2025-10-16T22:37:51.525Z"},{"error":"SyntaxError: Unexpected token '`', \"```json\n{\n\"... is not valid JSON\n at JSON.parse (<anonymous>)\n at file:///opt/homebrew/lib/node_modules/@anthropic-ai/claude-code/cli.js:62:719\n at Q (file:///opt/homebrew/lib/node_modules/@anthropic-ai/claude-code/cli.js:8:15093)\n at Bn2 (file:///opt/homebrew/lib/node_modules/@anthropic-ai/claude-code/cli.js:1056:20444)\n at process.processTicksAndRejections (node:internal/process/task_queues:105:5)","timestamp":"2025-10-16T22:40:30.601Z"},{"error":"SyntaxError: Unexpected token '`', \"```json\n{\"\"... is not valid JSON\n at JSON.parse (<anonymous>)\n at file:///opt/homebrew/lib/node_modules/@anthropic-ai/claude-code/cli.js:62:719\n at Q (file:///opt/homebrew/lib/node_modules/@anthropic-ai/claude-code/cli.js:8:15093)\n at Bn2 (file:///opt/homebrew/lib/node_modules/@anthropic-ai/claude-code/cli.js:1056:20444)\n at process.processTicksAndRejections (node:internal/process/task_queues:105:5)","timestamp":"2025-10-16T22:41:02.213Z"}]
7 Comments
Found 1 possible duplicate issue:
This issue will be automatically closed as a duplicate in 3 days.
🤖 Generated with Claude Code
hi, the current plan mode defaults to Sonnet on purpose (i.e. baking SonnetPlan as default given users liked OpusPlan). There's no straightforward way to bypass it, feel free to create another issue if it's really important to do so and please tag me!
@km-anthropic How to turn on SonnetPlan mode?
@km-anthropic
I'm not sure you understood OP. I'm having same issue as him. What happens:
Select a non-plan mode
choose Haiku 4.5
select plan mode
Expectation: auto switch to sonnet 4.5
Reality: still Haiku 4.5
@yslinear @ohcedar SonnetPlan should be default when you use the Haiku model. In plan mode it should sample Sonnet. In your test case when you're in plan mode, could you please select Haiku, send a simple message like "hi" and click ctrl+o? That'll show the exact model sampled
Working as expected. In my humble opinion it would be more clear if we use the old opus pattern where there was a third option for “code with sonnet plan with opus“ a similar pattern would be welcome here.
This issue has been automatically locked since it was closed and has not had any activity for 7 days. If you're experiencing a similar issue, please file a new issue and reference this one if it's relevant.