代码是AI代理的运行基底
The Decoder··作者 Jonathan Kemper
关键信息
作者把 harness 描述为包含工具、接口、沙箱执行环境、记忆、权限边界、执行循环和反馈通道等组件。他们还警告说,当前的软件测试往往不完整,可能掩盖重要风险,因此需要更透明的评估机制。
资讯摘要
一篇来自伊利诺伊大学厄巴纳-香槟分校、Meta 和斯坦福大学研究者的新综述论文认为,代码不应只被看作 AI 代理的产出,而应被理解为它们进行思考和行动的媒介。作者认为,自治系统的真正瓶颈不是模型本身,而是包裹在模型外面的软件层,也就是他们所说的 “harness”。这个 harness 包括工具、接口、沙箱执行环境、记忆、权限边界、执行循环和反馈通道等组件,让一个无状态模型能够在长任务中持续运行。作者指出,没有这个层,语言模型仍然只是无状态的;有了它,模型才会变成能够规划、执行、测试并反复修正工作的实用代理。论文把长时间运行的代理系统分为三层:模型本身的能力、模型周围的基础设施,以及代理在运行中动态写出的代码。
作者特别强调,这些自生成的代码包括测试脚本、临时辅助工具、可复用技能和可执行工作流,但这一部分长期以来没有得到足够研究。论文还讨论了代码如何通过 Program-of-Thoughts、Chain of Code 和 Code as Policies 等方法,把模型和环境连接起来。对于多代理系统,代码、测试和执行日志会构成共享工作区,让经理、规划者、程序员、审查者和测试者等不同角色协同完成任务。作者还提到,Claude Code 和 OpenAI 的 Codex 等商业系统已经在实践中采用了类似架构。与此同时,论文警告说,现有软件测试往往不完整,可能掩盖关键风险,因此需要更透明的评估机制。

