You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Hub daemon (stable, one instance)
├── engine-scheduler (built into Hub) → one set of timers → fire exactly once
│ └── notifies connected CC sessions via MCP
├── CC session 1 (receives task notifications)
└── CC session 2 (receives task notifications, can serve as fallback executor)
要点:
调度器是 Hub daemon 的一部分(和 message routing 同级),不再依赖 CC session 生命周期
问题描述
当多个 Claude Code session 同时运行时,每个 session 都启动独立的 engine-channel MCP 子进程。所有 engine-channel 实例各自注册定时器并独立触发任务,导致:
症状
部分重排日志出现 N×M 次(M 为文件 watcher 触发次数)。复现
当前环境有 3 个 CC session 运行中:
engine trigger log 证据(22:59 任务触发 4 次):
根因
engine-channel.ts是 CC MCP server 子进程,生命周期绑定 CC session。多个 session = 多个独立调度器 = 无协调、无去重。当前架构:
建议方案
把 scheduler 从 engine-channel 移到 Hub daemon,Hub 内部维护单一调度器实例:
要点:
临时 workaround
用户侧:只保留 1 个 CC session,关掉多余的 terminal。但这与多任务并行工作流冲突。
环境:macOS 14.6.1 · Bun 1.3.13 · forge-hub v0.2.0
forge-hub doctor输出: