dsh-leader-agent:在 DSH 里用 Leader 编排多 Worker 并行交付

前言

在 DeepSeek Harness(DSH)里做多任务智能体协作时,常见做法是自己在多个会话之间来回切换:派活、盯进度、收结果、再开一轮 review。任务一多,注意力会耗在「哪个会话卡住了」而不是「要交付什么」。社区维护者 fengshenx 提供的 dsh-leader-agent(npm 包名;早期目录名 dsh-leader-kit 已弃用并重命名)是一套 Leader / Worker 编排插件:一个 Leader 会话负责拆任务、派发、跟踪完成与 review;Worker 在后台执行并自动回报;项目维度的交付看板把任务卡片、执行槽位和状态集中展示。下面介绍它是什么、能做什么,以及如何安装与从旧包迁移。

这是什么

dsh-leader-agent 是面向 DSH 的 Leader / Worker 编排 bundle,简介可概括为:项目树、交付看板(delivery board)、Worker 会话管理。维护者为 fengshenx,在插件生态里常归类为工作流。README 标明状态为 developer preview,许可证为 MIT(见仓库徽章)。

与「单会话里自己记 todo」相比,这套 bundle 把编排协议、Leader 侧工具链和 Web / Desktop 客户端里的看板 UI 绑在一起:你向 Leader 陈述目标一次,由 Leader 建卡、spawn Worker、投递首条消息启动工作,并在 Worker 结束后验收与组织 review。仓库说明:每个任务一个 git worktree 是该项目的惯例,并非 bundle 的硬性要求。

核心功能

一个 Leader 驱动开发与 review

Leader 会话是项目唯一的指挥方。它通过工具链记录要做什么、如何验收,创建 Worker 会话并在投递消息后立即返回;Worker 在后台干活并自动回报。目标是让你把注意力放在「要什么结果」,而不是逐个 babysit 智能体;README 表述为可同时推进多个 feature(例如「ten features in flight」)。

右侧 SidePanel 交付看板

每个项目一块看板。卡片带执行槽位(slot)与实时状态指示;备注以 Markdown 渲染,链接可就地编辑。点卡片看规格(目标、范围、验收、链接);点槽位可钻取该 Agent 的会话并继续对话。Worker 回报以 Worker 身份展示,同样 Markdown 渲染。界面布局(README Preview):左侧项目树与各 Leader 派生的 Worker;中间 Leader 会话(任务、派发、回报、结论);右侧该项目交付看板。

LEADER.md 与 SLOTS.md 配置角色

两个文件负责编排规则,无需重建会话即可改行为:

  • LEADER.md:Leader 的 prompt 与本项目的编排规则(边界、派发要求、验收标准)。
  • SLOTS.md:各 Worker 角色(dev / review 等)的独立规则。

二者在每次模型请求前评估,仅当文本变更时才追加到上下文。

leader-mode 技能

内置 leader-mode skill,提供分阶段 playbook:讨论 → 设计 → 实现与交付 → review → merge,并包含并行协作与交接指引。README 强调这是编排协议,而非泛泛的「你是 tech lead」式提示。

多项目并行

添加项目会将 Leader 会话绑定到该项目;项目树列出该 Leader spawn 的 Worker,行可拖拽排序。删除项目只删记录,不删文件夹与会话(dsh workspace 不受影响)。可为项目更换 Leader,现有 Worker 与未交付的 report 会迁移,新 Leader 可立即继续派发。

read_worker_session:只读回看 Worker

read_worker_session 直接读取 Worker 会话日志,返回各轮的任务、正文、调用的工具及失败原因。只读:不会唤醒 Worker,也不会触发模型调用。完成通知告诉你「出了什么」;此工具帮助理解「怎么做到的」,便于调试而无需再开一轮对话。

运行链路(Leader 侧工具)

README「How it runs」节选如下逻辑:

you ──────▶ Leader (the leader session, sole commander of the project)
             │  create_card      record what to build and how it is accepted
             │  spawn_worker     create the worker session, return immediately
             │  message_worker   deliver the first message — that is what starts work
             ▼
      worker ─ ...

即:先 create_card 记录交付与验收,再 spawn_worker 建会话,最后用 message_worker 投递首条消息真正开工。

安装与启用

