前言¶
在 DeepSeek Harness(DSH)的工作流中,Agent 声称完成(“Done”)往往只是主观判断,背后可能隐藏着测试失败、构建错误或需求遗漏。为了解决这个问题,需要一个独立的验收层来验证 Agent 的产出。下面介绍 dsh-autopilot 插件。
它是什么¶
dsh-autopilot 是一个面向 DeepSeek Harness 的验收驱动自动完成引擎。项目由 245678000000 维护,开源协议为 MIT。它解决了 Agent 自称完成不代表任务真正完成的问题,通过确定性评估器独立验收,确保只有在所有必选检查通过时才签发完成证书。
核心功能¶
插件主要提供以下能力:
- 独立验收与自动完成:挂在官方
agent/turn-stopping上,不替换ctx.goals,独立评估 Agent 产出。 - 修复循环与重试机制:对可修复的失败生成结构化反馈,通过
agent.steer继续当前回合,或交给官方 driver 排下一轮。 - 证书生成:通过后写出
CompletionCertificate,明确标记验证状态。 - 多种评估器:支持 command(命令执行)、file(文件检查)、regex(正则匹配)、git(工作区状态)、http(HTTP 请求)、manual(人工确认)、agent(独立评判)等多种评估方式。
- 回归/无进展/振荡检测:对比上一轮结果,防止模型在错误方向上空转或出现 A/B 翻转。
- 阻断机制:对缺密钥、审批拒绝、必选标准无法验证等情况进行阻断,避免无效重试。
安装与启用¶
系统需要 Node.js 20.19+ 以及已安装的 DeepSeek Harness。
作为 Harness 插件安装:
dsh plugin add https://github.com/245678000000/dsh-autopilot
或使用本地 checkout 做 overlay:
pnpm dsh web --patch /absolute/path/to/dsh-autopilot/cordis.patch.yml
典型用法¶
插件提供独立的 CLI 工具,无需运行完整 Harness 即可评估项目。
独立评估(不执行 shell 命令):
dsh-autopilot evaluate --cwd ./fixtures/file-only
独立评估(授权执行 shell 命令):
dsh-autopilot evaluate --cwd ./examples/login --allow-commands
常用命令还包括查看状态、标准配置和证书:
dsh-autopilot status
dsh-autopilot criteria
dsh-autopilot certificate
运行演示场景:
npm run demo
适用场景与注意¶
dsh-autopilot 适合需要严格验收标准、防止 Agent 自欺欺人的工作流。
注意事项包括:
- 配置不可信:
.autopilot.yml视为不可信项目配置,写坏的验收标准会签发错误证书。 - 概率性评估:LLM 评估器是概率性的,非法输出记为
error,不是pass。 - 系统可用性:外部系统可能不可用。
- 数学证明局限:测试通过在数学上不能证明软件正确。
- 权限风险:插件以当前 DSH 进程权限运行,安装前应检查源码与许可证。
- 进程内调用限制:受信任的进程内插件如果直接调用
ctx.goals.complete(),官方 Goal 服务仍然认可,Autopilot 拦截的是模型工具调用,不是所有 in-process 调用。
总结¶
dsh-autopilot 通过引入独立的验收层,将“Done”的定义从主观声明转化为客观验证,提高了 Harness 工作流的可靠性。更多细节请参考 GitHub 仓库。