前言¶
在 DeepSeek Harness(DSH)里做多仓库、多模块的 agent 开发时,常见做法是就在主会话里串行处理每条消息:主 agent 既要理解意图,又要进目录改代码,长任务还容易把对话拖慢。dsh-labs 开源的 Agent Scheduler(插件包名 dsh-agent-scheduler)走的是另一条路:主会话充当 lead(调度者),每条用户消息先 fork 出去路由,真正干活的是长期存活的 worker,汇总答案仍由 lead 呈现。下面介绍它是什么、能做什么,以及如何在本地安装和打开调度。
这是什么¶
Agent Scheduler 是 DSH 的第三方插件,维护方为 dsh-labs,在 SkillHub 目录中归类为工作流。README 用一句话概括设计目标:「Every message gets its own fork; every area gets its own worker.」——每条消息独立 fork,每个工作区域(如仓库或模块)对应一个 worker。
当前 package 版本为 0.1.0-rc.9,许可证 MIT。插件在 GitHub 上的星标约为 1(以目录页展示为准)。
核心功能¶
资料中明确列出的能力如下,均可在启用调度后通过界面与斜杠命令配合使用。
每条消息一个 fork¶
开启调度后,lead 不会被单条消息长时间阻塞:每条输入走自己的 fork 路由,lead 主要负责分发与汇总。
长期存活的 worker¶
可按仓库或模块配置 worker:各自拥有 session、工作目录和模型。每个 worker 是 router workspace 下的顶层 session,前面有持久队列;也可以直接打开该 session 与 worker 对话。
Agents 页与 Deck¶
- Agents 页:实时状态、未读标记,以及可重排的 lead 收件箱。
- Deck:左侧边栏,展示置顶 session,以及有 worker 在跑或队列中有待处理项的会话。
与 Agent Teams 的配合¶
在开启 Agent Teams 时,每个 worker 还可以再带领自己的 team。
界面语言¶
界面跟随 DSH 的语言设置,README 写明支持 8 种语言。
写入范围与安全边界(必读)¶
README 强调:worker 共享同一写入域。worker 的 session 建在 router 的 workspace 里;DSH 的 workspace-write 沙箱允许其在 workspace 下广泛写入,不限于分配给它的 worktree。同一 workspace 上的多个 worker 彼此不隔离,可能互相改文件。若需要隔离,应为每个 worker 单独 worktree,并把不应被碰到的仓库放在 router workspace 之外。
环境与安装¶
前置条件¶
- DeepSeek Harness:
>=0.2.1-rc.5且<0.3.0 - 开发构建时 Node:
^22.19.0或>=24(仅当你从源码参与开发时需要)
安装插件¶
在 dsh 中打开 Plugins → Install a third-party plugin,输入 dsh-agent-scheduler;或在终端执行:
dsh plugin add dsh-agent-scheduler@next
安装后重启 dsh。编写区会出现「调度」(Scheduling) chip。
插件以当前 dsh 进程权限运行。安装前应自行查看 GitHub 源码 与 MIT 许可证,确认符合你的安全与合规要求。
典型用法¶
打开与关闭调度¶
- 点击编写区的「调度」chip,或执行:
/schedule on
- 点击 chip 旁的按钮可打开 Agents 页;也可用:
/agents
- 若希望消息重新由 lead 直接处理(worker 仍在后台运行),执行:
/schedule off
常用斜杠命令¶
README 列出的主命令包括:/schedule、/agents、/worker model、/role。更完整的工具说明、工作原理、配置、恢复与限制见仓库内 guide(路径以仓库为准)。
适用场景与注意¶
更适合:需要在多个仓库或模块上并行推进、又希望主对话界面只读 lead 汇总结果的工作流;愿意显式管理 worker、worktree 与 workspace 边界的团队。
需要注意:
- 不要默认 worker 文件级隔离;多 worker 同 workspace 时需用 worktree 或目录规划避免互相覆盖。
- 插件版本为 rc 阶段,DSH 主版本需落在 README 声明的范围内。
- 社区目录 SkillHub 插件页 为独立站点,与 DeepSeek / 幻方无官方从属关系;安装来源以 dsh 插件机制与 GitHub 仓库为准。
结尾¶
Agent Scheduler 把 DSH 主会话改成「调度 + 长期 worker」模型:fork 解耦每条消息,worker 扛起具体区域的任务,Agents 页与 Deck 负责可观测与跳转。若你的工作流分类里正缺这类编排方式,可先按官方命令安装 dsh-agent-scheduler@next,用 /schedule on 试跑一轮,再对照 guide 细化 worker 与模型配置。