DeepSeek Harness plugin

delivery-review-dsh-plugin

双 Agent 交付协作工作流(loop 模式)的 DeepSeek Harness 移植版:/delivery-review 命令 + 审查材料自动生成 + fixer/reviewer/planner 隔离子代理。基于 DSH 原生子代理消息通道(不使用 git notes)。

Jump to install

Source facts

Repository
xiaoxiao-svg/delivery-review-dsh-plugin
Latest update
Aug 15, 2026
Category
Workflow & Automation
GitHub stars
0
Format
plugin
Catalog evidence
Upstream dsh.bundle evidence
Evidence path
package.json#dsh.bundle
Checked against
0.1.0-rc.8
Upstream check date
2026-08-20

This evidence comes from the upstream catalog. This site has not installed, run, or security-reviewed the plugin.

Install

Start with a prompt that asks an agent to review the GitHub repository and source. Switch to the command if you want to install it yourself.

Copy this prompt into DSH, Codex, or another agent and ask it to review the GitHub repository and source first.

Do not install or run any commands yet. Read this plugin's GitHub repository, README, and relevant source code. Then answer the questions below clearly and directly so I can decide whether it fits my needs:

1. What is this plugin, and what problem does it solve?
2. Who is it for, and what are its typical use cases?
3. How is it used after installation? Include one minimal example.
4. What known limitations or privacy, security, compatibility, or maintenance risks does it have?
5. Give a clear recommendation: recommend, conditionally recommend, or do not recommend, with reasons.

Distinguish statements documented by the repository, inferences from source code, and unknowns. If evidence is insufficient, say so explicitly. Do not guess or simply repeat the README.

GitHub: https://github.com/xiaoxiao-svg/delivery-review-dsh-plugin
Plugin: delivery-review-dsh-plugin
Author: xiaoxiao-svg

Check the source files

Read the README and other files from this plugin directory before installing.

File explorer2 files
README.mdSource · read only

delivery-review-plugin(DeepSeek Harness)

双 Agent 交付协作工作流的 DeepSeek Harness 原生插件。基于 DSH 的 Cordis 插件系统,以 bundle 方式分发,不改动 DSH 源码

> 核心:一切确定性逻辑从 LLM 下沉到插件代码——状态机是 JS 纯函数(可单测)、审查结论经 schema 强校验的结构化提交(不再自由文本解析)、交互走 DSH 原生结构化提问(GUI 点选)、Web 活动面板实时显示进度(解决"Web 环境不直观"的核心痛点)。

工作流一句话

/dsh-delivery <描述> → 上下文确认 → 双轨方案 + 自动分级(light/standard/heavy,启动时探测改动规模)→ 方案审查(heavy 级按需)→ 目标声明 → fixer ↔ 只读 reviewer 隔离子代理循环(状态机代码驱动:震荡/dispute > 收敛 > 质量门 > 轮次上限)→ 人工验收(裁决权归用户,ask_user_question 点选)→ 交付报告 docs/delivery-review-<日期>-<HHmm>.md

核心元认知:每个交付节点必须输出「未知清单」——你不知道的远比你知道的重要。

插件组成(cordis.patch.yml 挂载 10 行)

行 id能力
delivery-review-command/dsh-delivery 命令:注入决策指引 + 唤醒编排者 + 自动任务分级探测(改动文件数/行数 → light/standard/heavy)
delivery-review-hook监听 tools/post-execute,write/edit/pwsh/bash 后自动刷新审查材料(串行队列在 material.js 模块级,防竞态)
delivery-review-refreshrefresh_review_material 工具:手动兜底刷新材料
delivery-review-rolesdelivery_review_role 工具:按需取回 fixer/reviewer/planner 角色指令
delivery-review-skills方法论技能随插件注册进 ctx.skills,安装即用
delivery-review-submitdelivery_submit_review 工具:reviewer 结论结构化提交(schema 强校验 risk 数组/score/存疑/未知),自动推进状态机 + 轮次记录落盘
delivery-review-panelWeb 活动面板:/plugins/delivery-review/state 状态路由 + 右上角浮层(tapIndex 注入,免构建,可拖动、位置记忆)+ delivery_status 状态查询工具(调用即激活面板)
delivery-review-subagent-fixersubagent_fixer 子代理工具(读写)
delivery-review-subagent-reviewersubagent_reviewer 子代理工具(toolFilter allow 只读白名单 + delivery_submit_review:read/read_image/glob/grep + 提交工具)
delivery-review-subagent-plannersubagent_planner 子代理工具(只读白名单,heavy 级按需触发)

