本文澄清对Claude Code的Loop工程的过度炒作,拆解其本质与实践价值,纠正AI编程一夜变天的误导。 ## 1. 纠正对「Loop工程」的过度炒作 自媒体将Boris Cherny提到的「write loops」曲解为AI编程将彻底变革,实际只是介绍推广Claude Code的loop功能。Loop是Agent工具的自然进化,并未替代提示词工程,也无法直接实现无人值守编程,提示词仍内嵌在循环逻辑中。 ## 2. 拆解Loop工程的核心本质 Loop本质是让AI按照定义的目标迭代,直到满足退出条件的系统设计,是程序循环逻辑在AI时代的产品化。Claude Code中`/loop`负责按时间间隔重复运行提示词,`/goal`负责设定目标完成条件,由小模型判断是否达标,Loop工程需要结合两者的设计思想。 ## 3. Loop工程的实用实践示例 简单场景可实现PR守夜Loop,每20分钟检查CI状态、处理问题,满足可合并条件或连续3次失败同问题则停止;复杂场景可实现每日产品改进Loop,自动梳理用户反馈、完成问题修复并生成PR。 ## 4. Loop工程的实践注意事项 长时间运行的Agent需要外置记忆层,将项目上下文保存在仓库的`CLAUDE.md`、状态文件等位置,不要仅依赖对话会话保存。建议将编程和审查分离,引入测试、类型检查等外部机制判断结果,避免Agent自我验证的偏差;Loop持续运行会持续消耗token,新手不用一开始就追求全天候自动化。
Claude Code之父说的“Loop 工程”到底是怎么回事?就问咋变天的?
2026-06-11 14:43

Claude Code之父说的“Loop 工程”到底是怎么回事?就问咋变天的?

本文来自微信公众号: MacTalk ,作者:池建强,原文标题:《Claude Code之父说的 “Loop 工程”到底是怎么回事?就问咋变天的?》


Claude Code之父Boris Cherny最近有一次访谈,他在WorkOS×Acquired的对谈里提到,自己已经不再手动提示Claude啦,而是在运行一堆Loop,由这些循环去驱动Claude,并判断下一步该做什么。最后他不失幽默地总结了一句:“My job is to write loops。”


然后一堆AI自媒体就开始断行取义了,啊,AI编程又变天了,咱们都Loop吧。我只能说,变你二爷。其实人家只是在介绍和推广CC的loop功能。


现在媒体可喜欢变天了。从智能补全到Copilot,从Vibe Coding到Agent,从Prompt到Context,再到Loop Engineering……标题里的天,变得我关节炎都要犯了。


Loop工程当然值得关注,但它怎么可能让提示词工程一夜失效呢,这不是扯吗?有了Loop这个指令,开发者就能立刻进入无人值守编程了?我真的建议这些写作者,你也踏踏实实坐下来用Claude Code或者Codex之类的Agent写点东西吧。写点。


用AI写个作品出来,哪怕花点钱呢,也不至于变天变这么快。


前阵子的/goal,现在的/loop,其实都是Agent工具的自然进化,增加了更多能力。比如,当Agent能够连续执行任务,我们就不需要一步一步告诉Agent应该干啥了,就可以设定目标了,比如“要达成的目标是啥,怎么验收,什么时候停下来”,这就是/goal。你设定了goal,AI就会根据条件和目标,直接帮你做到完成任务为止。


