黄建同学
26-06-15 07:20 微博认证:AI博主

Loop Engineering是什么?
Claude Code 负责人 Boris Cherny:"I don't prompt Claude anymore. I have loops running that prompt Claude and figuring out what to do. My job is to write loops."

1. 三层工程栈
理解 Loop Engineering 要先搞清楚它在哪一层:
1)Prompt Engineering:优化单条指令的措辞
2)Context Engineering:管理 window 里放什么(文档/历史/工具定义)
3)Loop Engineering:设计控制结构——决定什么时候 prompt、prompt 什么、结果是否通过
Loop Engineering 在最外层。它不替代前两层,好的 Loop 里面还是需要好的 prompt 和 context,但它加了一个自动运行的控制结构。

2. Agent 的内层循环是什么
理解 Loop Engineering 之前要先理解 Agent 本来就在跑一个内层循环:
Observe → Plan → Act → Reflect → 循环

每一轮:感知当前 codebase 状态和 test 结果 → 决定下一步 → 执行(改文件/跑测试/提交)→ 评估结果 → 进下一轮。

Loop Engineering 做的事是在这个内层循环外面再套一层外层循环:自动触发、分配任务、验证结果、持久化状态、决定下一个任务——你不在座位上,系统在跑。

3. 五个模块 + 一个记忆层
一个能跑起来的 Loop 需要六个组件,Claude Code 和 OpenAI Codex 2026 年都原生支持:

1)Automations(自动):定时触发,自动发现工作。Codex 有 Automations Tab,设置 project + prompt + cadence,结果进 Triage Inbox;Claude Code 用 /loop(设定间隔触发)或 /goal(跑到条件为真为止),加上 hooks 可以在 agent 生命周期的特定节点执行 shell 命令。/goal 的细节:每轮执行后由一个独立的小模型判断是否完成,写代码的 Agent 不自己打分。

2)Worktrees(并行隔离):多个 Agent 并行时共享文件系统 = 死局。git worktree 让每个 Agent 在独立分支上操作。Codex 每个 thread 内建 worktree;Claude Code 用 --worktree flag 或子 agent 配置 isolation: worktree。

3)Skills(知识持久化):把项目上下文写成 SKILL.md / AGENTS.md,Agent 不需要每轮会话重新猜项目规范。Codex 和 Claude Code 都用同一个格式(SKILL.md),可以用 $skill-name 调用,或让 Agent 自动识别。

4)Sub-agents(角色分工):写代码的 Agent 和验证代码的 Agent 分开。Codex 在 .codex/agents/ 用 TOML 定义;Claude Code 在 .claude/agents/ 定义 agent teams,支持 orchestrator + specialist 分层。本质是:ideate 和 verify 不能是同一个模型实例。

5)Plugins / Connectors:通过 MCP 把 Agent 接进你现有的工具链——Linear、GitHub、Slack、数据库。这让 Loop 能直接读写任务板、创建 PR、发通知,而不是把结果输出到 stdout。

6)持久化记忆:Agent 每次跑完会遗忘上下文,状态必须写到对话外面——一个 Markdown 文件、Linear Board 或 GitHub Issue。这是最容易被忽视但最关键的一层。Karpathy 早就说过:LLM 不会忘记更新交叉引用,一次可以改 15 个文件,正是因为这些内容在文件里而不在记忆里。

4. 一个真实 Loop 长什么样
以"给 API 加 JWT 认证"为例,传统方式要手动往返 15-20 轮 prompt;
Loop 方式:
OBSERVE: 分析 codebase + 跑现有测试
PLAN: claude.breakdownFeature("Add JWT auth")
→ [add dependency, create middleware, write migration,
update routes, write tests, update docs]
ACT: 依次执行每个 sub-task
→ 每步执行后 run tests,失败则进 error recovery loop
REFLECT: 独立 validator 检查 "all auth tests pass + no regression"
→ 通过则 commit + 推下一个 task
→ 不通过则 claude.identifyGaps() 补充任务队列

整个过程不需要人介入,直到最后 review PR。

5. 需要注意的地方
Loop Engineering 放大的不只是产出,也放大了错误。一个设计糟糕的 Loop 会以 8x 的速度产出垃圾。几个真实的风险:

1)Token 消耗可以非常惊人。Loop 不受控运行一晚上,账单可以让你很不舒服。务必设置 maxTurns 和 cost ceiling。

2)验证比以前更难。你不在循环里,你得设计可验证的退出条件——不是"功能完成",而是"所有 auth 测试通过 + lint clean + 无 regression"。模糊条件会让 Agent 自己认为完成了。

3)适用范围有限。任务边界模糊、需要频繁业务判断的工作,Loop 不适合。Loop 最适合:有明确 spec、有自动化测试、有版本控制的工程任务。

#HOW I AI# #程序员#

发布于 北京