另有纯库模块(被上述插件 import,不单独挂载):src/state.js(确定性状态机,纯函数可单测)、src/store.js(状态/轮次持久化)、src/material.js(审查材料生成核心)。

安装

要求:DSH >= 0.1.0-rc.6(web profile)、git。

方式 A:从 GitHub 直接安装(推荐)

dsh plugin --profile web add github:xiaoxiao-svg/delivery-review-dsh-plugin

该命令把插件装进 profile 依赖(pnpm 拉取源码),并因包声明了 dsh.bundle 自动追加进 dsh.profile.bundles——无需手动编辑任何配置文件。重启 web profile 即生效,之后可按 id 在 profile 的 cordis.patch.yml 里覆盖任意行。

方式 B:本地开发调试(作者/贡献者)

node scripts/sync-installed.mjs   # 把工作区同步到 harness 实际加载的安装位置

然后重启 web profile 生效。详见「改动后部署」。

> 不要把安装位置换成 junction/symlink:Node 对链接做 realpath 解析,插件内部 @deepseek-ai/* 依赖会从真实路径(工作区,无依赖树)解析失败。

使用

/dsh-delivery 我要修一下登录页的鉴权流程
  • 全程人机协作:目标确认 / 方案选择 / 分级确认 / 人工裁决都由你拍板(ask_user_question 点选),AI 不代做裁决
  • 用户可随时插话;目标变更 = 重新对齐方案与目标(按确认重置状态),仅澄清 = 轮次延续
  • 审查材料自动生成在 .delivery-review/review_material.md(hook 自动 + refresh_review_material 兜底)
  • Web 活动面板:右上角浮层实时显示当前阶段 / 轮次 / 质量分 / 风险摘要(1s 轮询);未运行时灰点常驻(点开提示"未在运行"),运行中蓝点脉冲;浮层可拖动、位置记忆

验证

node scripts/verify.mjs          # 语法 + cordis.patch.yml 结构 + 资源完整性 + 模块导出
node scripts/test-state.mjs      # 状态机纯函数单测(13 项:去重/门禁/退出四级/归一化/纯函数)
node scripts/test-integration.mjs # 集成测试(临时 git 仓库:材料刷新/清单/竞态/截断/存储)

> 集成测试在临时 git 仓库运行、结束自动清理;测试脚本属开发期工具,未随仓库分发(npm pack 时被 files 字段排除)。

改动后部署(bundle 安装模式下)

bundle 安装是实体拷贝,harness 从 %DSH_HOME%/profiles/<profile>/node_modules/delivery-review-plugin 加载插件代码,改工作区源码不会自动生效。改完代码执行:

node scripts/sync-installed.mjs   # 同步到安装位置,然后重启 web profile

> 不要把安装位置换成 junction/symlink(Node realpath 会导致插件依赖解析失败),详见 docs/pitfalls.md

踩坑速查

  • 注入消息 content 必须是块数组([{ type: "text", text }]):裸字符串会触发误导性的 DeepSeek API stream ... failed(TRANSPORT)报错
  • 安装位置不要用 junction/symlink 链接:Node realpath 后插件依赖从真实路径解析会失败
  • ctx.skills.register 必须带 source 字符串(如 "bundled"),否则加载技能时报 source must be a string
  • webServer 服务键随 rc 版本可能改名(webServer/httpServer):panel.js 双键探测,两者都兼容
  • Web 浮层注入用 tapIndex(幂等:带标记则跳过);状态路由/浮层脚本注册用 webServer.register

已知限制

  • 审查材料只覆盖 write/edit/pwsh/bash;MCP 等其他工具的写入不在材料中,由审查者列入未知清单
  • 三个 subagent 工具全局注册(所有 agent 可见)
  • 多会话并发跑同一仓库 loop:state.json 与 rounds/ 按仓库落位,两个会话互踩会互相覆盖(文档化限制)
  • Web 面板"当前活动仓库"为 DSH 进程内单值:多仓库并行交付时面板只指向最后启动/提交的仓库(文档化限制)
  • 分级轮次上限(light=1)暂未落地为状态机 max_rounds(当前统一上限 3 轮,待设计)
  • Web 面板为第一期(状态摘要浮层);视觉美化(头像/动画/消息流)留待第二期
  • 本仓库已通过静态校验、状态机单测、集成测试与组合挂载验证(2026-08);真实 LLM 端到端 loop 验证见 docs/delivery-review-<日期>.md

许可

MIT。