Model self-identification stale: UI selects Opus 4.8, system prompt still says Opus 4.7
Resolved 💬 2 comments Opened Jun 2, 2026 by karel-un Closed Jun 6, 2026
In Claude Code 2.x with Switch model → Opus 4.8 (1M context) selected, the harness still injects a system-prompt line that reads You are powered by the model named Opus 4.7. The exact model ID is claude-opus-4-7. into every session.
Visible consequences:
- When asked "which model are you?", the model confidently answers Opus 4.7.
- When the model writes a Co-Authored-By trailer on a git commit, it uses
Claude Opus 4.7 <noreply@anthropic.com>even though 4.8 weights are actually serving the request. - The model in good faith disputes the user's own UI evidence ("yes I'm sure I'm 4.7"), since the system prompt is the only identity signal the model has.
Expected: the harness should template the correct model name + model ID into the system prompt based on the currently-selected model. The 4.7 string is hardcoded somewhere in the prompt template and didn't get updated when 4.8 shipped.
Reproduction
- Launch Claude Code.
/model(or/→ Switch model) → confirm Opus 4.8 selected.- Ask any question that triggers self-identification (e.g. "what model are you?", or have it write a git commit with the Co-Authored-By trailer it normally appends).
- Observe Opus 4.7 in the response.
Environment
- Claude Code (VSCode extension)
- Opus 4.8 (1M context) selected via UI
- Linux / Gentoo (OpenRC)
This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