[BUG] Clarify /model confirmation wording: max effort applies only to the current session

Status Fixed / completed
Reported on v2.1.288
Maintainer reply None cached
Activity 1 comment · opened Oct 4, 2026 · closed Oct 7, 2026

Preflight Checklist

  • [x] I have searched existing issues and this hasn't been reported yet
  • [x] This is a single bug report (please file separate reports for different bugs)
  • [x] I am using the latest version of Claude Code

What's Wrong?

This is a wording-only fix request; no change to effort persistence behavior is requested.

In the /model picker, the footer says Enter to set as default. Selecting Max effort and pressing Enter prints:

Set model to Opus 5.5 (default) and saved as your default for new sessions with max effort

The max effort level is not saved. settings.json gets no effort value, and new sessions start at the model's default (medium for Opus 5.5), not max.

Not saving max is by design. Per the maintainer reply in #35904, max is session-only and the effortLevel setting accepts only low / medium / high / xhigh. The /model confirmation contradicts that design: it tells the user their new-session default is max when it is not.

/effort already handles this correctly. /effort max reports (this session only).

What Should Happen?

The /model confirmation should say the effort was saved only when it actually was. For max, for example:

Set model to Opus 5.5 (default) and saved as your default for new sessions · max effort for this session only

Error Messages/Logs

# No error is shown. 2.1.288, fresh CLAUDE_CONFIG_DIR:

❯ /model        # Default (Opus 5.5) → → → Max effort → Enter
  ⎿ Set model to Opus 5.5 (default) and saved as your default for new sessions with max effort
# status bar in this session: "◈ max · /effort"

$ cat "$CLAUDE_CONFIG_DIR/settings.json"
{}

# New session with the same CLAUDE_CONFIG_DIR: status bar "◐ medium · /effort", /model shows "Medium effort"

# For comparison, /effort reports the same level correctly:
❯ /effort max
  ⎿ Set effort level to max (this session only): Maximum capability with deepest reasoning. ...

Steps to Reproduce

  1. export CLAUDE_CONFIG_DIR=$(mktemp -d), then run claude in an empty folder. Accept the first-run screens and the folder trust prompt. Login is not required to open /model.
  2. Run /model. The default model is selected and the picker shows Medium effort (default) ←/→ to adjust.
  3. Press → three times until it shows Max effort. The footer reads Enter to set as default · s to use this session only · Esc to cancel.
  4. Press Enter. The banner says Set model to Opus 5.5 (default) and saved as your default for new sessions with max effort.
  5. Run cat "$CLAUDE_CONFIG_DIR/settings.json". It prints {}.
  6. Quit and run claude again with the same CLAUDE_CONFIG_DIR. The status bar shows medium, not max.

Claude Model

Opus

Is this a regression?

I don't know

Last Working Version

_No response_

Claude Code Version

2.1.288 (Claude Code)

Platform

Anthropic API

Operating System

macOS

Terminal/Shell

Other

Additional Information

Screenshots (2.1.288, fresh CLAUDE_CONFIG_DIR; pty output rendered with xterm.js):

  1. /model with Max effort selected. Footer: Enter to set as default · s to use this session only · Esc to cancel
  2. After Enter: Set model to Opus 5.5 (default) and saved as your default for new sessions with max effort. Status bar: max · /effort
  3. New session with the same config. Status bar: medium · /effort

<img width="875" height="568" alt="Image" src="https://github.com/user-attachments/assets/50e68481-8b59-4900-bff1-8d70c6af4c79" />

<img width="875" height="568" alt="Image" src="https://github.com/user-attachments/assets/67bf5f7c-3120-417e-8388-21d1272c9c39" />

<img width="875" height="568" alt="Image" src="https://github.com/user-attachments/assets/1f8d8493-a692-47ec-8408-63d056a9906d" />

Likely cause: "saved as your default" appears to refer to the model only, and with max effort is appended to the same sentence whether or not the effort level was saved.

Not a duplicate of:

  • #35904 / #91859: whether max should persist. This report accepts the current design; only the /model confirmation is wrong.
  • #99212: the /model effort selector wrapping from Max to Low. A different bug in the same picker.

Environment notes:

  • macOS 26.5.1 (arm64), installed via Homebrew cask claude-code@latest, zsh.
  • 2.1.288 is the current Homebrew cask. npm has 2.1.289, but its changelog has no /model or effort changes.
  • First seen on 2.1.281 in a normal logged-in session: same banner, and ~/.claude/settings.json afterwards had "modelSettings": {"claude-opus-5-5": {"effortLevel": "medium"}}.
  • The clean repro above was not logged in and drove the TUI through a pseudo-terminal. The message itself does not depend on the terminal.

View original on GitHub ↗

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