[BUG] Desktop app scheduled/background sessions default to Opus despite Sonnet marked as Default (regression of #53739)
Preflight Checklist
- [x] I have searched existing issues and this hasn't been reported yet as an open issue (closest match is #53739, closed 2026-05-30, but that issue is now locked and this reproduces on a current build, so filing as a likely regression)
- [x] This is a single bug report
- [x] I am using the latest version of Claude Code
What's Wrong?
Scheduled/background sessions (both CronCreate-style recurring jobs and the persistent scheduled-tasks skill) consistently start on Opus 5 (1M context), even though the app's own model picker shows "Sonnet 5" labeled as "Default".
Confirmed today (2026-09-18) across several independent recurring tasks:
- A brand-new scheduled task, on its very first-ever run, started on Opus 5 despite no prior session for that task ever existing (so this isn't "reverting" to a stale setting — it's the initial default itself being wrong).
- Several other recurring scheduled tasks (a 4-hourly one, a daily one) show the same Opus 5 default across multiple historical firings, going back at least 2 days.
- The model picker UI shows "Sonnet 5" with a "Default" badge next to it, which does not match what scheduled sessions actually spawn with.
- Manually switching a running session's model to a cheaper one does not prevent the next scheduled firing of that same task from reverting to Opus 5, since each firing spawns a brand-new session rather than reusing the corrected one.
This looks like the same root cause as #53739 (desktop app ignoring the configured/displayed default model for new sessions), but scoped specifically to scheduled/background session spawning rather than interactive "New session" clicks, and that issue is closed+locked so I can't comment there.
What Should Happen?
New scheduled/background sessions should start on whatever model is actually shown as "Default" in the model picker, and ideally there should be a way to pin a specific (cheaper) model per scheduled task, since these often don't need Opus-level capability for simple, repeated jobs.
Steps to Reproduce
- Set a cheaper model (e.g. Sonnet or Haiku) via the model picker in a normal chat session.
- Create a recurring scheduled task (via the scheduled-tasks feature).
- Let it fire automatically (don't manually start it).
- Check the model the spawned session actually used — it is Opus regardless of step 1.
Platform
Anthropic API
Operating System
Windows
Additional Information
This is a real, ongoing cost problem for anyone relying on scheduled/automated sessions (not just interactive chat) — there is currently no way to reliably keep recurring background sessions on a cheaper model. Happy to share specific session IDs/timestamps if useful for debugging (not included here to avoid pasting internal account data).
This issue has 1 comment on GitHub. Read the full discussion on GitHub ↗