[UX] /model picker always shows Opus as "Default (recommended)" regardless of configured model
Resolved 💬 3 comments Opened Feb 19, 2026 by zuharz Closed Feb 23, 2026
Summary
The /model picker labels Opus as Default (recommended) even when the user has explicitly configured a different model (e.g. "model": "sonnet" in ~/.claude/settings.json). This is misleading — it implies Opus is the active/preferred default when it isn't.
Steps to Reproduce
- Set
"model": "sonnet"in~/.claude/settings.json - Start a Claude Code session — Sonnet is correctly active (confirmed via
/status) - Open
/modelpicker - Observe: Opus is labeled
1. Default (recommended)with a description of "Most capable for complex work"; Sonnet is listed as option 2 with a checkmark showing it's the current model
Expected Behavior
The Default (recommended) label should either:
- Reflect the model configured in
settings.json, or - Be removed / renamed to something neutral like
Default (Opus)so it doesn't imply it is the user's configured default
Actual Behavior
Default (recommended) always points to Opus regardless of user configuration. Users naturally interpret "recommended" as "this is your configured default" and get confused about whether their settings.json setting is being respected.
Environment
- Claude Code version: latest
- OS: macOS 24.6.0
- Configured model:
"model": "sonnet"in~/.claude/settings.json - Active model:
claude-sonnet-4-6(correct) — but picker label is misleading
Related Issues
- #13242 —
settings.jsonmodel setting ignored on startup - #14919 — VS Code extension ignores model config
- #8467 — Incorrect model names in picker
- #12738 — Opus 4.5 missing from model picker
This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