[BUG] Desktop app: effort menu shows the old settings.json level until the session's next turn

Status Open
Reported on v2.1.286
Maintainer reply None cached
Activity 0 comments · opened 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?

In the Code tab, a session with no effort picked in its menu follows the level in ~/.claude/settings.json. When that setting changes, the session's menu keeps showing the old level, while its next turn already runs at the new one. Opening the session doesn't update the menu, only a turn does.

This morning I lowered Opus 5.5's effort (modelSettings.claude-opus-5-5.effortLevel) from xhigh to high. Two sessions I hadn't used since showed "Extra" when I opened them. After I sent a message in one of them, its menu switched to "High", and the transcript shows what the turns really ran at: "effort":"xhigh" on every assistant row before, "effort":"high" on the new turn's.

So until a session runs a turn, its menu can promise more effort than the turn gets. #89080 reports the same symptom in the VS Code extension, where the author also suspected a settings.json change.

What Should Happen?

The menu shows the level the next turn will run at.

Error Messages/Logs

2026-10-05T20:17:42Z  last assistant row before the change  version 2.1.286  effort xhigh
2026-10-07T09:34:35Z  first assistant row after it          version 2.1.289  effort high

Steps to Reproduce

  1. Set "modelSettings": {"claude-opus-5-5": {"effortLevel": "xhigh"}} in ~/.claude/settings.json
  2. In the Code tab, send a message in an Opus 5.5 session that follows the setting ("effortInherited": true in its record under ~/Library/Application Support/Claude/claude-code-sessions/). Its menu shows "Extra"
  3. Change the setting to "effortLevel": "high"
  4. Without relaunching the app, open the session again. Its menu still shows "Extra"
  5. Send a message. The menu switches to "High", and the new assistant rows in ~/.claude/projects/<project>/<session>.jsonl carry "effort":"high"

Claude Model

Opus

Is this a regression?

I don't know

Last Working Version

_No response_

Claude Code Version

2.1.289 (bundled with Claude Desktop 2.26454.0)

Platform

Anthropic API

Operating System

macOS

Terminal/Shell

Other

Additional Information

Claude Desktop 2.26454.0, macOS 26.5.1.

The record keeps the level a session inherited, and only a turn updates it. After its turn, the session above has "effort": "high", "effortInherited": true. Here 42 Opus 5.5 sessions that haven't run since the change still have "effort": "xhigh", and the five that have run since have high.

Picking a level in a session's menu fixes that session, since it then has its own level.

View original on GitHub ↗