资讯正文
一篇新的综述论文认为,代码并不只是 AI 智能体产出的结果,而是它们思考和行动的方式。
要点
- Meta、斯坦福大学和伊利诺伊大学厄巴纳-香槟分校的一项综述发现,代码正日益成为 AI 智能体进行推理、行动以及彼此协调的基础。
- 这一转变的核心是一个被称为“harness”的外围软件层,它提供工具和隔离环境,把无状态模型转变为能够在持续循环中进行规划、执行和测试的功能性系统。
- Claude Code 和 OpenAI 的 Codex 等商业系统已经在遵循这一原则运行,但作者提醒不要产生错误的信任:当前的软件测试往往并不完整,可能掩盖风险,因此更透明的评估机制至关重要。
来自伊利诺伊大学厄巴纳-香槟分校、Meta 和斯坦福大学研究人员的一篇新综述论文,想改变我们看待 AI 智能体的方式。
他们的论点是,代码是智能体用来推理、行动并协同工作的基础。因此,他们认为,自治系统真正的瓶颈变成了包裹在模型外部的软件层,这大概会让 Gary Marcus 非常高兴。
作者将这一层称为“harness”,它涵盖从工具和接口到沙盒执行环境、记忆、测试、权限边界、执行循环以及反馈通道等方方面面。没有它,语言模型只是无状态的;有了它,模型就变成了一个能在较长时间内持续完成任务的工作型智能体。
为什么代码是合适的形式
作者认为,代码是智能体行为中正在运行的一部分,并列出了若干原因。代码具有可执行性,因此模型输出会变成你实际上可以检查的操作。它也具有可追踪性,因为中间计算会以结构化轨迹的形式呈现,系统可以读取并存储这些轨迹。它还会在各个步骤之间持续存在,因为运行中的程序会以某种形式记录任务进展,方便智能体日后重新接上。
论文把长时间运行的智能体系统拆分为三个部分:第一部分是模型自身的能力,比如推理和规划;第二部分是系统提供的基础设施。
最后是智能体即时编写的代码,包括测试脚本、一次性辅助工具、可复用技能以及可执行工作流等。作者表示,这些自生成的产物至今几乎没有得到足够的研究关注。
三个层次组织这一领域
在第一层,代码把模型与其环境连接起来。Program-of-Thoughts 或 Chain of Code 等方法,将实际计算交给可执行程序来完成,而不是只用语言去描述。其他系统,如 Code as Policies,则把自然语言指令直接转化为机器人控制代码。
第二层涵盖了让一个智能体在很多步骤中保持可靠的因素。这意味着规划、记忆、工具使用,以及一个反复进行的“计划—执行—验证”循环。这个循环用系统化检查取代了一次性的故障排查。计划会明确写出智能体打算改变什么。执行则在具有明确权限的沙箱环境中进行。随后,验证步骤决定结果是被接受、修改,还是交给人工审核者处理。
第三层则涉及多个智能体协同工作。代码集合、测试和执行日志会成为一个共享工作区,在这里,经理、规划者、编码者、审查者和测试者等专门角色分工合作。ChatDev 和 MetaGPT 等系统已经将这一点付诸实践,而且研究人员表示,它已经在真实产品中投入使用。Claude Code 现在可以把 pull request 审查外包给一整支 AI 智能体团队,这些智能体会并行扫描漏洞、安全缺陷和回归问题,而且它们自己无法批准变更。
生产系统已经遵循这种模式
作者以商业产品为例。Anthropic 的 Claude Code 把本地终端、开发环境和浏览器整合成一个工作流,在这个流程里,智能体会编辑文件、运行命令,并且必须遵守权限规则。OpenAI 的 Codex 和 GitHub Copilot 的 coding agents 则把类似的工作流迁移到托管云环境中,通过可追踪的 pull request 输出来整合变更。
这一层到底有多重要,Anthropic 一次意外泄露大约 500,000 行 Claude Code 源代码后变得显而易见。埋在其中的是一个用于任务整合的“dreaming”函数,以及其他用于引导模型作为编码智能体运行的技巧。后来,Anthropic 通过版权下架通知,促使 GitHub 删除了超过 8,000 个拷贝和分叉版本。
其他 AI 实验室也开始跟进。Deepseek 计划通过自己的产品 Deepseek Code 与 Claude Code 和 Codex 正面竞争,并正在北京组建一个专门的 “Harness” 团队,负责模型之外的一切事务,从工具使用到规划再到存储。该团队的核心公式是:模型加 harness 等于 AI 智能体。
这些生产系统也正在成为下一轮模型的训练数据。Cursor 的 composer 在真实使用轨迹上通过持续强化学习进行训练。OpenAI 的 Codex-1、GPT-5-Codex 和 GPT-5.1-Codex-Max 则是专门针对长时间、多步骤的编码会话进行训练,这些会话与 Codex 工作流相匹配。智能体与环境之间的边界本身也正在成为一个会学习的层。
当智能体开始微调自己的环境时
有几个研究系统把 harness 本身视为需要优化的对象。AutoHarness 会自动生成代码,用来过滤未授权操作;而 Meta-Harness 则通过把先前版本、它们的评估结果以及执行日志作为搜索空间,系统性地寻找更好的 harness 变体。其他方法则会挖掘遥测数据,以修订各个独立组件。Meta 的 hyperagents 甚至更进一步,把任务解决和自我修改结合在一个可编辑程序中,从而优化改进循环本身。
但作者指出,该领域仍有若干悬而未决的问题,正在拖慢发展:除了原始成功率之外,更需要有更有意义的评估;在仅靠测试不足以说明问题时,要检查结果的实质;在不引入回归的前提下利用自我改进;多个智能体之间的共享状态;人类监督;以及将能力扩展到包含图像或传感器数据的环境,比如 GUI 智能体和机器人。
他们对当前测试标准是否真的足够好尤其直言不讳。测试可能是不完整的,而图形界面的测试程序也可能漏掉中间步骤中的坏操作。模拟器会掩盖物理风险。恰恰因为它提供了可见反馈,一个执行框架可能滋生虚假的信心,而绿色勾号并不意味着代码就是安全的。作者建议,每一个被接受的动作都应附带文档,明确说明实际运行了哪些测试、哪些区域没有经过测试,以及还存在哪些风险。
研究人员认为,自治编码智能体的可靠性并不是来自更好的修复提示词,而是来自在模型周围的受控循环中,对状态转换进行严格监管。
来源与参考
收录于 2026-05-30