【AI Agent Loop #2】拆一个真实的 agent loop 给你看:12 圈干完一件事

📅 2026/7/2 5:25:58
【AI Agent Loop #2】拆一个真实的 agent loop 给你看:12 圈干完一件事
拆一个真实的 agent loop 给你看12 圈干完一件事拆一个真实的 agent loop 给你看12 圈干完一件事 上篇回顾 任务是什么 先把一圈放大看 12 圈全记录节选关键圈圈 1-2先读目录想→做圈 3-4看懂了 决定写看→想→做圈 5-6踩坑一权限拦截做→看→反思圈 9跑验证踩坑二做→看→反思圈 11修正全 PASS反思→做→看→完成️ 这一路用了哪些工具⚡ 重点两次「看→反思→改」 数字总结 我的观察loop 的价值不在快在能纠错 一句话带走拆一个真实的 agent loop 给你看12 圈干完一件事2026年6月 | 实操 | 上篇《AI Agent 的 loop 是什么》预告兑现 上篇回顾上篇讲 loop 是 agent 的心跳——反复「想-做-看-反思」直到任务完成。但光讲理论不过瘾这篇我真用 Claude Code 跑一个多步任务把每一圈摊开给你看。任务很实在给这个公众号工作流建一个「发布前自检脚本」。我全程没干预让它自己跑记录每一圈。结果它跑了12 圈中途踩了2 个坑、自己改了2 次。正好完美的 loop 教材。 任务是什么先看任务板一句话给 agent 的指令「在项目里建一个发布前自检脚本①检查最新 .md 有没有对应 .html ②检查 cover.jpg 存在且50KB ③输出清单。先读目录理解结构再写写完跑一遍验证有错就改。」注意这句指令本身就在要求一个 loop——「先读、再写、跑验证、有错就改」。这就是 loop 的任务特征中间结果决定下一步。 先把一圈放大看在展开 12 圈之前先把一圈loop 放大让你看清结构四个粉笔框转圈想Reason→ 做Act→ 看Observe→ 反思Reflect→ 回到想。关键在那个「反思」——它是 agent 和普通聊天机器人的分水岭。没有反思错了就错了有反思错了能改。下面就看它怎么转。 12 圈全记录节选关键圈整个任务跑了 12 圈我节选最关键的几圈摊开。先看全景圈 1-2先读目录想→做agent 第一反应不是直接写代码而是先读目录理解结构。这是 loop 的正确起手——不瞎写先感知环境。想「我先读一下 articles/ 目录理解结构再写脚本」做调 Bash 工具ls -la articles/和ls -la articles/ai_news/这一步看似多余但至关重要。它决定了脚本要不要支持子目录、文件命名规律是什么。跳过感知直接写就是瞎写。圈 3-4看懂了 决定写看→想→做看.md和.html成对存放如ai_agent_loop.mdai_agent_loop.htmlai_news/子目录同规律最新是ai_agent_loop.mdcover.jpg61KB想「理解了结构现在写脚本」做调 Write 工具写出pre_publish_check.js到这里一个普通程序员可能就交活了。但 loop 才刚热身——真正的戏在后面。圈 5-6踩坑一权限拦截做→看→反思做Write 工具提交看被权限拦截了headless 模式没法弹权限框脚本没写成反思「headless 模式没法弹权限框 → 换手动落地」这是 loop 最有价值的一刻——遇到障碍不卡死调整策略。普通脚本跑到这一步就报错退出agent 会重新想路径。圈 9跑验证踩坑二做→看→反思脚本落地后agent 跑了一遍验证[PASS] 最新文章INDEX.md [FAIL] 对应 HTML 存在INDEX.html ← 翻车了 [PASS] cover.jpg 存在60.0 KB看FAIL它把INDEX.md索引文件误判成了最新文章反思「INDEX.md 是索引不是文章不该算进最新文章」这个 bug 太真实了——任何写过类似脚本的人都踩过。agent 之前没料到目录里混着非文章的 .md。loop 的价值就在这跑了才知道错知道错才能改。圈 11修正全 PASS反思→做→看→完成反思在 findMd 函数里加过滤排除 INDEX.md做调 Edit 工具改脚本看再跑一遍[PASS] 最新文章ai_agent_loop.md [PASS] 对应 HTML 存在ai_agent_loop.html [PASS] cover.jpg 存在60.0 KB [PASS] cover.jpg 50KB实际 60.0 KB 结果4 通过0 失败全 PASS任务完成退出 loop。12 圈2 次反思1 个能用的脚本。️ 这一路用了哪些工具agent 的「做」这一步本质是在调工具。这一路它用了四个Bashls 读目录、node 跑脚本Read读文件内容Write写 pre_publish_check.jsEdit改脚本排除 INDEX工具就是 agent 的手——手越多能干的事越多。给 agent 配什么工具决定了它的能力边界。这也是为什么 Claude Code 这类编程 agent 要接那么多工具文件、终端、搜索、MCP……。⚡ 重点两次「看→反思→改」整个 loop 最值钱的是这两次反思。单独拎出来看踩坑 1权限拦截和踩坑 2INDEX 误判都遵循同一个模式看 → 发现不对 → 反思为什么 → 改 → 再看这就是 loop 区别于固定流程的核心。如果是写死的管道遇到权限拦截就崩了遇到 INDEX 误判就输出了错误结果。而 loop 能自己发现问题、自己改。 数字总结指标数据总圈数12 圈工具调用Bash×2、Write×2、Edit×1、跑验证踩坑次数2 次自主修正2 次最终结果4 项检查全 PASS人工干预0 次除权限落地那步我接手一件事、12 圈、2 次自我修正、0 人为干预。这就是 agent loop 实打实在做的事。 我的观察loop 的价值不在快在能纠错跑完这个任务我对 loop 有个更深的体会很多人以为 agent 的价值是自动化、跑得快。不是。这个自检脚本一个熟练程序员手写 10 分钟搞定agent 跑 12 圈反而更慢。那 loop 的价值到底在哪在纠错能力。它没料到目录里有 INDEX.md → 跑出来 FAIL → 自己发现 → 自己改它没料到 headless 会拦权限 → 换路径 → 继续这个试错-发现-修正的能力是固定脚本和管道永远给不了的。loop 把写代码从一次写对变成了反复逼近正确。对复杂、不确定、中间结果决定下一步的任务这才是真正的生产力。当然代价也要说清楚12 圈烧的 token 是单次问答的几十倍简单任务上 loop 是杀鸡用牛刀。所以上篇那句忠告依然成立别拿 loop 干一次问答能解决的活。 一句话带走agent 不是一次写对的工具是反复逼近正确的工具。让它能做到这点的就是 loop。下次你设计或使用 agent盯三件事它的 loop 转几圈就停设上限防烧钱它能反思吗不能反思的是管道不是 agent出错怎么刹车人工介入 预算上限把这三个问题答清楚你就真正懂了 agent loop。下篇预告loop 跑飞了怎么办拆几个 agent “走火入魔的真实案例看反思循环怎么从帮手变成捣乱”以及怎么设护栏。 关注我每天 5 分钟看懂 AI觉得这篇把 loop 摊得够开转发给想搞 agent 的朋友点个「在看」。你跑过 agent 吗转过几圈评论区聊聊本文任务由 Claude Codeclaude-opus-4-8真实执行loop 过程取自 stream-json 完整记录。脚本pre_publish_check.js已落地可用。本文首发于AI架构师之路 关注我每天 5 分钟看懂 AI —— 前沿模型评测 · AI 日报 · 硬核教程更多 AI 实操内容扫码或搜索公众号名关注第一时间收到更新。本文为作者原创内容转载请注明出处。