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

  1. Launch Claude Code.
  2. /model (or / → Switch model) → confirm Opus 4.8 selected.
  3. 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).
  4. Observe Opus 4.7 in the response.

Environment

  • Claude Code (VSCode extension)
  • Opus 4.8 (1M context) selected via UI
  • Linux / Gentoo (OpenRC)

View original on GitHub ↗

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