新智元报道
【新智元导读】循环真正的门槛,并不在于让AI一直跑,而在于它能不能自己踩住刹车。
「不再写提示词了」——最近,这句话正在AI圈疯传。
从OpenClaw之父、如今在OpenAI主攻下一代个人智能体的Peter Steinberger,到Claude Code创造者Boris Cherny,这些硅谷大佬,正集体转向「循环」(loops)。
给这股风潮命名为「循环工程」(loop engineering)的谷歌工程师Addy Osmani,也在其中。
Cherny说,自己现在几乎不亲手写提示词了。
有一个智能体在替他给Claude写提示词,他只跟那个「协调一切」的新Claude对话。
他还撂下一句狠话:十年之后,循环以及类似的功能将是他最为自豪的工作成果之一。
Steinberger说得更绝:别再给编程智能体写提示词了,你该设计喂给它们提示词的循环。
他还在X演示自己的循环:让Codex每5分钟醒一次,自动维护代码仓库、分派任务,部分工作全自主落地。
大佬们反复念叨的这个「循环」,到底是什么?
最近,Claude Code团队在官方博客里给它下了明确定义,还一口气拆出四种循环类型,为「智能体自动干活」立了工程规矩。
Claude Code团队发文,正式定义「循环」,并拆出回合制、目标、时间、主动四种典型循环。
这背后说穿了:AI编程正在从「写一句话」,变成「设计一套会自己跑的系统」。
一个提示词换来一次回答,一个循环换来的,是合上电脑之后还在替你干活的系统。
而程序员,正在从写内容的人,变成设计系统的人。
四种循环
四种「停止条件」
一个循环到底是什么?
X上吵了很久,答案也是五花八门,Claude Code团队给出的定义很明确:
循环,就是智能体重复执行一轮又一轮的工作,直到触发停止条件。
四种循环,就是四种「停止条件」,这句话是读懂Claude Code这篇关于循环的技术博客的关键。
顺着「怎么触发、怎么停止、用什么原语、适合什么任务」几个维度,Claude Code把循环拆成四种。
第一种,回合制循环(turn-based)。
回合制循环,人逐轮控制,每发一句提示词启动一轮。(图源:Claude官方博客)
人逐轮控制,你写一句,AI跑一轮,检查完再写下一句,全程你握着方向盘。它适合零散的短任务,不进流程、不上日程。
想让它少来回几趟,就把你平时手动检查的步骤,写进一个SKILL.md文件,让AI自己验收。
检查越能量化,它越能自己判断做没做对,你要盯的地方就越少。
第二种,目标循环(/goal)。
目标循环,评估器模型对照标准判定,没达标就打回重做。(图源:Claude官方博客)
先把目标写死,比如「把首页Lighthouse分数跑到90以上,试5次就停」。
每次Claude想停,一个评估器模型就来对照你的标准,没达标就打回去接着干,直到目标达成,或者用光你设定的轮数。
测试通过数、分数阈值这类可量化标准之所以好用,是因为Claude不用自己纠结「够不够好」,评估器替它判。它不必自己猜「差不多了吧」就过早停手,循环也能干净利落地收尾。
第三种,时间循环(/loop和/schedule)。
按时间间隔触发,像闹钟。有些活是重复的,任务不变,只有输入在变,比如每天早上总结一遍Slack消息。
有些活得盯着外部系统,最简单的办法就是按时间间隔去查一眼,看变了什么再反应,比如一个可能收到评审、也可能CI挂掉的PR。
用/loop就能按间隔重跑一条提示词。想让它在你关机后照跑,就用/schedule把循环搬上云。
这套逻辑,和程序员熟悉的定时任务(cron)几乎一模一样。
第四种,主动循环(proactive)。
主动循环,事件或时间触发,全程无人值守,跑到你亲手关掉。(图源:Claude官方博客)
事件或时间触发,全程无人值守。
配合auto mode和动态工作流,把长活儿全自动串起来:每小时扫一遍反馈频道,收到一份bug报告,就自动分诊、修复、回复,一条龙跑完,全程不停下来问你要权限。
每个任务达成目标就退出,整条例行任务则一直跑到你亲手关掉。它适合那些源源不断、边界清晰的活:bug上报、问题分类、依赖升级。
四种循环,说穿了是四种「什么时候该停」的答案:人来判、评估器来判、时间来判、事件来判。
再往底层看一层。
据官方的Agent SDK文档,这套机制的内核也十分简单:
Claude评估你的提示词,调用工具去动手,拿回结果,然后重复,直到某一轮它不再调用任何工具,循环才结束。
Claude Code官方Agent SDK文档给出的智能体循环:提示词进入后,Claude评估、调用工具、结果回流再评估,直到某轮不再调用任何工具,才输出最终答案。(图源:Claude Code官方文档)
所谓自主智能体,本质上就是这么一个圈。
真正改变的
并非循环本身
当然,也不能把「设计循环」说成一场从0到1的革命。
定时任务、编排(orchestration)、反馈循环,这些做法早就有了,Claude这次做的,更多是把它们统一命名、归拢成一套分类标准。
那么,到底什么变了?重点在「停止条件」。
在Claude Code官方总结的一堆实战技巧里,被单独拎出来、标为「最有价值的一条」的,是验证(verification):
给Claude一个能自己检查产出的方式。
道理不难懂。
比如,让工程师做网页却不给浏览器,页面能好看吗?给了浏览器,他每改一版都能当场看到效果,反复调到满意才交。
而模型循环的威力,恰恰就来自这种「自己闭环」的本事。
在这个过程中,提示词没有死,它只是退化成了循环里的一个组件。
真正的核心,变成停止条件设计、验证器(verifier)设计、token预算控制、多轮执行策略。
没有闸门的循环
强大且危险
循环,是不是意味着你可以放手让AI自己干一整天?
当然不是。
第一个拦路虎是钱。不设上限的循环,能把token成本烧穿。
据报道,Steinberger自称是「手握无限token的男人」,因为免费token正是在OpenAI上班的福利之一。普通人没这待遇。
第二个更隐蔽。智能体会陷入一种「看似有进展、实则原地打转」的死循环:反复去改同一个文件,却始终跑不出一个新的通过测试。
它甚至会信心满满地,把一个错的方案越做越「完整」。
工程社区对此的共识很直接:循环很强,但没有闸门(gating condition)就很危险。
在Reddit的工程讨论里,有人把必须的闸门总结成三条,写循环之前就得先设计好。
done条件:且必须机器可判定,比如测试全绿,或者某个spec项被关闭;
硬上限:包括最大轮数和最大花费,专防成本失控和无限循环;
无进展检测:一旦发现它反复碰同一批文件却没有新的通过测试,就强制停下。
官方也给了一整套省钱纪律:
小任务别硬上多智能体;
能用便宜快的小模型,就别都用最强的;
大规模跑之前先拿一小片试跑;
确定性的活交给脚本,跑脚本比让模型一步步推理便宜得多;
例行任务别跑得比它该跑的更勤。
所以,循环是一整套「怎么把AI管住」的设计,而不是「撒手让AI乱跑」。
这也决定了它现在最适合的,是边界清晰的结构化任务,而非天马行空的自由发挥。
以前拼谁会说话
现在拼谁会搭系统
这一轮变化中,真正改变的是编程重心:从「内容设计」,挪到了「行为系统设计」。
以前你设计的是一次指令的内容,现在你设计的是一整套行为:它怎么触发、怎么验证、怎么停。
Claude Code官方给想设计循环的人们留了个简单的起点:
去看你自己每天都在干的活,挑其中一个瓶颈环节,然后问自己3个问题:
验证:那道验证检查,我能不能替它写出来?
目标:目标描述够不够清楚?
节奏:活儿是不是按固定节奏出现的?
只要有一个答案是肯定的,你就找到了第一个可以交出去的循环。
AI编程,以前拼的是提示词技巧,现在拼的是谁会搭系统:谁能设计出一个自己会验证、自己知道该停的循环。
写提示词的时代不会一夜消失,但它的光环正移向循环。
而真正的循环设计者们,才刚刚上场。
参考资料:
https://claude.com/blog/getting-started-with-loops
https://code.claude.com/docs/en/agent-sdk/agent-loop
https://support.claude.com/en/articles/14554000-claude-code-power-user-tips?utm_source=chatgpt.com https://www.reddit.com/r/ClaudeWorkflows/comments/1ujy4wq/workflow_designing_robust_claude_agent_loops/
编辑:元宇