本文翻译自Anatoli Kopadze的Loops explained: Claude, GPT, Mira and what actually works。
AI已经走进每个人的生活很多年了。但大多数人每天使用它的方式,仍然是效率最低的那种:输入请求、等待结果、修改、再问一遍,全程手动操作。
这并不是因为更复杂的方法,而是因为从来没有人把它讲得很清楚。
更高效的方法就是循环(循环)。这正是当前最顶尖的 AI 工程师们关注的核心问题。这篇文章要补上没人讲透的那一部分。
读完之后,你对 Loop 的理解将超过你时间线上的大众:它是什么、底层到底如何运作、什么时候值得用、什么时候是陷阱、如何在 Claude 或 ChatGPT 里手动搭建一个基础版本,以及哪些简单版本值得你在日常生活中使用。
大多数人是怎么用AI的?
仔细看看"一次只发一个请求"这个习惯,因为它就是问题的全部根源。每一步都要经过你:你决定问什么,你判断答案好不好,你决定下一步做什么。AI不推它就不动,你一停手它就停。
这种方式没什么不好,但它有天花板。**你就是引擎,**AI只是你手中的工具,而工具本身不会自己动起来。
还有另一种工作方式,这也是全球顶尖工程师正在改变开发方式的原因:不再是一步带着AI走,而是逐步把目标定位它,让自己跑完整个流程。它会自己规划、动手、检查自己的结果、修改不足之处,反复直到迭代达标。你退出循环之后,工作仍然继续。
Peter Steinberger(@steipete):每月一次的提醒------你不该再去"提示"Smashing Agent了,你应该设计去能提示Agent的循环(Loop)。
这两位尊敬的工程师,用不同的话表达了同一个意思。大多数人读到这类话,心里其实并虔诚它在实践中到底意味着什么。所以我们来把它拆解清楚。
什么是循环?
提示(提示词)是一条单次指令。循环(循环)一个目标,AI会持续朝着这个目标努力,直到达成状态。可以把它理解为一个"递归式目标":你定义一个目标,AI自己迭代直到完成。
提示给你一个答案,然后等你决定下一步。而循环会自主运行完整个周期,包含五个阶段:
DISCOVER(发现) → 弄清楚需要做什么
PLAN(规划) → 决定怎么做
EXECUTE(执行) → 动手去做
VERIFY(验证) → 对照目标检查结果
ITERATE(迭代) → 没达标?把结果反馈回去,重新来一轮
这五个阶段里,真正承担核心工作的是其中三个------Verify、State(状态记录)、Stop Condition(停止条件)------也是大多数人理解循环时最容易出错的地方。
验证()是循环的核心。 如果验证对结果的真实检验,你拥有的就不是一个循环,而是一个不断自我认同、自我重复的代理。检验机制是把"重复"转化为"进展"的关键。它硬是一个没有验证性测试("代码通过")、一个可量化的条件("数值是否与X"),或者模型用来打分的评分标准(红字)。没有检验,代理就是在给自己的作业打分------并完成工作的模型,往往是无数的评分者。
**状态(状态记录)让循环具备学习能力。**每一轮迭代,AI都必须记住自己已经尝试过什么,否则会无限重复同一个错误。一个真正的循环会在旁边维护一个小型记录:已完成什么、失败了、下一步是什么。这样明天的运行可以从上次的进度继续,是从零开始------这也是成本开始攀升的地方(后面会讲)。
**停止条件(条件)让循环保持清醒。**没有退出的循环会一直运行,直到成功、崩溃或把机制出来你的账户余额锻炼。任何严谨的循环都应该有两种成功停止方式:达标,以及硬性上限(例如"尝试8次后停止并报告")简洁。这一步,你造的就是一台可以彻夜运行却毫无意义的机器。
Prompt 给 AI 一个指令。Loop 则给 AI 一份工作、一组完成判断与否的标准,以及一条何时放弃的规则。
你真的需要 Loop 吗?
大多数文章都会先把环路卖给你,再告诉你它什么时候是个错误选择。下面才是真正资深的人在用的判断标准。只有以下四条全部满足时,搭建环路才是值得的:
-
**任务会重复发生,至少每周一次。**低于这个频率,搭建成本根本回不来。一次性任务,用一条好的提示就足够了。
-
**存在可以自动拒绝劣质输出的机制。**一次测试、一次类型检查、一次构建、一条硬性规则。如果没有任何东西能判定结果失败,循环就只是空转。
-
特工确实能够独立完成工作,而不是把一半的工作丢还给你。
-
**"完成"是判断依据,而不是判断依据。**如果质量的好坏取决于个人评分,那最终还是人来拍板更靠谱。
只要有一条不满足,就把它设置为手动提示来用就好。这个话题最真实的真相是:循环工程是真实存在的,但大多数人目前还不需要它的重型版本。每个人都用上或轻量版本,后面会讲到。但你需要明确一个界限划在哪里。
为代码而生的版本
Loop最先在软件开发领域兴起,因为代码是世界上最容易被验证的东西------测试通过就是通过,失败就是失败,没有任何争辩的空间,所以AI永远明确自己是否完成了任务。
一个编程循环,会被赋予一个目标和一套严格的检验方法:
▸ LOOP SPEC(循环规格说明)
GOAL(目标):/tests/auth 下所有测试通过,lint 检查无误,无类型错误。
EACH ITERATION(每轮迭代):
1. 运行测试套件,阅读每一条失败信息
2. 挑出影响最大的那个失败问题
3. 编写能修复它的最小改动
4. 重新运行测试、lint 检查与类型检查器
VERIFY(验证标准):测试全部通过 + 零 lint 警告 + 零类型错误
STOP WHEN(停止条件):验证通过,或达到 8 次迭代上限
ON STOP(停止后操作):总结改动内容与仍未解决的问题
而在底层,一个真正的循环是由五个模块构建而成的。Claude Code 和 Codex 目前已经能够支持全部五个模块。
1.自动触发(心跳机制)
这会让成为"循环"而不是"间歇运行"的定时器。你定义好提示、运行频率和目标,它就会按计划自动运行,不需要你手动启动。在 Claude Code 中,/loop命令会按设定间隔重复运行某个提示,/goal命令会让会话持续运行,直到你设定的条件真正被满足;钩子(hooks)能在 Agent 周期的特定节点触发命令;然后把它挂载到 cron 定期任务或 GitHub Actions上,则让它在您关闭笔记本电脑后继续运行。结果会主动找到您,而不是需要您主动去查。
2.技能(可复用指令集)
用每次运行都重新粘贴一大段说明,不如把它们保存成一份文件,让循环极限运行时直接读取:规则、需要遵循的模式,以及一份绝对不能触碰的硬性禁区清单。这样的自动化任务只需按名称调用这个技能,这种重复性工作就能保持可维护性,而不会在无人更新的排期表里慢慢失效。
3. 子代理(让"执行者"与"审核者"分离)
循环中最有用的一个结构性技巧,就是把完成工作的Agent与检查工作的Agent分开。**写代码的模型,往往对自己过度宽容,难以侦评判断自己的结果。**用一个指令不同、有时甚至是能力更强负责(且推理强度设置更高)的第二个Agent,捕捉去第一个Agent自我思考后留下的问题。你的"执行者"Agent可以又快又省,"审核者"Agent则可以又慢又严格。这种角色分离,才是质量提升的主要来源。
4.集成组件(增强能力"只是做"而不是"提建议")
这就是区分以下两个关键:一个说"修复方案在这里"的代理,与一个能自己提交 Pull Request、关联工单、并在构建通过后面自动通知频道的循环。这类集成组件只能(如对接 GitHub、Linear、Slack 等工具的接口)让 Loop 能够在你的真实环境中直接执行操作,而不是描述它本能的操作。
5.验证器(把关闸门)
测试、类型检查,或构建流程------它们会拒绝自动不合格的结果。这是唯一一个真正的决定循环是在帮助、还是只是在消耗你钱的模块。其他的一切都只是管道工程。这才是让整套系统真正劳动力的部分。
这些模块组合起来,能够得到团队目前在规模化运行的方案:成百上千个Agent同时在同一个任务上循环运行。有一位工程师就用这样的循环,在大约六旬把整个代码库从一个编程语言重写成另一个,而这一工作靠人工完成不知接近一年。这是大型软件方式开发上的真正转变。但它也有一个演示中从不会展示的代价。
没人提起成本
循环靠代币运行,而代币就是。问题不在于每一步本身要花费,问题在于这个成本是如何重新充钱的。
每跑完一轮循环,Agent都要重新读取它的上下文:目标、代码、上一轮的结果、哪里失败了。这整堆内容会在每一轮迭代中再次完整地送入模型,并且每跑一轮它都会变得更大。一个运行十次的循环,耗费的不是十次提示的钱,而是十次"体量持续增长"的提示而"执行者-审核者"这个能提升质量的技巧,也可以使报表直接翻倍,因为现在是两个模型在读取同一个工作内容,而不是一个。
1. 先确保"手动跑一次"是稳定可靠的。
2. 把这次手动操作整理成一份 Skill(保存下来这套指令)。
3. 把这份 Skill 包装进一个 Loop(加上检验门槛 + 停止条件)。
4. 然后,才把它放到自动化排期上去运行。
真正重要、但几乎没有人在追踪的指标,是每一次"被采纳的跟踪"所花的成本, 而不是花掉多少代币或跑了多少轮循环。如果一个循环给你十个结果,你竟然掉了六个,那你其实就是替在做它本应替你省下的审核工作。采纳率低于50%,它带来的成本就已经超过了它创造的价值。
工程师杰弗里·亨特利把这种现象称为"拉尔夫·威格姆循环"(拉尔夫·威格姆循环,得名于辛普森一家中昔天真盲懂的角色):特工提前自认为任务已经完成,在工作只完成一半时就退出,而循环本身却仍持续运行、持续耗时,但却没有硬性的把关机制无法阻止任务失败,循环报错不会崩溃------它只会突然地继续向你播放。
这就是为什么重型版本的循环,只适合那些拥有足够预算和防护机制(迭代次数上限、代币预算、在重复性步骤上用更便宜的模型、持续监控)的团队运行。如果你不属于此类团队,也不必觉得自己错过了什么------核心思路本身,用极低的成本、不需要任何建设,就同样能跑通工作。
真正行得通的搭建顺序
如果你确实要构建一个循环,顺序比工具本身更重要。那些能够把循环真正用于生产环境、并使稳定下来的人,做法都是一致的:
1. 先确保"手动跑一次"是稳定可靠的。
2. 把这次手动操作整理成一份 Skill(保存下来这套指令)。
3. 把这份 Skill 包装进一个 Loop(加上检验门槛 + 停止条件)。
4. 然后,才把它放到自动化排期上去运行。
跳过前面的、直接给一个你自己还没有手动验证可靠的步骤的东西排期自动运行------这就是循环在你睡觉时彻底失控的最典型原因。先验证一次,再搭建坚固支架,最后才把它自动化。
自己搭建一个基础循环(适用于任何LLM)
并不需要一个专门的编程代理才能达到循环的运作方式。你就可以在任何一个LLM里手动跑一个简单的循环,靠的只是一段提示。诀窍在于:同时把循环三个你要素都交互模型------一个目标、现在严格的成功标准,以及一套强制它在被允许之前自我检验的协议。
注:下面这套"PLAN-DO-VERIFY-DECIDE"四步协议,是前文DISCOVER-PLAN-EXECUTE-VERIFY-ITERATE五阶段模型的简化实操版,更适合直接粘贴使用。
▸ SELF-CHECKING LOOP(自我检验循环)------粘贴进 Claude 或 ChatGPT 使用
你将在一个循环中工作,直到任务达到设定标准为止。
TASK(任务):
[在这里准确描述你想要的产出]
SUCCESS CRITERIA(成功标准,要求严格,不允许放水):
- [标准 1]
- [标准 2]
- [标准 3]
LOOP PROTOCOL(循环协议,每一轮都要重复):
1. PLAN(规划) --- 说明下一步具体要做什么
2. DO(执行) --- 产出或改进这份工作
3. VERIFY(验证)--- 按每条标准给结果打 1-10 分,
必须诚实严格,明确列出哪些地方仍然不达标
4. DECIDE(决策)--- 如果每条标准都达到 8 分及以上,输出"FINAL"并停止;
否则输出"ITERATING",再跑一轮,并优先修复分数最低的那一项
RULES(规则):
- 在每条标准都达到 8 分或以上之前,绝不能宣布任务完成。
- 每一轮都必须修复上一轮 VERIFY 中分数最低的那一项。
- 不要向我提问。自行做出合理假设,注明假设内容,并继续推进。
开始。持续运行这个循环,直到输出 FINAL 为止。
看看会发生什么:模型自己搭建内容,对照你设定的标准给自己打分,找出薄弱阶段,再重写------反复循环,直到真正达到目标,而不是把第一个"看上去差不多"的结果就丢给你。这就是一个循环,你只需用一段话就搭建出来了。
但请注意一个仍然缺失的关键点,因为这就是接下来内容的核心所在:**你才是这个循环的触发。**你打开了对话窗口,粘贴了提示,然后坐在那里看着它迭代。因为你一旦关掉这个标签页,它就消失了。它没有排期,不会"每天出现自动执行一次",也不会"邮件到达时自动唤醒"。它无法主动联系你,只有在你抓住它的时候才可以。
要获得一个能自主时刻运行、按触发计划、由真实事件驱动、不需要你搜寻的循环,通常就必须进入前面提到的那个"重型世界":工具、托管、代码、把关机制,以及发票。
这对于真正繁重的任务来说是合理的。**但对于99% 的日常任务,**已经有一个现成的、足够简单的解决方案了。
同样的想法,用在你的日常生活中
抛开代码和成本,剩下的只是一个简单、却真正实用的概念:一个能自己运行的任务,按计划执行,或者在某件事发生的瞬间自动触发,不需要你去记住它,也不需要你时刻在场。你不需要是工程师才能用上系统逻辑------你只需要"为生活而设计的循环",而不是"为代码库而设计的循环"。
有一个免费的选项,你只需用日常出来就能创建一个循环:不需要写代码,不需要服务器,不需要急,不需要一直开着描述某个标签页,也不存在容易出错的搭建顺序。
它叫Mira ,位于Telegram里------一个你大概提前装着、随时打开的应用。你像跟朋友聊天一样给它发消息,而它运行的这些循环被称为技能(技能)。每个技能都默默具备一个真正的循环所需的全部要素------存在动作、自主运行的方式------只是你完全不需要手动把它们连接起来。你只需要知道你想要什么。
▸ SKILL(技能示例)
"每个工作日早上 7 点,检查我的 Gmail 和 Google 日历。
给我发一份简短摘要:我最重要的 3 个会议、收件箱里
紧急的事项,以及一件我说过要跟进但还没跟进的事。
控制在 120 字以内。"
这是一个真正的循环:一个时间触发,一个跨越两个已连接应用的多步骤操作,自主运行,并主动把结果送到你面前。而你,只需用一条消息就把它写出来了。
Mira实际能做什么
这才是真正让人理解它的关键点。Mira 不是一个更聪明的聊天机器人 。它和 ChatGPT 的区别很简单:**ChatGPT 给你答案,Mira 直接动手。**你不是帮帮忙写一封邮件,而是直接把邮件发出去。你得到的不是一份草稿工单,而是线性里一个真实存在、已经指派好负责人的工单。在后台完成这件事,并且在每次对话之间都记得你是谁。
它通过 Composio 连接 500 个多个应用(Notion、Gmail、Google 日历、GitHub、Figma、Stripe,以及其他成百上千个应用),具备能跨会话、跨群聊天保持的长期记忆,而且是无关模型的------根据任务需要,可以调用 GPT、Claude 或 Gemini。下面这一切实际能转化成什么:
用于工作场景
这就是循环的思路在不写一行代码的情况下,依然能产生返回的位置。
▸ SKILLS(技能示例)
"每场会议开始前一小时,提醒我和这个人上一次对话的背景与决定。"
"当我在这里转发一条消息时,把它转换成 Linear 工单,
设置好优先级,并指派正确的负责人。"
"每周五下午 4 点,收集团队的任务状态与指标数据,
在我们的群聊里发一份整洁的周报摘要。"
"用 5 个要点,总结我离开期间在这个群聊里错过的所有内容。"
它可以在几个休息时间里整理完成一条200条消息的长对话,在你还在说话的同时把工单建好,让你走进会议室的时候就已经掌握了所有信息。在群聊里,记住它决定整个团队的任务和任务,而不是你一个人的。
供内容创作者
这是大多数人最容易低估的部分。Mira 能够在聊天界面内最终地完成内容创作。
▸ SKILLS(技能示例)
"我会发一条语音消息说一个原始想法,
帮我把它做成一篇带配文和话题标签的完整帖子。"
"把这一个想法分别改写成适合 X、Instagram、LinkedIn、
邮件和电子周刊的版本,每个都符合对应平台的格式。"
"为这条帖子生成 3 个配图方案。"
"把这张图片做成一段适合发我 Telegram 频道的短视频。"
语音输入,约30秒后得到一篇帖子。一份原始素材,变成了六个平台版本。它可以直接在对话框里生成图片和、修改图、更换背景、制作吉祥物和头像形象,甚至可以做对口型和动画处理。整条视频内容制作全部在同一个窗口里完成。
用于语音场景
Mira把语音设置为一种输入方式来处理,这一点的意义比声音更重要。
▸ SKILLS(技能示例)
"把我的语音消息转写成干净整洁的文字。"
"把这篇文章用语音读给我听。"
"总结这个群聊里语音消息的核心要点。"
它可以转写你的语音消息、把文字朗读给你听、理解群中的语音内容并总结讨论聊天要点,并且在你无法说话时充当一个免提语音助手。
为了您的个人生活
相同的引擎,指向生活中的其他一切。
▸ SKILLS(技能示例)
"每天晚上 7 点,问我今天有没有训练。帮我保持连续打卡记录,
不要让我连续超过一天偷懒。"
"每天晚上问我 3 个关于今天的问题,记住我的回答,
每周一次告诉我有什么变化。"
"通过一张餐盘照片,帮我记录卡路里摄入。"
"监控这条航线的机票价格,价格降到我设定的数字时帮我下单。"
"每天早上给我一份不含标题党的新闻摘要,主题是我关心的领域。"
一个能督促你坚持打卡的"辅导员"。一本真正记住你、并随时间成为你的"打卡伙伴"的日记。一张照片就可以完成心脏追踪,不需要额外安装一个App。一套从你自己的错误中提炼出来的语言学习方法。一个会在价格合适的时候自动补订票的作业监控器。一张把标题党彻底剔除的每日摘要。
两分钟内开始使用
打开 Telegram,找到Mira,给它发一条消息。免费版本可以立即使用。可以先试试这几条:
@mira, 帮我规划这一周
@mira, 总结这个对话
@mira, 提醒我每周一上午 9 点检查 PR
@mira, 给我写一篇关于 [主题] 的帖子,适用于 X 和 Instagram
这篇文章里提到的任何一个例子,你只要打出来发送,它就会变成一个真正持续持续的循环。
这对你的一切到底意味着什么
循环不是一股潮流,它代表的是工作主导权的转移。人工智能不再是推动它走完每一步,而是开始独立完成整项工作。
话虽如此,这并不需要刻意注视、或硬塞进每个场景的东西。多数情况下,硬上循环只是白白烧钱。
**我的建议是:**先从已经现成的、免费的工具用起来,只有当你真正觉得它不够用时,才开始去思考自己到底需要什么样的旧方案。
原文地址: https://x.com/AnatoliKopadze/status/2068328135611822149