Scheduled/desktop tasks stop firing once a manual session is active
Summary
Scheduled (desktop) tasks configured via the scheduled-tasks mechanism (cron expressions, e.g. 0 12 * * *) stop firing autonomously once another Claude Code session is already active/open, even though the documentation states scheduled tasks should run "independent of any manual sessions you have open".
Observed pattern
On one occasion, two scheduled tasks fired normally at their scheduled times (12:02 and 12:06) while no other session was active. From the moment a third session became active (12:12) until midnight — over 12 hours — no further scheduled task fired at all, including:
- multiple daily cron tasks
- a one-time
fireAttask
So this affects both cronExpression and fireAt scheduled tasks, and is not limited to one specific task definition.
On a separate occasion, scheduled tasks eventually did fire, but with growing delays through the day as more sessions queued/overlapped (e.g. a task scheduled for ~12:30 actually starting at ~13:05, a task scheduled for ~12:54 actually starting at ~14:11), consistent with contention against already-active sessions rather than a hard cron miss.
Expected behavior
Per the documentation, scheduled tasks should start at their scheduled time regardless of whether a manual session is already open, without requiring the user to close or wait out other active sessions.
Additional note
The built-in "skipped run" reasons currently surfaced to users (computer asleep, previous run still in progress, another scheduled task running) do not include "a manual session is active" as a stated reason, even though that appears to be what is actually happening — so users have no visibility into why a task didn't fire.
Environment
- Windows 11
- Claude Code desktop app with scheduled tasks (cron-based)