Status line model field not updated after /model switch

Resolved 💬 3 comments Opened Mar 13, 2026 by Humboldt94 Closed Mar 17, 2026

Description

The status line JSON input does not reflect model changes made via /model during a session. The model.id and model.display_name fields remain stale after switching.

Steps to reproduce

  1. Start a Claude Code session (e.g. on Sonnet 4.6)
  2. Configure a status line script that reads .model.display_name
  3. Run /model and switch to Opus 4.6
  4. Observe the status line still shows "Sonnet 4.6"

Actual behavior

After /model switch, the status line JSON still contains:

{
  "model": {
    "id": "claude-sonnet-4-6",
    "display_name": "Sonnet 4.6"
  },
  "context_window": {
    "context_window_size": 200000
  }
}

The context_window_size also remains at 200k (Sonnet) instead of updating to 1M (Opus).

Expected behavior

The model and context_window fields in the status line JSON input should update immediately after a /model switch.

Workaround

Starting a new session correctly reflects the model.

Environment

  • Claude Code version: 2.1.75
  • OS: macOS (Darwin 25.0.0)
  • Shell: zsh

View original on GitHub ↗

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