DSH Verification Receipt:给 DeepSeek Harness 的每轮执行追加最小化摘要

前言

做 DSH 智能体时,常见需求是在每轮结束后保留一些执行痕迹:这一轮记录过多少次工具调用?是否出现类似 testlintbuild 的验证类信号?但完整会话日志往往包含工具参数、命令输出、用户消息、模型名和提供方,直接落盘会引入额外隐私面。

DSH Verification Receipt 是一个社区维护的 DeepSeek Harness 被动 Profile Bundle。它在每次 durable turn/end 后向本地 JSONL 文件追加一条隐私最小化的启发式执行摘要,不注册新工具,也不改变模型历史。

这是什么

DSH Verification Receipt 的一句话定位是:Privacy-minimal heuristic per-turn execution summaries for DeepSeek Harness。

维护者是 030611,许可证为 MIT。资料明确说明它是社区维护,不是官方 DeepSeek 项目。它解决的是“如何在本地留一条可检查的执行痕迹,同时尽量不保存敏感内容”的问题。

package.json 声明 dsh.bundle.patchcordis.patch.yml 插入一个普通 observer plugin。

核心功能

只做被动观察

根据已核实资料,插件不注册新工具、不追加 Session event、不添加 prompt section、不注入上下文、不发起模型调用、不改变模型历史。

它对模型体验的影响是:Token 成本为 None;模型没有新工具;Session log 不变;Prompt and context 不变。

记录执行计数与启发式信号

摘要记录已记录的工具调用计数,以及基于词汇匹配的验证类信号。

当工具名称,或 shell-like 工具的 command / cmd 参数形似以下工作时,会发出启发式信号:

  • test
  • typecheck
  • lint
  • build
  • check
  • verify
  • validate

保存下来的验证信号仅保留 source、粗粒度 categoryobserved status

不保存哪些内容

持久化 receipt 不包含:

  • 工具参数或调用 id;
  • 工具结果内容或错误信息;
  • 助手或用户消息文本;
  • 原始 session id、工作目录、提供方名称或模型名称。

安装与启用

安装到指定 profile

先选择需要输出 receipts 的 profile。例如 web

dsh plugin --profile web add dsh-verification-receipt
dsh --profile web --dump-config

第一条命令把插件加入 web profile。第二条命令导出该 profile 的配置,用于确认插件已生效。

如果 headless 等其他 profile 也需要 receipts,用另一个 profile 名重复第一条 add 命令:

dsh plugin --profile headless add dsh-verification-receipt

本地开发安装

本地开发时,克隆仓库后运行检查命令,再把 checkout 路径传给 DSH 插件安装命令:

pnpm install --frozen-lockfile && pnpm run check

资料给出的安装方式是将 checkout 路径传给 dsh plugin ... add,而不是只传包名。

覆盖输出路径

默认输出路径是:

$DSH_HOME/verification-receipts/v1/receipts.jsonl

如果 DSH_HOME 未设置,路径会解析到 ~/.dsh 下。

也可以在 profile 的 cordis.patch.yml 中设置 config.outputPath,覆盖为绝对私有路径:

- id: verification-receipt
  config:
    outputPath: /absolute/private/path/receipts.jsonl

这里的 outputPath 需要是绝对路径。

版本与兼容性

package.json 声明插件版本为 0.1.0,Node engines 为:

^22.19.0 || >=24.0.0

兼容性证据基于 DeepSeek Harness commit:

47f943859bef60e4160492346772ded9b24f765a

该 commit 的 manifest 声明:

  • @deepseek-ai/dsh-session 0.1.0-rc.5
  • Cordis 4.0.1
  • Schemastery 3.18.1

资料同时说明:范围内但未列出的版本是兼容性预期,不是测试证据。

适用场景与注意

适合场景:

  • 需要在 DSH 每轮结束后本地保留最小化执行摘要;
  • 希望只记录工具调用计数和词汇层面的验证信号;
  • 不希望把工具参数、命令输出、消息文本、原始 session id、工作目录、提供方名称或模型名称写入文件;
  • 只需要被动观察,不改变模型工具集、prompt 或 session log。

需要注意:

  • 它只记录执行痕迹,不证明测试已运行、命令正确、断言充分、输出真实或助手结论正确。
  • 它不是证据审计台账:没有哈希链、工件捕获、claim-evidence 链接或协议证明。
  • receiptHash 是无键 SHA-256,可被拥有编辑权限的人重算;不是签名、可信时间戳、哈希链、承诺或防篡改日志。
  • sessionIdHash 是确定性、无键、域分离的假名化标识,可跨文件关联。如果 Session id 可预测或低熵,观察者可能离线猜测候选并重新计算。
  • 插件以当前 dsh 进程权限运行,安装前应检查源码与许可证;本插件许可证为 MIT。

结尾

DSH Verification Receipt 的价值在于把“这一轮有没有可检查的执行信号”压缩成一条本地 JSONL 记录,同时尽量避开敏感内容。它适合轻量观测,不适合作为审计、取证或质量门禁。

目录页:当前资料未给出明确 URL,不在此列出不确定的目录地址。

GitHub 仓库:

  • https://github.com/030611/dsh-verification-receipt
羽毛球分组比赛记分
小程序二维码

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

小夜