前言¶
DeepSeek Harness (DSH) 通过插件化架构支持功能扩展。在自主编程智能体的场景下,区分“谁指定工作”与“谁执行工作”是控制风险的核心。该插件通过技术手段强制这种分离,防止规划者直接编写代码,并在 Git 仓库中留下不可篡改的审计记录。
它是什么¶
dsh-plugin-coding-delegate 是一个由 jjmlovesgit 维护的 DSH 插件。它将工作流解耦为两个角色:架构师(负责设计、分解任务并编写合同)和 执行者(负责在本地沙箱中运行代码并返回验证结果)。插件通过工具调用钩子在代码写入前拦截操作,提供基于 Ed25519 双签的仓库原生证明。
核心功能¶
- 执行边界隔离:架构师(计量模型)无写入工具和 Shell 权限,无法修改宿主机代码;执行者仅在受控沙箱中运行。
- 防自批准机制:强制要求使用两个不同的密钥(双 principals),拒绝使用同一密钥进行自批准。
- 仓库原生证明:使用 Git Notes (
refs/notes/delegations) 存储 Ed25519 双签记录,记录包含执行回执和人类审核批准。 - 哈希绑定晋升:执行者在本地沙箱运行,通过哈希绑定机制获得晋升权限。
安装与启用¶
该插件包含在仓库的 plugin/dist 目录中。由于门禁和签名工具故意放在检出目录而非 npm 包中,需要从代码仓库直接运行相关脚本。
典型用法¶
运行审计与测试¶
在克隆的仓库根目录下执行以下命令:
npm run gate # 运行所有七个命令(八种工具),离线验证
node scripts/verify-delegation-ledger.cjs # 仅审计账本
node scripts/redteam-probe.cjs # 测试十种攻击类,验证边界有效性
合同流程示例¶
插件提供两个阶段命令来处理工作流:
- 准备阶段:运行合同并暂存草稿。
--prepare <target> <contract>
- 批准阶段:添加审核者区块并最终确认。
--approve <target> --reviewer-identity "<name>"
适用场景与注意事项¶
- 密钥要求:两个密钥指纹必须不同,否则拒绝批准。
- 分离操作:批准是一个独立的、人类的、两阶段行为,插件路径无法签署人类声明。
- 审计盲区:Git notes 可以被编辑、重新附加或删除,甚至 ref 可以被强制推送。审计无法检测已被删除的记录。
- 权限限制:计量模型没有任何写入工具和 Shell 权限。
总结¶
该插件通过在 DSH 中引入双重签名和执行边界,为自主编程代理提供了可审计的治理控制。它适合需要在 Git 层面强制执行审批流程和代码变更审计的场景。
GitHub: https://github.com/jjmlovesgit/dsh-plugin-coding-delegate