anthropics / anthropics/claude-code
[BUG] Cowork crashes on every session with "Scheduled tasks not initialized" (100% reproducible)
- 主要语言
- Python
- 星标
- 145k
- 派生
- 23.1k
- PR 合并指标
- PR 指标待抓取
描述
### Preflight Checklist
- [x] I have searched [existing issues](https://github.com/anthropics/claude-code/issues?q=is%3Aissue%20state%3Aopen%20label%3Abug) 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?
Actual behavior
Any Cowork session — including a bare "Hi" with no attachments, tools, or scheduling involved — crashes immediately with Error: Scheduled tasks not initialized thrown from CoworkScheduledTasks.getAllScheduledTasks. This is 100% reproducible, has never worked on this machine, and is isolated to Cowork specifically (regular Claude Desktop chat mode works fine).
### What Should Happen?
Cowork session starts normally and processes the message.
### Error Messages/Logs
```shell
Error trace (captured via Claude launched from Terminal)
Error occurred in handler for '$eipc_message$_..._$_claude.web_$_CoworkScheduledTasks_$_getAllScheduledTasks': Error: Scheduled tasks not initialized
at Object.getAllScheduledTasks (/Applications/Claude.app/Contents/Resources/app.asar/.vite/build/index.chunk-CMJVFTis.js:13:4032090)
at Proxy.s (/Applications/Claude.app/Contents/Resources/app.asar/.vite/build/index.chunk-CMJVFTis.js:13:1937121)
at async l (/Applications/Claude.app/Contents/Resources/app.asar/.vite/build/index.chunk-CMJVFTis.js:7:204773)
at async Session. (node:electron/js2c/browser_init:2:118168)
Reproduced again after a full reinstall, on a **different build** (index.chunk-6ly5IEOz.js), with an identical error signature and call chain shape — only the byte offsets shifted, consistent with a recompiled build rather than a different bug:
Error occurred in handler for '$eipc_message$_..._$_claude.web_$_CoworkScheduledTasks_$_getAllScheduledTasks': Error: Scheduled tasks not initialized
at Object.getAllScheduledTasks (/Applications/Claude.app/Contents/Resources/app.asar/.vite/build/index.chunk-6ly5IEOz.js:13:4132609)
at Proxy.s (/Applications/Claude.app/Contents/Resources/app.asar/.vite/build/index.chunk-6ly5IEOz.js:13:1964140)
at async l (/Applications/Claude.app/Contents/Resources/app.asar/.vite/build/index.chunk-6ly5IEOz.js:7:70897)
at async Session. (node:electron/js2c/browser_init:2:123634)
A separate, likely-unrelated IPC warning also fires each time (no handler registered for a Bluetooth-related transport):
Error occurred in handler for '$eipc_message$_..._$_claude.buddy_$_BuddyBleTransport_$_reportState': Error: No handler registered for '...BuddyBleTransport_$_reportState'
Likely-related finding: `disclaimer` helper process crashing on every session bootstrap
Sentry breadcrumbs (scope_v3.json) show the /Applications/Claude.app/Contents/Helpers/disclaimer helper process spawning and immediately dying — five separate times in one session — each occurrence clustered right after Cowork's session-bootstrap network calls (cowork_sysprompt_map, policy_limits, plugins/enabled-state, memory, syncs, docs — all of which return 200 OK, so this is not a backend/network/auth issue):
```
{"category":"child_process","message":"Child process exited with code '143'","data":{"spawnfile":"/Applications/Claude.app/Contents/Helpers/disclaimer"}}
{"category":"child_process","message":"Child process exited with code '1'","data":{"spawnfile":"/Applications/Claude.app/Contents/Helpers/disclaimer"}}
```
This pattern repeats identically on every session bootstrap attempt in the trail. Given the timing (helper dies immediately after each Cowork re-bootstrap, right alongside the scheduler error), this looks like a plausible root cause rather than a coincidence.
Follow-up: ran the helper directly to inspect it —
$ cd "/Applications/Claude.app/Contents/Helpers/"
$ ./disclaimer
Usage: disclaimer [--pgroup | --ports-only] [--] [args...]
exit code: 1
disclaimer is a wrapper/launcher, not a standalone service — it takes a argument and (per its --ports-only/--pgroup flags) appears to declare sandboxing/port entitlements for whatever it launches, then execs it. This means the exit-code-1 entries in the breadcrumbs are not disclaimer itself crashing — they're consistent with disclaimer being invoked without a valid argument (or with a target command that fails to resolve), which trips its own usage-error path.
If that read is right, the actual bug is one level deeper: something in Cowork's session-bootstrap is invoking disclaimer to launch a child process (plausibly the scheduler-init service, or a sandboxed agent/VM process), and that invocation is malformed or its target binary is missing/unresolvable on this machine — which would explain why the scheduler store is never created.
```
### Steps to Reproduce
1. Open Claude Desktop
2. Start a new Cowork session
3. Send any message, e.g. "Hi"
4. App immediately shows "Claude Code crashed" banner
### Claude Model
Sonnet (default)
### Is this a regression?
I don't know
### Last Working Version
_No response_
### Claude Code Version
Claude@1.49585.0
### Platform
Anthropic API
### Operating System
macOS
### Terminal/Shell
Terminal.app (macOS)
### Additional Information
_No response_
贡献指南
这个仓库没有索引到贡献指南
调研方向
Start by reproducing the crash in a new Cowork session, then inspect the bundled CoworkScheduledTasks.getAllScheduledTasks call in index.chunk-CMJVFTis.js or index.chunk-6ly5IEOz.js and the related disclaimer helper behavior. Done means a bare Cowork message starts and is processed without the “Scheduled tasks not initialized” error.
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- electron, javascript, macos
- 领域
- desktop
- Issue 类型
- 缺陷
- 难度
- 5/5
- 预计耗时
- 一周以上
- 活跃度
- 活跃
- 描述清晰度
- 需要澄清
- 新手友好度
- 25/100