[BUG] Desktop/Cowork: model selection reverts to Fable 5 in an existing session until the app is restarted (silent extra-credit spend)
Status Open
Reported on v2.1.229
Maintainer reply None cached
Activity 1 comment · opened Aug 17, 2026
Preflight Checklist
- [x] I am using the latest version (Claude Desktop 1.30096.5, bundled claude-code 2.1.229)
- [x] I searched existing issues. Closest matches are #73881 (mid-session switch not applied — UI shows B, session runs A) and #66266 (effort/model selection reverts when switching chats). Neither describes this one: here the selector itself visibly jumps back, and a full app restart is what fixes it.
- [x] Single bug report
What's Wrong?
Environment
- Claude Desktop 1.30096.5 (macOS 26.6.1, Darwin 25G76), Cowork
- Plan: Pro
- Models involved:
claude-fable-5/claude-fable-5[1m]→ Opus
Summary
A long-running Cowork session had Fable 5 selected weeks ago. Changing the model on that session to Opus does not stick — the selector reverts to Fable 5 again, repeatedly, for as long as the app keeps running. After a full restart of Claude Desktop the same change persists.
This is a cost bug, not a cosmetic one. On a Pro plan Fable 5 is billed against extra usage credits regardless of how much normal session capacity is left, so every turn in that session kept spending extra credits while the 5-hour window was nearly empty — and the user's attempt to move off Fable was silently undone.
Evidence from disk
- The per-session model lives in the desktop app's Local Storage under
cowork-sticky-model-selector-<sessionId>(observed valueclaude-fable-5[1m]), plus amodel-selector-thinking:<orgId>:chat:claude-fable-5entry with effortmax. The pin is per session, so a session created while Fable was selected stays on Fable indefinitely — nothing in the UI flags that this session bills differently from the others.
~/Library/Application Support/Claude/plan-usage-history.jsonshows extra usage (xu) rising while the 5-hour window (fh) was far from exhausted:
2026-08-12 22:05 xu 45.66 -> 46.74 fh=6 sd=63
2026-08-13 09:15 xu 62.59 -> 69.15 fh=0 sd=65
2026-08-13 21:15 xu 69.15 -> 70.53 fh=6 sd=65
2026-08-16 23:40 xu 80.16 -> 85.09 fh=27 sd=58
- The 09:15 jump on 2026-08-13 correlates with a local agent-mode session that ran 08:00–09:41 with
"model": "claude-fable-5"— while the same daily scheduled task ran onclaude-opus-5on every other day of that week. Scheduled tasks inherit the model from this state, so a background task can silently run on a credit-billed model.
Steps to Reproduce
- In Claude Desktop, open a Cowork session and select Fable 5 for it.
- Return to that session later (days or weeks — the pin survives).
- Open the model selector and switch it to Opus.
- Observed: the selection reverts to Fable 5. Repeating the change does not help; turns continue to bill extra usage credits.
- Quit and relaunch Claude Desktop, then change the model again — now it persists.
What Should Happen?
- A model change in an existing session takes effect and persists without restarting the app. If the client cannot apply it to a running session, it should say so explicitly rather than silently snapping back.
- The sticky per-session pin should be visible: when a session is pinned to a model that bills extra usage credits, that ought to be surfaced in the session and in any scheduled task inheriting it — the current behaviour is indistinguishable from normal plan usage until the credit balance is checked days later.
Additional Info
- Also affects Cowork scheduled tasks, which inherit the selected model. In this account a 30-minute scheduled task ran 140 times on
claude-fable-5over one week purely because that was the model selected at the time. - Related: #73881, #66266, #75272.
This issue has 1 comment on GitHub. Read the full discussion on GitHub ↗