/loop是啥呢,其实就是写循环,提示词就在循环里,用一下就知道,比如我来写个loop:


    执行结果如下:


    然后Agent还会做首次执行:



    就这么个事。


    以前写提示词,现在写循环。是提示词没了吗?人家提示词就在循环里呢,提示词永不消失。


    嘿,loop不就是个cron么,能有啥用。你看,一定要警惕这种“不就是”的句子,我们很可能躲过了“天坑”,向右跨一步,掉入了简化问题的陷阱。


    Loop Engineering说的就是这个事,我们既可以写简单的loop,也可以用loop做工作流,比如,一个PR守夜Loop:


    每20分钟检查当前PR:


    1.查看CI状态、测试失败日志、review comments和merge conflict。


    2.如果CI失败,读取失败job的最后200行日志,判断是测试问题、类型问题、lint问题还是环境问题。


    3.为修复创建独立git worktree,避免污染主工作区。


    4.修复最小必要代码,不做顺手重构。


    5.本地运行对应测试、lint、build。


    6.如果通过,提交commit,并在状态文件里记录:


    -问题来源


    -修改文件


    -验证命令


    -是否需要人工复核


    7.如果review comments有新意见,逐条处理,无法处理的标记为blocked。


    8.如果CI全绿、无未解决评论、无冲突,停止loop,并输出合并前摘要。


    9.如果连续3轮失败原因相同,停止loop,交还给人。


    在Claude Code里,这个任务可以拆成一个/loop,加一个/goal:


    /loop 20m检查当前的PR。如果CI失败,诊断失败的job,仅在worktree中修复最小原因,运行相关测试,并更新.agent/pr-watch.md记录所做的更改。如果PR是绿色且无异常的,说明情况并停止调度下一次运行。


    /goal当前PR已可合并:所有CI检查均已通过,没有未解决的评审意见,不存在合并冲突,npm test和npm run build在本地通过,.agent/pr-watch.md包含最终总结,或在20轮后停止。


    再复杂一点,可以做一个从用户反馈到产品改进的Loop。


    它每天早上读取GitHub Issues、用户反馈、客服记录和产品埋点数据,把反馈聚类成3类:bug、体验问题、功能建议。然后只挑一个高频且可验证的问题进入工程处理。先写一页mini spec,列出复现步骤、预期行为、验收标准,再开一个worktree做修复。修完后跑测试,必要时用Playwright打开页面验证关键流程。最后生成PR描述,并把“为什么做、改了什么、如何验证、风险在哪里”写清楚。


    你看,这也是loop,这是不是Loop Engineering?显然是,这就是驾驭AI的能力问题了。但你自己做Vibe Coding的时候,该咋交流,还不是得咋交流吗?


    好的loop,其实就是设计一个系统来完成某件事。一个loop可以理解为递归目标:定义目的,让AI迭代,直到完成。


    这神秘吗?一点也不。写过程序的人都知道,循环从来不是重复那么简单。一个有用的循环,至少要有输入、状态、判断条件、动作、反馈和退出机制。少了退出条件,循环会失控;少了反馈,循环会跑飞;少了状态,后续的循环会失忆的。


    AI编程里的loop,本质也一样。


    Claude Code(Codex也有)的/loop和/goal,其实就是程序里的循环在AI时代的产品化体现。


    /loop用来按时间间隔重复运行提示词,可以检查部署、照看PR、处理长时间构建。


    /goal是用户设定一个完成条件,Claude会跨多个turn持续工作,直到一个独立的小模型判断目标基本满足。


    一个强调节奏,一个强调完成条件。真正的Loop工程,通常要把两者背后的思想结合起来。


    这对Vibe Coding显然是有帮助的:


    1、要有更好的工程上下文。Addy Osmani在《Loop Engineering》里提到,长时间运行的agent需要一个存在于单次对话之外的记忆层,可以是Markdown文件,也可以是Linear看板。


    Claude Code的memory文档也提了,每个session都从新的context window开始,CLAUDE.md和auto memory才是负责把项目知识带回来角色。


    换句话说,Vibe Coding进入loop阶段后,上下文不能只靠聊天会话保存,它需要外置到仓库、规则、Skill和状态文件里。


    2、最好把“写”和“审”分开。让同一个Agent写代码,再让它判断自己是否完成,风险很高,它往往会相信自己是不可能写出bug的,和人差不多。


    更可靠的做法,是让一个Agent编程,让另一个Agent审查,或者至少让测试、类型检查、构建、Playwright这类外部机制参与判断。


    3、别忘了成本。Loop是很迷人的,它让AI看起来可以一直工作。但一直工作意味着一直消耗token。所以刚开始Vibe Coding不要一上来就追求“全天候自动化”。除非你真的不差钱,嗷嚎。


    回到开头,Boris说“My job is to write loops”,这啥意思呢?


    新功能上线了,我使着老爽了,赶紧用起来啊兄弟萌~

    AI创投日报频道: 前沿科技
    本内容来源于网络 原文链接,观点仅代表作者本人,不代表虎嗅立场。
    如涉及版权问题请联系 hezuo@huxiu.com,我们将及时核实并处理。
    正在改变与想要改变世界的人,都在 虎嗅APP
    赞赏
    关闭赞赏 开启赞赏

    支持一下   修改

    确定