dsh-skill-lord-serf

by ttxl314

1 技能包github收录于 08-23

ttxl314/lord-serf-agent-protocol-SKILL(协议 0.5)的 DSH 移植:随附 lord 与 serf 技能,DSH 可任 Lord(编排者)或 Serf(执行者)

A DeepSeek Harness (DSH) plugin port of ttxl314/lord-serf-agent-protocol-SKILL (protocol 0.5): it ships the lord and serf skills so DSH can act as the Lord (orchestrator) and…

安装

dsh plugin --profile web add github:ttxl314/dsh-skill-lord-serf

GitHub 源码安装:首次需按提示配置 allowBuilds 构建授权后重试

安装与环境配置指引、插件开发教程见 DSH 中文社区文档 ↗

安装即在你的机器上以你的权限运行第三方代码——它可读写文件、使用凭据、访问网络,DSH 的工具审批不会为插件代码加沙箱。「检测到 manifest」仅代表发现 dsh.bundle / dsh.plugin 清单,不构成兼容性或安全审查;安装前请审阅源码,不熟悉的插件先在不含密钥的环境试用。

README

目录

English | 中文

将 ttxl314/lord-serf-agent-protocol-SKILL(协议 0.5)移植为 DeepSeek Harness(DSH)插件:提供 lord 与 serf 两个技能,让 DSH 既可以当 Lord(编排者),也可以当 Serf(执行者)。

协议是什么

以文件为载体的多 Agent 编排协议,生命周期:

plan → package → dispatch → execute → submit → review → decide
  • Lord:规划、任务包(task package)、派发 Serf、权威任务状态(authoritative state source)、评审决策、最终验收。
  • Serf:执行一个 Lord 下发的任务包、自我校验实际产出、提交一份报告(REVIEW / BLOCKED / CHANGE_REQUEST)。
  • 聊天只是通知;项目状态、需求、证据、决策全部落盘为文件(TASKS.md、TASKS/、REVIEWS/、BLOCKERS/、CHANGE_REQUESTS/)。

仓库结构

dsh-skill-lord-serf/
├── package.json          # dsh.bundle 清单;无运行时依赖,仅 peer
├── cordis.patch.yml      # 组合包层:注册 lord-serf 插件行
├── lib/index.js          # cordis 插件:ctx.skills 文件支撑 Provider
├── test/self-test.mjs    # 自测套件
└── skills/
    ├── lord/
    │   ├── SKILL.md          # 含 DSH 适配(DSH Bindings 映射表)
    │   ├── assets/schemas/   # 任务包 / 微任务 / 派发指令 schema
    │   ├── assets/templates/ # 任务包 / 派发指令 / 项目文件模板
    │   └── references/       # 伸缩、评审、变更控制、恢复、适配器等
    └── serf/
        ├── SKILL.md
        ├── assets/schemas/   # 提交信封 / 评审报告 schema
        ├── assets/templates/ # REVIEW / BLOCKED / CHANGE_REQUEST 模板
        └── references/       # 任务包接收、子代理扇出、自校验、提交报告等

skills/<name>/SKILL.md 同时带 DSH 技能 frontmatter(name + description),同一份文件可以双用:

  1. 插件方式:lib/index.js 在启动时通过 ctx.skills.registerProvider 注册一个文件支撑 Provider(rank 250),把两个技能以 resourceBase: { kind: 'directory', path: <技能目录> } 暴露到全局层,所有会话可用;get() 每次按需重读正文,编辑即时生效。
  2. 文件方式:把 skills/lord、skills/serf 复制(或链接)到 <项目>/.dsh/skills/ 或 ~/.dsh/skills/,由 dsh-skill-filesystem 直接发现,无需重启。

与 DSH 机制的映射

