Status line shows incorrect model name at startup (Opus instead of Sonnet)
Bug Description
When Claude Code starts up, the status line displays \"Opus 4.5\" even though the configured default model in ~/.claude/settings.json is set to \"model\": \"sonnet\".
Steps to Reproduce
- Configure
~/.claude/settings.jsonwith:
``json``
{
\"model\": \"sonnet\"
}
- Start Claude Code CLI
- Observe the status line
Expected Behavior
Status line should display \"Sonnet 4.5\" (or the configured model's display name)
Actual Behavior
Status line displays \"Opus 4.5\" on startup
Environment
- OS: Windows 10/11
- Platform: win32
- Custom status line: PowerShell script reading
$data.model.display_name
Additional Context
The status line script correctly reads $data.model.display_name from the JSON data Claude Code provides. The issue appears to be that Claude Code is sending incorrect model information in the JSON payload at startup, not respecting the configured default model setting in settings.json.
After running /model to manually switch to Sonnet, the correct model is used, but the status line initially shows the wrong model name on startup.
This issue has 4 comments on GitHub. Read the full discussion on GitHub ↗