循环工程:设计 AI 的自我驱动系统

什么是循环工程?

定义(Addy Osmani, 2026年6月):循环工程就是取代你自己作为提示智能体的人。你设计系统来做这件事。循环是一个递归目标,你定义一个目的,AI 不断迭代直到完成。

简单来说:循环工程 = 让系统自己启动工作流。

例子

  • 传统方式:你发现 bug → 你说"修复这个 bug" → AI 修复
  • 循环工程:系统自动发现 bug → 系统说"修复这个 bug" → AI 修复

起源

这个概念的演进过程:

ReAct(基础)

  • Yao et al. 2022, ICLR 2023
  • 推理+行动的框架,奠定了循环思维的基础

Peter Steinberger 的病毒式推文

  • 2026年6月5日,500万+浏览
  • 第一次明确指出"应该设计循环,而不是提示智能体"

Addy Osmani 的博客文章

  • 2026年6月7日,addyosmani.com
  • 正式命名并构建这个概念的完整框架

工具生态成熟

  • Claude Code 2.0(Boris,2026年6月)
  • OpenHands
  • 其他循环工程工具

五大模块(Addy Osmani 的框架)

1. 自动化发现(Automations)

作用:计划的发现和分类 核心/loop/goal 原语 示例:定时扫描 GitHub issues,按优先级分类

为什么重要

  • 自动发现问题是循环的开始
  • 没有自动发现,人就依然需要"寻找工作"

2. 工作树隔离(Worktrees)

作用:并行智能体隔离 核心:使用 git worktrees 实现并行 示例:同时处理 3 个不同的 bug,每个都有独立环境

为什么重要

  • 避免 AI “污染"彼此的上下文
  • 真正的并行处理,不是模拟的

3. 技能编码(Skills)

作用:项目知识编码化 核心:SKILL.md 文件 示例:每个项目都有自己的技能文档,告诉 AI 该项目的规则

为什么重要

  • 项目知识不丢失,即使对话结束
  • AI 能理解项目特定的规则和约定

4. 连接器(Plugins/Connectors)

作用:外部世界连接 核心:MCP 协议、问题跟踪器、CI/CD 集成 示例:自动创建 PR、运行 CI、更新项目文档

为什么重要

  • 循环不是封闭的,能与真实世界交互
  • 完成"从问题到部署"的完整闭环

5. 子智能体(Sub-agents)

作用:专业化智能体 核心:分离 maker 和 checker 智能体 示例

  • Maker:写代码、修改文件
  • Checker:验证输出、测试安全性

为什么重要

  • 专业化分工,比单一智能体更可靠
  • checker 智能体防止 maker 出错

+ 状态(State)

虽然不是独立模块,但状态管理至关重要: 作用:持久化记忆 核心:Markdown 文件、Linear看板、对话外的持久存储 示例:项目状态、任务进度、已解决的问题列表

为什么重要

  • 循环有记忆,不会重复做同样的事
  • 状态让循环变得可预测和可靠

经典循环模式

OODA 循环(观察→定位→决定→行动)

适用场景:需要快速响应的决策 示例

  • Observe:监控代码变更
  • Orient:分析变更的影响
  • Decide:决定是否需要测试
  • Act:运行相关测试

优势:快速迭代,适合动态环境

PDCA 循环(计划→执行→检查→行动)

适用场景:需要质量保证的工作流 示例

  • Plan:制定代码审查计划
  • Do:执行代码审查
  • Check:检查是否有问题
  • Act:修复发现的问题

优势:质量导向,适合正式开发

反思循环(执行→评估→反思→改进)

适用场景:需要持续优化的系统 示例

  • Execute:运行 AI 编码任务
  • Evaluate:评估输出质量
  • Reflect:分析为什么成功/失败
  • Improve:优化策略和方法

优势:持续学习,适合长期改进

探索-利用循环(新路径 vs 已知优化)

适用场景:需要在创新和效率间平衡 示例

  • Explore:尝试新的算法实现
  • Exploit:优化已验证的算法
  • Explore again:探索新的优化方向

优势:平衡创新和稳定性

动手入门

简单循环示例:一个脚本检查 GitHub issues,分配给智能体,运行修复,打开 PR,报告结果

bash
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
#!/bin/bash
# 1. 发现新 issues
issues=$(gh issue list --state open --limit 5)

# 2. 分配给智能体
for issue in $issues; do
  # 创建 git worktree
  git worktree add ../fix-$issue
  
  # 运行智能体
  oh-my-opencode --goal "Fix issue #$issue" --worktree ../fix-$issue
  
  # 提交 PR
  cd ../fix-$issue
  git commit -m "Fix #$issue"
  gh pr create --title "Fix #$issue"
  cd ..
  
  # 清理
  git worktree remove ../fix-$issue
done

当前挑战

终止问题(Termination Problem)

挑战:如何避免无限循环 示例:AI 不断尝试修复同一个 bug,但方法不对 解决方案:设置最大迭代次数、超时机制

资源消耗(Resource Consumption)

挑战:token 成本控制 示例:长时间运行的循环可能消耗大量 token 解决方案:智能缓存、批处理、限制循环深度

漂移控制(Drift Control)

挑战:保持与原始目标对齐 示例:AI 偏离了最初的目标,做了一些相关但不正确的事 解决方案:定期检查目标一致性、设置约束条件

可解释性(Interpretability)

挑战:调试黑盒循环 示例:循环出错时,很难知道是哪个环节出了问题 解决方案:详细日志、状态快照、可视化工具

未来展望

这是最新的范式(2026年6月),仍然处于早期阶段,还没有标准实践。

可能的下一个演进是群体工程(Swarm Engineering)——多个智能体在网络中协作。

现在就开始实践循环工程的好处:

  • 2026年还是早期,技术栈在快速发展
  • 可以影响标准的形成
  • 提前获得竞争优势

记住:循环工程不是终点,而是 AI 工程演进的新起点。


本文是"AI 工程范式演进"系列的第 8 篇。系列按顺序阅读效果更佳:权重 10→20→30→40→50→60→70→80→90…