dsh-deadend:编码智能体的失败账本与自动失效机制

前言

DeepSeek Harness 插件 dsh-deadend 是一个为编码智能体设计的“反驳账本”。它解决的问题是:智能体在每次会话中重复尝试已知失败的方案,因为现有的记忆系统通常只记录“什么有效”,很少记录“什么无效”。dsh-deadend 将“试过且走不通”的方案记入仓库,并在下一次尝试前进行验证。

核心功能

该插件主要包含以下能力:

  • 锚点追踪:每条记录都携带锚点(文件哈希)。当记录中依赖的代码发生变化时,该记录会自动失效。
  • 自动过期:锚点未变时,记录保持“权威”状态;锚点改变时,自动降级为“怀疑”状态。
  • 命令规范化:日志哈希时会忽略行号、路径、时间戳等噪音,确保跨会话、跨机器的失败模式能被正确识别。
  • 退出码:提供标准化的退出码用于 CI 流程:3(被拦截/权威失败)、4(怀疑/需复测)、5(拒绝记录)。
  • 仓库账本:数据存储在仓库的 .deadend/ledger.jsonl 中,而非本地缓存,支持多人协作与历史追溯。
  • 可合并性:基于内容生成的身份(ID)支持去重与合并。

安装与启用

安装该插件需要 DeepSeek Harness 环境及 Node.js >= 20。安装过程无需构建步骤。

dsh plugin --profile web add github:liyixuan201211/dsh-deadend

典型用法

使用前应确保环境满足要求。插件提供 check、record、verify 等命令。

检查已知失败:
在执行昂贵的操作前,先检查是否已有权威的失败记录。

deadend check --cmd "npm install sharp" --log /tmp/last-install.log

记录失败:
记录一个失败案例,并指定其锚点文件。

deadend record --title "npm install sharp fails: no prebuilt binary for darwin-arm64" --cmd "npm install sharp" --exit 1 --log /tmp/last-install.log --why "sharp ships prebuilt binaries and publishes none for this platform/arch" --retry "npm rebuild sharp --build-from-source (needs libvips)" --anchor package.json --anchor package-lock.json --evidence /tmp/last-install.log --tag native

验证结果:
当怀疑记录可能不再适用时,进行验证。

deadend verify dd_50e127c7d9c5 --still-fails --log <new-output>

注意事项

  • 未锚定条目:如果不指定锚点(--unanchored),记录将永久阻塞,不会自动过期。
  • 存储位置:账本位于仓库目录下,而非机器缓存,确保了数据的可共享性与可审查性。
  • 依赖要求:需确保运行环境安装了 Node.js 版本 >= 20。

总结

dsh-deadend 通过引入“锚点”机制,解决了负面知识难以自动失效的问题。它将失败经验固化为仓库资产,确保智能体不会在已知的错误路径上无限重试。

目录链接 | GitHub 仓库

羽毛球分组比赛记分
小程序二维码

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

小夜