[BUG] `--model` flag silently ignored in interactive sessions (works in `--print` only)

Resolved 💬 1 comment Opened May 28, 2026 by rodrigo-rac2 Closed Jun 30, 2026

Environment

  • Claude Code v2.1.153 (native install)
  • macOS Darwin 25.5.0 (zsh)
  • Plan: Claude Team

Description

The --model <model> flag — documented as "Model for the current session" — is honored in --print (non-interactive) mode but silently ignored in interactive mode. The interactive session falls back to the user's default model regardless of what is passed.

Reproduction

# Non-interactive: --model is honored
$ claude --model 'claude-opus-4-6[1m]' --print "What is your exact model ID per your system prompt?"
claude-opus-4-6[1m]

# Interactive: --model is ignored, falls back to default
$ claude --model 'claude-opus-4-6[1m]'
# Banner shows: "Opus 4.7 (1M context) · Claude Team"
> What is your exact model ID per your system prompt?
> claude-opus-4-7[1m]

/model inside the interactive session also reports the default ("Kept model as Opus 4.7 (1M context) (default)"), confirming the --model arg never takes effect.

Expected

--model should set the model for the current interactive session, matching the documented help text and the behavior in --print mode.

Actual

Interactive sessions silently ignore --model and use the user's default model.

Impact

There is no way to launch an interactive session on a non-default model (e.g., Opus 4.6) without changing the global default first. The /model picker also no longer lists older models like Opus 4.6, so --model is the only documented route — and it doesn't work interactively.

Workaround

None for interactive use. --print mode honors --model correctly.

View original on GitHub ↗

This issue has 1 comment on GitHub. Read the full discussion on GitHub ↗