Hermes v0.18 引入了完成契约和验证机制,AI 说做完了不再可信,得拿测试结果来证明

lxiol
📝
Hermes v0.18 引入了完成契约和验证机制,AI 说做完了不再可信,得拿测试结果来证明

原文链接:https://mp.weixin.qq.com/s/jxMHW2M1I6fcjVvWBuUgpw

Hermes v0.18 引入了完成契约和验证机制,AI 说做完了不再可信,得拿测试结果来证明

跟 AI 协作久了都会遇到一个问题:你跟它说「帮我修一下这个 bug」,它回你一句「修好了」。然后你试了一下,发现根本没修。这不是模型不聪明,而是它不知道自己「以为修好了」和「真的修好了」之间的差距。

Hermes v0.18 这次认真搞了这件事。核心思路很简单:你说做完了是吧?行,跑一下测试给我看。

/goal 的完成契约

之前介绍过 Hermes 的 /goal 功能——你设定一个目标,AI 会自己盯着进度直到完成。但「完成」的定义一直是个问题:AI 觉得完成了,不一定是真的完成了。

这次加了个「完成契约」(completion contract)的机制。你在设目标的时候,可以一起说明「什么样算完成」。比如你跟它说「把用户登录页的 bug 修了,验收标准是能正常登录」,然后它自己会去验证登录是否正常。不再是你问它「修完了吗」它说「修完了」就完事了——它得拿证据出来。

这里的差异很微妙但很关键:以前是模型「感觉」自己完成了,现在是根据你给的验收标准去「验证」自己是否完成了。一个是自我感觉,一个是客观证据。

pre_verify 钩子和验证流水线

这个机制不止在 /goal 里生效。整个系统加了一个 pre_verify 钩子——在任何代码改动完成后,AI 可以自动运行你项目的检查流程(测试、lint、类型检查等),然后把结果作为验证证据记录下来。

这个验证证据是存到 profile 级别的——也就是说每个项目都有自己的验证记录,可以在网关层看到验证状态。AI 改完代码,自己跑测试,测试通过了才说「做完了」。如果测试没过,它会看到失败信息然后继续改,直到测试通过才停。

当然,这个验证默认不是强制开的——你可以在配置里打开,或者让它按场景自动决定(自动模式只对纯文档修改跳过验证,有代码改动就验证)。还有一个一次性迁移帮你把默认配置设好,不用手改。

对日常使用的影响

坦白讲,这个机制不是对所有场景都有用。如果你只是让 AI 改一行代码加个注释,验证流程反而多余。但如果你在用它改动核心逻辑、修 bug、加功能——每次 AI 说「改完了」之后,你没有第三只手去手动验证,这个自动验证的机制就很有价值了。

而且它还有一个好处:你回头看的时候,能看到每次改动对应的验证结果——哪个测试跑过了、哪个没跑过、最后是怎么过的。这个记录本身就有存档价值,特别是在团队协作场景里。

诚实边界

这个机制的局限也很明显:它验证的是你写好的测试用例,不是真实业务逻辑。如果你的测试覆盖不全,AI 跑过了测试不等于真的没问题。而且对于没有测试的项目,这个机制就派不上用场了。

另外这个功能目前主要在桌面版和 CLI 的 coding 场景里工作得最好,在消息平台(飞书、微信)上暂时默认不启用——因为不太可能让 AI 在聊天里跑测试然后给你看结果。

所以如果你主要是在命令行或者桌面版用 Hermes 写代码,这个功能值得试试。如果你主要是通过飞书或者微信跟它聊天,暂时可以忽略。

说到底,AI 说「做完了」,你信还是不信?这次 Hermes 给了你一个更信得过的答案。

⭐点赞、转发、关注和推荐一键三连⭐


💬 本文评论区已开启,但暂无读者留言。

本文转载自微信公众号,如有侵权请联系删除。

  • 标题: Hermes v0.18 引入了完成契约和验证机制,AI 说做完了不再可信,得拿测试结果来证明
  • 作者: lxiol
  • 创建于 : 2026-07-03 16:27:58
  • 更新于 : 2026-07-03 16:27:58
  • 链接: https://blog.lxiol.cn/2026/07/03/Hermes-v018-引入了完成契约和验证机制AI-说做完了不再可信得拿测试结果来证明/
  • 版权声明: 本文章采用 CC BY-NC-SA 4.0 进行许可。
目录
Hermes v0.18 引入了完成契约和验证机制,AI 说做完了不再可信,得拿测试结果来证明