AI 智能体循环:自我纠错的编码智能体如何把活干完
AI 智能体循环把「提示加修补」变成一个自我纠错的闭环:智能体先写计划,再动手实现,然后对照计划检查自己的成果,循环往复直到完成。看看这个循环在 Claude Code、Codex、Gemini CLI、Cursor 和 Ralph loop 中是怎么运转的。
大多数人用 AI 编码智能体的方式,至今仍像在打乒乓球。你发提示,它回答,你发现哪里不对,再发提示。你成了那台纠错机器,每一回合都得守在循环里。
循环把这一切反了过来。你描述想要什么,智能体开始干活,自己写检查清单,自己找薄弱环节,反复运行直到结果靠得住。你不再是那个去抓错误的人,智能体抓自己的错误。
这种转变不是炒作。打造这些工具的人都在依赖它。Claude Code 的创造者 Boris Cherny 和 Cat Wu 谈的就是在智能体循环里写代码。给「Ralph loop」起名的 Geoffrey Huntley,则让智能体在一个朴素的 while 循环里跑一整夜。如今这个模式有了名字,在你照搬 Instagram 上那三条提示之前,值得先把它弄明白。
从提示乒乓球到循环
单条提示是一次性的。你问,得到一个答案,这笔交易就结束了。想让它变好,你得先察觉到差距,再发一次提示。把这一套放大到一个真正的功能上,你就是在手动做几十次微调。
AI 智能体循环把这道差距收进了智能体内部。你定一个目标,智能体规划、行动、查看结果、纠错,一遍又一遍,直到目标达成。你没有消失,你在最后做审阅。但你不再是每一次迭代上的瓶颈。
提示乒乓球让你每回合都待在循环里。真正的循环把智能体放进去。
一个 AI 智能体循环到底是什么
每个智能体循环都跑同样的四拍:规划、行动、观察、纠错。智能体决定下一步,把它做了(写代码、跑命令、读文件),看看发生了什么,再调整。Claude 写代码,跑测试,看到失败,修复,再跑测试。这个反馈就是全部诀窍所在。正是它让循环变成自我纠错,而不只是重复。
循环最强的版本,会把这几拍拆给三个角色:一个负责规划,一个负责构建,一个负责审阅。把它们分开,才能阻止智能体在写下答卷的同一口气里给自己的作业打分。
今天就能照搬的三命令循环
下面是眼下流传的那套做法,重新拆成三条 Claude Code 斜杠命令。每条贴一次,智能体就会创建对应命令,然后你按顺序运行它们。
规划者,/spec:
一次问我一个问题,直到你完全理解我想要什么。
然后把一份精确的计划写进 specs/project.md:目标、确切的
需求、边界情况,以及哪些在范围内、哪些在范围外。
写得简短犀利,别写成长篇小说。
构建者,/build:
读 specs/project.md,严格按它描述的来构建,不多做。
做完后,列出计划里的每一条需求,标明你覆盖了
哪些。
审阅者,/review:
把构建出来的东西和 specs/project.md 逐条需求对照。
对每一条,说明它是否被覆盖。写出需要的修正,
交回给 /build。只有整个计划都被覆盖时才放行。
三条命令,一个循环:spec 写计划,build 实现它,review 拿它和计划对照并把修正交回给 build。它会一直循环,直到每条需求都被满足。
计划是唯一的事实来源。审阅是拿构建去对照它,而不是对照一种感觉。
这底层就是 spec-driven coding:用来约束智能体的是写下来的 spec,而不是聊天记录。GitHub 的开源 Spec Kit 用 /specify、/plan、/tasks 和 /implement 把同一个理念正式化,而且它在 Claude Code、Copilot、Cursor、Codex CLI 和 Gemini CLI 上都能跑。
为什么全新上下文能让循环奏效:Ralph loop
2025 年年中,Geoffrey Huntley 给这套思路最直白的版本起了名:Ralph loop。它的想法是用一个朴素的 shell 循环,对着一份写好的 spec 一次次把同样的提示喂给智能体,让它挑一个任务并交付,然后启动一个上下文全新的智能体,再把一模一样的提示喂进去。
while 还有待办; do
agent --prompt "处理 todo.md 里的下一个任务" --non-interactive
done
不那么直观的地方,是上下文的重置。长会话会腐坏:窗口里塞满了旧的推理、走过的死胡同和过时的文件内容,模型会悄悄开始丢掉指令。每一次 Ralph 迭代都是一个全新的智能体,它从磁盘读取当前的代码库和待办清单,做完一个工作单元,提交,干净退出。Huntley 故意拿《辛普森一家》里的那个角色给它命名:它看起来蠢到不可能管用,但它就是管用。如果你见过一段长会话开始产生幻觉,你已经懂为什么一个全新的窗口胜过一个臃肿的窗口。
Claude Code 的 /loop 和 /goal
Claude Code 直接内置了循环原语。/goal 设定一个持久的终态,也就是「完成」长什么样,Claude 在每一轮过后都会对照它来评估进度,而不是只跑下一步。/loop 按某个节奏重复一个任务,或者重复到某个条件成立为止,形式有 /loop every 10m 或 /loop until: <condition>。两者一起用,就构成了一个自我驱动、自我终止的循环:Claude 一直处理当前状态与目标之间的差量,在目标被满足或你按 Ctrl+C 时停下。
关键细节是:循环保有连续性。它记得自己试过什么、为什么失败,所以每一轮都建立在上一轮之上,而不是重复同一个死胡同。这和 Ralph 那种清空上下文的重置是相反的取舍,两者都成立。要紧凑的自我纠错就用连续性,窗口腐坏了就用全新上下文。知道该出哪一招,才是真正的本事。
同一个循环,每家 provider 都有
循环不是 Claude 的某个功能,而是整个领域正在去往的方向。名字各异,形态如一。
| 工具 | 循环机制 | 它如何自我纠错 |
|---|---|---|
| Claude Code | /goal + /loop | 持久目标,每轮评估差量,达成即停 |
| Codex CLI | /goal | OpenAI 给出的「Ralph loop 版本」:跨多轮保持目标存活直到达成 |
| Gemini CLI | 智能体式 plan-act-observe | 规划、编辑、跑检查,无需逐步审批就自我纠错 |
| Cursor | agent 模式 | 规划步骤、编辑文件、跑编译器、修好自己弄坏的 |
| Spec Kit(任意智能体) | /specify /plan /tasks /implement | spec 在整个循环里是唯一事实来源 |
| Ralph / autoloop | shell while 循环 | 每次迭代对着一份写好的 spec 用一个全新智能体 |
公开场合里,Codex CLI 把循环推得最远。OpenAI 团队把它的 /goal 描述为他们对 Ralph loop 的诠释,而 a16z 的 Andrew Chen 让它在一个设备驱动上跑了一整夜,连续 14 小时无人干预。他也指出这会「让 token 用量翻一万倍」,这就是放任一个智能体磨上大半天所要付出的、诚实的代价。
陷阱:循环会放大一切
循环放大的不只是好的产出,它也会放大一个糟糕的计划。把一个自我纠错的智能体对准一份含糊的 spec,它会信心十足地构建出错的东西,再拿它对照同一份含糊的 spec 来审阅,然后放行。计划就是那根杠杆。一份犀利的 spec 省下十条提示,一份模糊的 spec 浪费一百条。
有两种失败模式要盯着。成本会失控:每一次迭代都烧 token,一个目标不清、又不设边界的循环能烧掉很多。还有,循环可能永远停不下来,要么宣布胜利,要么去追一个它永远满足不了的目标。给它设界:一个清晰的 until 条件、一个 token 上限,或者在合并前设一个人工检查点。一个不会停的循环不是自主,是失控狂奔。
在一支机队上运行循环
一个自我纠错的智能体,盯着它很容易。杠杆出现在你同时跑好几个的时候,每个都在自己的任务上循环,而这恰恰是盯着一个终端开始撑不住的地方。
AgentsRoom 就是为此而生。它是一个多智能体驾驶舱:每个智能体都有一个角色、一个实时状态点和自己的颜色,你从一个窗口里监管整支机队。往待办板上丢一张工单,一个智能体就会接走它,跑它的 plan-build-review 循环,再把一份干净的 diff 交给你。这就是落到实处的 spec-driven AI 编码:工单就是 spec,智能体跑循环,你审阅结果。
因为长循环会腐坏上下文,AgentsRoom 会替你盯着。每个智能体在每一轮结束时写一行状态,当一个智能体连续两轮不再更新它时,就会弹出一条警告,附带一个一键在全新上下文上重启的按钮,正是 Ralph loop 所依赖的那种全新窗口重置。想知道它怎么运转,去看上下文漂移检测这一页。
而且因为循环与 provider 无关,你不会被锁死在某一家。一张工单跑在 Claude Code 上,下一张跑在 Codex 上,再一张跑在 Gemini CLI 上,全在同一个仪表盘里,每个都在自己的 git worktree 里循环,让并行的智能体永不相撞。下班前把它们放出去,第二天早上审阅 diff,这正是后台编码智能体和夜班的全部意义。
设一次目标,让循环把它收尾,最后审阅。下载 AgentsRoom,查看 provider 兼容性矩阵,再读读关于按智能体审阅和多 provider 支持的更多内容。
下载 AgentsRoom
在一个窗口中运行你所有项目的 Claude 智能体。
配套应用:随时随地监控你的 Agent
使用 Claude、Codex、Gemini CLI 或其他 AI 提供商。
把 Bug 和需求直接发送到您的公开待办清单。
AgentsRoom 实际运行一瞥。