概览
dsh-laa
README / ZH
插件文档
目录摘要
dsh.pub 核对固定版本的组合包契约、运行时事实与分发语义;完整 README 请查看源仓库。
在 GitHub 阅读完整 READMELIMITATIONS
已知限制
- **只续跑实时会话。** 谷时到来时没有实时 agent 的会话不会被插件唤醒——拉起一个 冷会话需要 profile 的 agent preset 组合(`ctx.agents.resume({ resumeSessionId, agentOptions, setup })`), 那是 UI/会话控制器的职责。这类会话的遗留输入会被保留,等它下一次变成实时 agent 时立刻交付。 - **不杀后台任务。** 峰时停的是 agent 的轮次,不是操作系统进程:`pwsh` 的后台 job、子进程等会继续在后台跑完(它们无法「暂停后继续」,只能被杀掉重跑)。会话在 谷时续跑时再收它们的结果。 - **子会话跟随所属的顶层会话。** 子会话没有自己的模式(见「使用 → 子会话」); 已经派发到进程外的子代理(ACP / SDK)不在管辖范围内。 - **子会话的遗留工作要等它自己回到实时状态。** 峰时被拦下的子会话输入记在子会话 名下,谷时只有该子会话有实时 agent 时才投递——这与「只续跑实时会话」是同一条规则。 - **`/laa` 需要命令适配器。** headless / SDK 这类没有命令适配器的组合只是没有这个 入口,LAA 的调度行为不受影响。 - **峰时会在会话日志里留下空轮次。** 被拒绝的步骤已经开启了 `turn/start`,拒绝后 以 `turn/end { reason: { kind: 'blocked' } }` 收尾。这是 DSH 既有的语义,不是错误。 - **状态文件是本插件自己的。** DSH 的持久化读取路径会拒绝解释未知的会话事件类型 (除非事件带 `ignorable` 标记,而这在公开的 `session.append()` 上无法设置),所以 这里不去污染会话日志,而是把状态放在 `$DSH_HOME/laa/state.json`,写入是原子的 (临时文件 + rename)且做了防抖。 <a id="开发"></a>
