Setting to make /model selection session-only (modelPerSessionOptIn), mirroring fastModePerSessionOptIn

Status Open
Maintainer reply None cached
Activity 0 comments · opened Aug 31, 2026

Feature request

A setting to make /model selection session-only — e.g. modelPerSessionOptIn — mirroring the existing fastModePerSessionOptIn.

Current behavior

Running /model <name> in a session both switches the live session and saves that model as the user default for new sessions (model in ~/.claude/settings.json):

> /model
Set model to Fable 5 and saved as your default for new sessions

Problem

When many sessions run concurrently (multi-agent setups, one operator driving a fleet), switching one session's model silently rewrites the default for every future session. The operator usually means "this session, this model" — the persistence is a side effect they discover later when unrelated sessions come up on the wrong model.

Fast mode already solves exactly this with fastModePerSessionOptIn ("fast mode does not persist across sessions"). Model selection has no equivalent: I read the current settings schema and found model, fallbackModel, availableModels, enforceAvailableModels, modelOverrides — nothing that scopes /model to the session.

Workarounds today (all partial)

  • Pin model in a project's .claude/settings.json — protects that project only.
  • Launch with claude --model <name> — the flag doesn't persist, but only helps at launch, not mid-session.
  • Manually revert ~/.claude/settings.json after each /model.

Proposal

{ "modelPerSessionOptIn": true }

When set, /model changes the live session only and never writes the model key; the saved default changes only by editing settings directly (or perhaps an explicit /model <name> --default).

---
🤖 Filed with Claude Code

View original on GitHub ↗