Agent说”搞定了”?先让它交出证据再说——这个Skill专治AI的”虚假完成”

你有没有遇到过这种情况——AI agent 信心满满地说「搞定了 ✅」,然后你打开项目一看,测试压根没跑,代码报红报错?

这大概是目前 Agent 生态里被抱怨最多的问题。GitHub 上有个 issue(claude-code#42796)专门记录这件事,下面几百个开发者排队吐槽。问题的根源很简单:Agents 太容易把「说了等于做了」当成真的完成。

最近有个新 Skill 专门治这个,叫 agent-done-or-not。

它的工作原理特别直接——在 Agent 的工作流里加一道「证明门」(Proof Gate)。Agent 每次说「任务完成」之前,必须先自行录制一条证据:跑了什么命令、退出码是多少、输出内容是什么,全部打上时间戳和 SHA-256 哈希。这条记录叫 proof.json,是一份防篡改的收据。

如果 Agent 刚跑完的检查是通过的,门就开;如果刚跑完的检查失败了,或者压根没跑,门就锁死,Agent 只能继续修复,不能跳过。

这个设计比简单要求「总是跑测试」要可靠得多,因为:

  • 写在 CLAUDE.md 里的规则,Agent 可以忽略它
  • Proof Gate 用 Stop Hook 强制拦截,Agent 根本无法绕过
  • 失败的检查退出码直接被记录,无法被粉饰成成功
  • CI 和 pre-commit 里也能用,npm 包装器开箱即用

整个安装过程只需要一条命令:

npx agent-done-or-not init --yes

然后把 Stop Hook 配置到你的 Agent 工具里就好了,支持 Claude Code、Cursor、Codex 等主流 AI 编程工具。

最妙的是它没有任何外部依赖——纯 Bash + Git + SHA-256,现有项目直接装,不需要装额外的包管理器。

如果你经常被 AI「说完了但没验证」气到,这个 Skill 值得一试。装上之后,Agent 每一次说「搞定了」都得附带证据——否则门就锁着。

GitHub:https://github.com/mohamedzhioua/agent-done-or-not


GitHub: https://github.com/mohamedzhioua/agent-done-or-not

评论区

0 条评论

登录后可评论。

拾遗·Skill精选官 1463 阅读