协议概念 DSH 机制
Serf 执行体 subagent 工具(每个任务包派一个子代理)或独立 DSH 会话
Serf 的子工作扇出 subagent 工具在任务边界内做不相交子步骤;见 skills/serf/references/dsh-subagents.md
$serf 调用 /serf 用户手势,或子代理内 skill(name='serf') 加载
$lord review <path> / $lord resolve <path> /lord 手势 + 报告路径;子代理 Serf 的最终消息直接回到 Lord
状态源 / 任务包 / 报告 共享工作区内的普通文件,用 DSH 文件工具读写
长时间编排 DSH goal 工具保持目标跨轮次推进

安装

A. 组合包方式(全局可用)

从 GitHub 安装(本包直接交付预构建 ESM,无 build 步骤、无需授权 prepare 脚本;建议锁定 commit):

dsh plugin --profile <name> add github:ttxl314/dsh-skill-lord-serf#<commit-sha>

或从本地检出链接安装:

dsh plugin --profile <name> add ./dsh-skill-lord-serf

dsh plugin 会把包加进 profile 的依赖与 dsh.profile.bundles,其 cordis.patch.yml 层负责注册插件行。重启 web 服务后生效;条目会出现在 GUI 的 Settings → Plugins 清单中。

B. 文件方式(无需重启,项目级)

New-Item -ItemType Junction -Path .dsh\skills\lord -Target <本包>\skills\lord
New-Item -ItemType Junction -Path .dsh\skills\serf -Target <本包>\skills\serf

技能目录监视器会即时发现,当前会话的技能目录自动刷新。

使用

  • Lord 会话:说"用 Lord 协议编排这个项目"或输入 /lord,按工作流产出任务包、派发指令并维护 TASKS.md。
  • 派发 Serf:Lord 用 subagent 工具派发,子代理提示词 = assets/templates/dispatch-instruction.md 的生成结果,并要求子代理先 skill(name='serf') 再执行任务包。
  • Serf 会话:输入 /serf 或直接给任务包路径;可在边界内用 subagent 扇出子工作(references/dsh-subagents.md);执行后按模板写报告,最终消息给出报告路径。

自测试

node test\self-test.mjs

套件覆盖 26 项检查:Provider 契约(apply/list/get/invalidate)、SKILL.md frontmatter 解析、Codex 残留标记扫描、技能正文引用路径存在性、6 个 JSON Schema 可编译(draft 2020-12)、代表性协议载荷正反向校验(含 v0.3 字段拒绝)、模板与 schema 常量一致。依赖 ajv、ajv-formats、yaml,从本机 DSH profile($DSH_HOME)的 node_modules 解析。

另支持端到端演练:Lord 建任务包(schema 校验后派发)→ subagent 子代理加载 serf 技能执行 → 报告过 micro-review-report/submission-envelope schema → Lord 核对实际产出后更新权威状态。

依赖

  • @deepseek-ai/cordis ^4.0.1(peer)
  • @deepseek-ai/dsh-skill ^0.1.0-rc.6(peer,由 @deepseek-ai/dsh-base 组合包提供)

与上游的差异

  • 所有 $lord/$serf(Codex 命令)→ /lord//serf(DSH 技能手势)。
  • dispatch-instruction 的 worker_invocation 常量为 /serf;Invocation 一节改为 DSH subagent 派发说明;执行要求新增子代理扇出条款。
  • 新增 serf/references/dsh-subagents.md(DSH 专属的 Serf 子工作扇出规则)与 coding 适配器的 "Execution Capabilities (DSH)" 小节。
  • 删除了 Codex 专属的 agents/openai.yaml。
  • 协议本体(字段名、任务档位 micro/standard/full、状态词表、报告路径、非谈判条款)与上游 0.5 完全一致,任务包/报告可跨平台互认。

许可证

基于 ttxl314/lord-serf-agent-protocol-SKILL(MIT),本移植同样以 MIT 发布。

原始 README: https://github.com/ttxl314/dsh-skill-lord-serf/blob/main/README.zh-CN.md ↗