插件以 npm 包 dsh-leader-agent 发布(抓取资料中 package.json 版本为 0.3.1)。运行环境要求:Node.js >= 24.9.0,dsh >= 0.2.1-rc.2 且 < 0.3.0(README 安装章节与 engines 字段一致)。

Web profile

安装 profile 必须为 web;自定义 profile 名不在 PROFILE_TEMPLATES 中,会导致缺少 web-app bundle、客户端无法加载。

dsh plugin --profile web add dsh-leader-agent
dsh web

Desktop profile

Desktop 使用独立 profile:$DSH_HOME/profiles/desktop,与 web 分离。系统自带的 dsh CLI 不能管理 desktop profile,需使用 Desktop 安装目录内的 CLI。

GUI:左侧 Plugins → 右上角 Add plugin → 输入 dsh-leader-agent → Install。

CLI(macOS 示例,需先完全退出应用):

"/Applications/DeepSeek Harness.app/Contents/Resources/runtime/cli/bin/dsh" \
  plugin --profile desktop add dsh-leader-agent

Windows / Linux 请改用安装目录下的 runtime/cli/bin/dsh。应用仅在启动时读取 profile,同一时刻只能挂载一个插件版本;DSH_HOME 须为绝对路径或以 ~/ 开头。会话、项目与卡片与 web 共享;插件包与激活状态各 profile 独立。

从 dsh-leader-kit 升级

包已从 dsh-leader-kit 重命名为 dsh-leader-agent,无兼容并存路径。若旧包未移除,dsh.profile.bundles 会同时记录两个包名,工具重复注册、两个 dispatcher 处理同一 turn/end(重复通知与唤醒)。请在同一 profile 先删后加:

dsh plugin --profile web remove dsh-leader-kit
dsh plugin --profile web add dsh-leader-agent

数据目录随包名变更($DSH_HOME/dsh-leader-kit → $DSH_HOME/dsh-leader-agent),不会自动迁移:看板为空,Worker 注册在首次启动时重建。旧包已 deprecated,请以 dsh-leader-agent 为准。

更细的版本 pin、卸载、开发安装等见仓库 Development 文档。

典型用法

  1. 在 web 或 desktop profile 安装并启动 DSH Web / Desktop 客户端。
  2. 为仓库或需求添加项目,绑定 Leader 会话;按需编辑项目下的 LEADER.md、SLOTS.md。
  3. 在 Leader 会话中说明目标;Leader 按 leader-mode 与编排规则 create_card,对 dev / review 等槽位 spawn_worker,再 message_worker 启动具体 Worker。
  4. 在右侧看板查看卡片状态;需要介入某 Worker 时点击槽位进入其会话;需要排查过程时 Leader 可调用 read_worker_session 只读日志。
  5. Worker 完成后 Leader 验收并组织 review;多任务可并行多张卡片、多个 Worker。

适用场景与注意

适合:希望在 DSH 里用结构化 Leader / Worker 分工、并行多条交付线,并能在 UI 上看板 + 项目树统一管理的开发者或团队。

注意:

  • 插件在 当前 dsh 进程的权限下运行;安装前请阅读 fengshenx/dsh-leader-agent 源码与 MIT 许可证,确认工具与会话访问范围可接受。
  • 仍为 developer preview,API 与数据目录行为可能随版本调整;从 dsh-leader-kit 升级时看板数据不迁移,需心理预期。
  • DSH 社区插件目录(如 SkillHub 上的 fengshenx/dsh-leader-kit 条目)为独立站点,与 DeepSeek / 幻方无官方从属关系;目录名可能仍指向旧包名,安装请以 npm dsh-leader-agent 与 GitHub README 为准。

结尾

dsh-leader-agent 把 Leader 驱动的派发、Worker 后台执行、交付看板与可编辑编排文件收进一个 DSH 工作流插件,减轻多会话手工盯场的成本。查阅目录信息与讨论 issue 可访问 GitHub 仓库;从旧 dsh-leader-kit 迁移时务必先 remove 再 add,避免双 bundle 叠加。

  • 社区目录(历史包名):https://www.skillhub.cn/plugins/fengshenx/dsh-leader-kit
  • GitHub(当前维护仓库):https://github.com/fengshenx/dsh-leader-agent
羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