给编码代理证明义务而非指令,六AI代理两小时完成驾驶舱屏幕
六个AI代理仅用两小时就完成了一个完整驾驶舱屏幕的代码。这不是关键所在。
代码生成已不再是瓶颈,证明才是。多代理工作流的价值完全取决于其验证harness,它要求四项证明:视觉与设计一致、真实浏览器点击流程、测试全部通过,以及punch-list为空。给代理证明义务,而非更长的指令。
这一判断来自实际开发经历。过去开发者把大量精力花在提示词优化上,希望代理一次生成正确代码。现在重点转移到如何让代理产出可验证的结果。六个代理协作两小时就写完整个屏幕界面,速度惊人,但真正让这个工作流可用的,是后续严格的验证链条。没有这些证明,生成再快也只是演示,无法直接上生产。
当前LLM编码代理普遍存在幻觉和上下文丢失问题。代理容易编造不存在的API或遗忘前面步骤,导致输出偏离需求。单纯延长指令往往适得其反,上下文窗口被塞满后模型表现反而下降。转向证明义务意味着把验证责任前置,让代理必须产出能被自动或半自动检查的产物。这套思路直接针对可靠性痛点,把开发者从反复修复幻觉的循环中解放出来。
代码生成已不再是瓶颈,证明才是
过去一年,编码代理在生成简单组件和样板代码上的能力提升显著。六个AI代理能在两小时内完成一个完整驾驶舱屏幕,这说明生成环节的速度已不再是主要制约因素。真正拖慢交付节奏的是后续验证和纠错成本。
TL;DR明确指出,代码生成不再是瓶颈,证明才是。多代理工作流只有在配备强大验证harness时才有实际价值。开发者不再满足于代理吐出代码片段,而是要求整个流程能产出可直接合并的产物。这要求把注意力从“怎么让它写得更快”转向“怎么让它写得可验证”。
幻觉问题放大了这一转变。代理可能生成视觉上接近但逻辑有偏差的界面,如果没有系统化证明,开发者需要手动逐行检查,效率大幅下降。上下文丢失则让多轮对话变得不可靠,前几轮定义的变量或样式在后续步骤中被遗忘,导致碎片化输出。
因此,核心策略从指令驱动转向义务驱动。代理不再只是接收“写一个按钮”,而是被要求提供“这个按钮必须满足哪几项可检查条件”。这种转变让工作流更接近软件工程的常规实践:写代码和验证代码同等重要,甚至后者更关键。
四项证明义务的具体定义与执行
验证harness包含四项明确证明义务,每一项都指向不同维度的问题。
第一项是视觉一致性证明。代理生成的界面必须与设计稿像素级接近,通常通过截图比对工具或视觉回归测试完成。第二项是真实浏览器中的流程点击证明。不能只靠静态分析,必须在真实浏览器环境中模拟用户点击,确保导航、交互和状态转换都正常工作。
第三项是绿色测试。所有单元测试、集成测试必须全部通过,测试覆盖率需达到预设阈值。最后一项是空punch-list,即待办事项列表为空,意味着没有已知bug或未完成任务。
这些义务不是建议,而是强制检查点。工作流会在每个代理完成任务后自动触发对应验证,只有四项全部通过才能进入下一阶段。执行方式通常结合CI工具、Playwright等浏览器自动化框架以及视觉diff工具。开发者预先定义好检查脚本,代理产出的代码必须能让这些脚本返回成功结果。
这种机制直接减少了幻觉带来的返工。代理知道自己输出的东西会被严格检查,因此更倾向于保守选择已知可靠的模式,而不是随意发明新实现。
用户自有记忆如何持久化代理状态
Hugging Face提出的“Give Your Coding Agents a Memory You Own”强调,用户应该拥有并完全控制代理的记忆系统,而不是依赖平台提供的临时上下文。
传统编码代理把对话历史或向量数据库放在云端,上下文容易在会话结束或模型切换时丢失。用户自有记忆则把这些信息存放在本地文件、Git仓库或个人知识库中。每次代理启动时,都从用户可控的持久化存储加载最新状态,包括之前定义的架构决策、样式规范、已验证组件等。
这种做法解决了上下文丢失的核心问题。代理不再每次都从零开始回忆,而是直接读取用户维护的记忆文件。开发者可以手动编辑这些记忆,确保关键事实不会被模型幻觉覆盖。同时,记忆内容可以随项目一起版本控制,团队成员共享同一套可靠上下文。
在多代理场景中,这一持久化记忆尤为重要。不同代理负责不同模块时,通过共享同一份用户拥有的记忆文件,避免各自维护一套相互冲突的假设。记忆系统还可以记录过去验证失败的案例,让后续代理主动回避类似错误。
证明义务如何减少幻觉与指令膨胀
传统做法是不断加长提示词,希望通过更详细指令压制幻觉。但指令膨胀带来新问题:上下文窗口被塞满,模型注意力分散,实际效果往往下降。
证明义务采取完全不同的路径。它不要求代理“记住”更多规则,而是要求代理产出能被外部工具严格验证的产物。视觉一致性检查、浏览器流程验证、测试通过率这些都是客观可量化的指标,代理必须生成满足这些指标的代码,而不是靠主观描述。
实际差异体现在可靠性上。长指令可能让代理在某一轮输出看起来正确,但后续轮次容易偏离。而证明义务在每个关键节点都设置关卡,只有通过验证才能继续。这相当于给多代理工作流加上形式化约束,显著降低幻觉导致的级联错误。
结合用户自有记忆后,效果进一步放大。代理不仅知道当前任务的证明要求,还能参考历史验证记录,主动选择低风险实现路径。指令从“写得更详细”转向“产出可证明的结果”,提示词反而可以保持简洁。
开发者日常工作流中的集成方式
中文开发者可以在现有项目中逐步引入这套机制,无需彻底更换工具链。
首先建立用户自有记忆仓库。可以是一个单独的Markdown文件夹或JSON文件,记录项目规范、已验证组件列表、历史验证结果。每次启动Cursor、Claude或其它编码代理时,通过自定义指令或插件加载这些记忆文件,确保代理从可靠上下文开始工作。
其次定义四项证明义务的自动化检查脚本。视觉一致性可使用Percy或Applitools,浏览器流程验证推荐Playwright,测试框架保持Jest或Vitest,punch-list则可通过线性issue管理或简单文本文件实现。把这些检查整合进GitHub Actions或GitLab CI,在代理提交代码后自动触发。
日常开发中,开发者把大任务拆成小块,每块都附带明确的证明要求。例如“实现登录页,要求视觉diff小于5%,所有登录流程在浏览器中可点击通过,单元测试覆盖率90%以上”。代理完成后再人工快速复核空punch-list。
这种集成方式特别适合中型团队。记忆文件可以放在项目根目录,随代码一起迭代,避免知识随人员流动而丢失。同时,证明义务让非技术管理者也能通过验证结果判断进度,而非仅依赖演示。
当前证明机制仍未解决的边界
尽管证明义务和自有记忆显著提升了可靠性,但仍有几类问题目前缺乏明确解决方案。
复杂业务逻辑的深层正确性仍难完全证明。四项义务覆盖了视觉、交互、测试和待办事项,但对于涉及复杂算法或外部系统集成的逻辑,测试可能无法覆盖所有边缘情况。信号中未提供如何形式化证明这类深层属性的具体方法。
记忆同步成本在大型项目中可能成为新瓶颈。当团队规模扩大、分支增多时,保持所有代理读取同一份最新记忆的开销会上升。目前还不清楚最佳的同步频率和冲突解决机制。
幻觉残留问题也未完全消除。代理仍可能生成通过表面验证但存在隐蔽漏洞的代码,例如安全性问题或性能反模式。四项证明义务目前主要针对功能正确性,对非功能性需求的覆盖仍不充分。
这些边界表明,证明机制虽有效,但不是万能解。开发者仍需结合人工审查和领域特定验证工具,才能在关键生产系统中达到可接受的可靠性水平。
参考来源
- 原文作者:知识铺
- 原文链接:https://index.zshipu.com/ai001/post/20260904/%E7%BB%99%E7%BC%96%E7%A0%81%E4%BB%A3%E7%90%86%E8%AF%81%E6%98%8E%E4%B9%89%E5%8A%A1%E8%80%8C%E9%9D%9E%E6%8C%87%E4%BB%A4%E5%85%ADAI%E4%BB%A3%E7%90%86%E4%B8%A4%E5%B0%8F%E6%97%B6%E5%AE%8C%E6%88%90%E9%A9%BE%E9%A9%B6%E8%88%B1%E5%B1%8F%E5%B9%95/
- 版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 4.0 国际许可协议进行许可,非商业转载请注明出处(作者,原文链接),商业转载请联系作者获得授权。
- 免责声明:本页面内容均来源于站内编辑发布,部分信息来源互联网,并不意味着本站赞同其观点或者证实其内容的真实性,如涉及版权等问题,请立即联系客服进行更改或删除,保证您的合法权益。转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。也可以邮件至 sblig@126.com