用白话理解 AGENT 闭环

Loop Engineering 入门

好的 Agent Loop 不是让 AI 永远干下去,而是让一个有边界的系统知道目标、一次做好一小步、读取真实证据、记住进度,并因正确的理由停止。

从逐轮催促 Agent,转向设计整个系统

没有工程化 Loop 时,人要不断在目标、Agent、测试结果和下一条 Prompt 之间搬运信息。AI 也许很能干,但每次前进仍依赖人看到结果、判断问题,再亲手决定下一步。

Loop Engineering 把这些重复协调外化成系统:触发工作、装配一次有限尝试、读取证据、保存状态,再选择安全路线。人移到更外层,负责定义合同、批准高风险后果,并在循环失败时改进系统。

先记住三件事

  • 自动化不等于没人管

    人离开的是重复路由,不是责任。

  • Loop 包在模型外面

    Prompt 和工具调用只是更大运行系统里的部件。

  • 停止本身也要设计

    成功、阻塞、升级和预算耗尽都是合理终点。

先看懂最小可用闭环

Loop 最简单的含义是:一次观察会改变下一步。Agent 读取当前状态、采取动作、观察环境、调整计划,最后做出一次路线判断。

真正的工程工作发生在这条循环周围:让目标可观察、让每个动作有边界、把高信号反馈带回来,并防止返回箭头退化成无限重试。

最小结构只有三件关键事

  • 目标

    必须是能对照的结果,而不是“继续优化”这种活动描述。

  • 真实反馈

    环境需要返回能改变下一次行动的事实。

  • 路线

    每一圈都要落到重试、停止、阻塞、升级或取消。

把意图变成可执行契约

“把结账体验做得更好”给了 Agent 很多自由,却没有给控制器足够的判断依据。第一次尝试之前,先把意图变成系统能够读取的字段。

一份好用的运行合同需要写清目标、范围、非目标、允许的工具、验收证据、预算、停止条件和升级负责人。它不必像法律文件,但必须精确到系统不用临时发明规则也能决定下一条路线。

防止漂移的合同字段

  • 范围与非目标

    同时说明可以改什么,以及必须保持不动的东西。

  • 证据与权限

    说明什么能证明成功,以及允许触碰哪些真实系统。

  • 预算与升级

    限制尝试、时间、Token 和并行度,并指定谁来接手。

让一次尝试只完成一个有限任务

长时间运行的 Loop 不应该要求一个上下文窗口解决整个项目。一次尝试只调查一个窄假设,做一个小而最好可逆的改动,运行声明过的检查,再记录学到了什么。

尝试失败时,有价值的产物不只是代码。失败测试、日志、被否定的假设、成本与剩余不确定性,都会变成下一次尝试更好的输入。Loop 正是这样收敛,而不是机械重复。

有限尝试保护什么

  • 上下文质量

    任务足够小,模型才有空间理解真正相关的事实。

  • 可逆性

    小 diff 更容易检查、撤销,也更容易与证据对照。

  • 学习价值

    只要证据被保存,失败的尝试也能推动系统前进。

让“完成”成为裁决,而不是感觉

语言模型可以给出逻辑自洽、语气自信的解释,却仍然错误理解了真实环境。所以执行者说“做完了”只能算一项主张,不能直接当作完成信号。

独立证据既可以是确定性的,例如测试或数据库不变量;也可以是判断性的,例如另一位审查者按 Rubric 评价。强 Loop 会组合多层信号:便宜检查自动跑,真实 E2E 观察用户行为,而品味、意图与重大后果交给人。

证据需要分层

  • 确定性检查

    测试、类型、不变量和策略规则快速且可重复。

  • 真实场景观察

    浏览器、CI、日志、截图和用户路径能发现环境差异。

  • 人的判断

    意图、品味、取舍与不可逆后果仍然属于人的领域。

把记忆移出对话窗口

上下文窗口是工作记忆,不是数据库。长对话会被压缩,Agent 会重启,文件会变化,早期假设也会过期。如果进度只存在聊天里,新尝试就可能重复旧调查,甚至推翻已经正确的修复。

持久状态要保存恢复所需的事实:当前目标、允许范围、工作队列、试过的方案、测试输出、重要决策、剩余阻塞、成本,以及上一次为什么停止。Git、进度文件、任务系统或数据库都可以承担这个角色。

持久状态不是聊天全文

  • 事实优先

    保存当前代码、检查、决策和阻塞,而不是所有思维过程。

  • 每轮刷新

    每次尝试重新读取当前现实,而不是迷信旧记忆。

  • 可恢复交接

    不同 Agent 或人无需重建整段对话也能继续。

设计多种正确的停止方式

不安全的 Loop 只认识一个终点:成功。其他一切都会自动变成下一次重试。可靠控制器会把停止看成路由问题,并在运行前就命名所有终态。

PASS 表示声明过的证据已满足;BLOCKED 表示外部依赖阻止推进;ESCALATE 表示系统缺少权限或判断力;BUDGET EXHAUSTED 表示实验已经触顶;CANCELLED 表示人或策略主动结束。它们都不应该被伪装成无声失败。

停止控制器要问四个问题

  • 证据通过了吗?

    通过就打包证据并停止,不再重复同一任务。

  • 失败能教会下一轮吗?

    只有出现新且可行动的信息、预算仍够时才重试。

  • 需要人来决定吗?

    遇到模糊、高风险、权限不足或预算耗尽就升级。

拿掉一个部件,看 Loop 怎样坏掉

可靠行为来自多个部件协同,而不是某个模型单独足够聪明。缺少证据、记忆、权限边界、隔离空间或停止控制器时,再强的模型也无法长期补偿。

理解 Loop Engineering 最快的方法,是故意把机器拆坏。每个缺失部件都会产生可识别的故障模式,系统应该能监测这些信号并修复对应层。

每种故障都有特征

  • 观察症状

    重复尝试、过早完成、diff 冲突和审查积压都是系统信号。

  • 修对应层

    不要把每次失败都归因于 Prompt 不够长或模型不够大。

  • 从 Trace 改进

    把重复事故固化为测试、Skill、Hook、Grader 或更窄权限。

看清 Loop Engineering 里的五层循环

人们会在不同时间尺度上使用“Loop”。最内层是模型在一次运行中调用工具;外一层由验证器推动重试;更宽的运营 Loop 发现工作并跨会话保存;改进 Loop 根据 Trace 修改 Harness;最外层的人类 Loop 负责目标、权限、风险和后果。

这些层是嵌套关系,不是相互替代。更好的 Prompt 仍然重要,上下文仍然要策划,Harness 仍然提供工具和护栏。Loop Engineering 追问的是:这些部件怎样在时间中反复与现实互动。

每一层回答不同问题

  • Agent 能行动吗?

    执行循环把模型决策连接到工具和环境反馈。

  • 工作能收敛吗?

    验证与运营把多次尝试变成持续、证据驱动的进展。

  • 系统能负责吗?

    改进与人类 Loop 管理学习、权限和真实世界后果。

走一遍真实的 CI 修复 Loop

实用 Loop 可以远小于“软件工厂”。想象一个只响应结账测试失败的 Routine:CI 是触发器,合同把修改限制在结账模块,Agent 在隔离分支里工作,独立检查决定下一条路线。

关键产物不只是补丁。一份好运行应该交付证据包:什么触发了工作、改了什么、跑了哪些检查、还不确定什么、用了多少预算、为什么停止,以及是否仍需要人工批准。

适合第一次部署的形状

  • 稳定信号

    选择触发与验收都明确的工作,例如可复现的 CI 失败。

  • 最窄权限

    只给任务确实需要的权限与最小可写范围。

  • 可审查交付

    以小 diff、证据、停止原因、成本和已知缺口收尾。

自动化下一轮之前,先回答七个问题

当任务会重复、环境能够返回有意义证据,并且下一步可以被限制时,Loop Engineering 才最有价值。如果工作是确定性的、很容易写成脚本,那就直接用脚本;如果成功无法判断,或后果无法安全隔离,就让人继续留在执行路径里。

从一个工作流、低权限、可见 Trace 和很小的尝试上限开始。密切审查前几次运行。只有当系统能解释它看到了什么、改了什么、为什么停止、还不确定什么时,才逐步扩大自治。

第一个 Loop 检查表

  1. 什么可观察结果代表工作结束?
  2. Agent 可以改什么,哪些内容明确不在范围内?
  3. 哪些证据来自环境,而不是 Agent 自己的报告?
  4. 一次有限尝试做什么;尝试、时间、Token 和并行度预算是多少?
  5. 进度、证据、决策与阻塞保存在哪里,怎样跨越对话?
  6. 哪些结果会重试、停止、阻塞、取消或升级给哪位负责人?
  7. 重复失败怎样变成测试、Skill、Hook、Grader、工具或更安全策略?

不要混淆这些设计尺度

  • Prompt这条指令怎样表达?

    一次尝试中的一个控制输入。

  • Context模型此刻应该看到什么?

    为一次推理选择的高信号信息。

  • Harness这个 Agent 能安全地做什么?

    模型周围的工具、权限、沙箱、Hook、记忆和恢复。

  • Loop工作怎样持续推进并停止?

    触发、合同、尝试、证据、状态、路由和人工边界。

  • Factory大量 Loop 怎样规模化组织?

    队列、隔离、审查容量、治理与组合层学习。

Loop Engineering 不是让 AI 一直做,而是设计系统怎样知道下一步、怎样证明做对、怎样在该停时停下,并把失败变成下一次更好的运行。

术语说明:“Loop Engineering”是正在形成中的 AI Agent 实践标签,不是单一正式标准。本指南综合了 2024–2026 年 Anthropic / Claude、Addy Osmani、OpenAI、LangChain 与 IBM 的公开工程资料,不宣称某个个人是绝对首创者。

Ad Blocker Detected

We noticed that you are using an ad blocker. This site relies on advertisements to provide free content and stay operational.

How to whitelist our site:

To continue accessing our content, please disable your ad blocker or whitelist our site. Once you've disabled it, please refresh the page.

Thank you for your understanding and support! 🙏