自我改进的 AI 系统:它自己构建了自己
以下是 @agent_wrapper(prateek)发布的 X Article 原文完整转载。

自我改进的 AI 系统:它自己构建了自己
我想加快交付速度。
我有一个代码库,有一堆待做的事,却没有足够的时间。于是我开始并行跑多个 AI 编程 agent——每个分配一个任务,让它们写代码,审 PR,合并,循环往复。最开始跑两三个,后来五个,再后来十个。
agent 跑得很快,问题出在我身上。我跟不上它们的节奏。检查 CI 有没有过、读 review 评论、把报错复制粘贴回去——这些都得我来。我从写代码的人,变成了给写代码的东西当保姆的人。这根本没法扩展。
于是我写了一批 bash 脚本来自动化这些协调工作——大概 2500 行,负责管理 tmux session、git worktree 和标签页切换。每个 agent 都有自己独立的 tmux session 和 worktree。编排器可以创建 agent、查看它们的进展、把 CI 失败的信息反馈回去,还能让我只需说一句"切到 PR #1121 的标签页"就能在 session 之间跳转。勉强能用。
然后我把 agent 指向那批 bash 脚本本身,让它们构建出一个正式编排器的 v1 版本。v1 负责管理构建 v2 的那些 agent,而 v2 从那以后一直在自我改进。

最终的结果:40000 行 TypeScript 代码,17 个 plugin,3288 个测试——8 天内完成,主要由系统所编排的 agent 构建。每一条 commit 都带有 git trailer,标明是哪个 AI 模型写的。人类做了什么、agent 做了什么,一目了然,毫无歧义。我们已将其开源:Agent Orchestrator(github.com/ComposioHQ/agent-orchestrator)。
有一点至关重要:编排器本身就是一个 AI agent,而不是什么仪表盘、cron job,也不是轮询 GitHub 的脚本。它是一个 agent——读取你的代码库,理解你的 backlog,决定如何把一个功能拆解成可并行的任务,把每个任务分配给对应的编程 agent,并监控它们的进展。当 CI 失败时,编排器会把失败信息注入到对应的 agent session 里,agent 读取日志并修复问题;当 review 评论进来时,编排器会把评论连同上下文一起路由到正确的 agent session。不需要人工串联。这正是它与所有"并行跑 agent"方案的本质区别——管理这些 agent 的东西,本身就是智能的。

AI 辅助编程的真正瓶颈
大多数人对 AI 编程 agent 的问题判断错了。agent 会写代码,这不是瓶颈。瓶颈是你。
你一次启动五个任务,去倒杯咖啡,20 分钟后回来,发现自己只是在不停刷 GitHub 标签页——等 PR 合并、看 CI 状态、读代码审查意见。恭喜你,成功把工程工作自动化了,然后用项目管理把自己填了进去。而且还是很糟糕的项目管理。
编排 agent 的作用,就是把你从这个循环里替换出去。替换你的不是脚本,而是一个真正的 AI agent——它对每一个活跃 session、每一个开放中的 PR、每一次 CI 运行都有完整上下文。它追踪所有事情,监控失败,把代码审查意见转发回编码 agent,只有在真正需要人来决策的时候才通知你。一旦这个瓶颈——你的注意力——被消除,事情就开始快速复利。
你打开 dashboard 查看状态,但编排 agent 已经在工作了——它扫完了你所有的工作流,然后告诉你:“这个 PR 正在阻塞另外三个任务,这个 CI 失败是个 flaky test,这条审查意见才是真正需要处理的。“它不是在展示数据,而是在给你决策结论。


另一件重要的事:什么都可以接进来。想换 agent 运行时?换 issue tracker?换通知渠道?直接换。编排 agent 不在乎你用 Claude Code 还是 Aider,用 tmux 还是 Docker,用 GitHub 还是 Linear。八个 plugin 插槽,全部可替换。
时间线
看到"8 天写了 4 万行代码”,大家可能以为我把自己关在山洞里没日没夜地干。但我还有正职工作。这 8 天里,真正专注投入的时间大概只有 3 天左右,剩下的空隙全靠 agents 来填。

模式很简单:睡前配置好会话,agents 通宵干活,早上上班前 review 并 merge,再配置新的会话,如此循环。
最高产的一天是 2 月 14 日周六。单日合并了 27 个 PR,整个平台就此成型——核心服务、CLI、Web 控制台、全部 17 个 plugin、npm 发布,全部搞定。我 review 和 merge PR 的速度快得自己都来不及细看,但每个 PR 都已经通过了 CI 和自动化 code review。

各模型分工
每次 commit 都通过 git trailers 记录了使用的模型:

commit 数合计超过 722,因为部分 commit 是由一个模型写出来、再由另一个模型 review 和修复的。Opus 4.6 负责攻坚——复杂的架构设计、跨 package 的集成;Sonnet 负责走量——plugin 实现、测试、文档。
全自动代码审查:700 条评论,人工介入不到 1%
Agent 不只是写完代码就扔出去了事。整个流程有一套完整的自动化审查循环:
- Agent 创建 PR 并推送代码
- Cursor Bugbot 自动审查,发布行内评论
- Agent 读取评论,修复代码,再次推送
- Bugbot 重新审查

700 条自动化代码审查评论。Bugbot 抓出了真实问题——通过 exec() 引发的 shell injection、path traversal、未关闭的 interval、缺失的 null checks。Agent 立即修复了约 68% 的问题,约 7% 被解释为有意为之,另有约 4% 推迟到后续 PR 处理。

ao-58 的故事
最戏剧性的案例:PR #125,一次仪表板重构。这个 PR 经历了 12 轮 CI 失败→修复循环。每次失败,Agent 都会拿到失败输出,诊断问题(类型错误、lint 失败、测试回归),然后推送修复。全程没有人工介入。
12 轮。零人工干预。干净交付。

跨 9 个分支共 41 次 CI 失败,最终全部由 Agent 自行修正。整体 CI 成功率:84.6%。

架构
Orchestrator 采用插件系统,共有 8 个可替换插槽:

Session 生命周期:
- Tracker 拉取一个 issue(GitHub 或 Linear)
- Workspace 创建隔离的 worktree 或 clone
- Runtime 启动 tmux session 或进程
- Agent(Claude Code、Aider 等)自主执行任务
- Terminal 让你通过 iTerm2 或 Web 面板实时观察进度
- SCM 创建 PR,并为其补充上下文信息
- Reactions 在 CI 失败或收到 review 评论时自动重新启动 Agent
- Notifier 仅在需要人工判断时才通知你

不用 tmux?切换到 process runtime。不用 GitHub?换成 Linear。不用 Claude Code?接入 Aider 或 Codex。任意模块都可以替换。
自愈 CI:能自己修复故障的 Agent
这是最实用的功能。对 GitHub 事件自动响应:
reactions:
ci_failed:
action: spawn_agent
prompt: "CI failed on this PR. Read the failure logs and fix the issues."
changes_requested:
action: spawn_agent
prompt: "Review comments have been posted. Address each comment and push fixes."
approved:
action: notify
channel: slack
message: "PR approved and ready to merge."
CI 挂了?Agent 自动接手。Reviewer 提了修改意见?Agent 读完评论、改完代码。PR 通过审核?你会收到一条 Slack 通知。那 41 次 CI 失败能自动修复,靠的就是这套 reactions 机制——它把每次失败直接转发给 Agent 处理。
盗梦空间式的递归:AI Agent 亲手搭建自己的编排系统
我同时跑了 30 个 Agent 来开发 Agent Orchestrator。它们在用 TypeScript 写替代版本,而我则在用旧的 bash 脚本版来管理它们。被构建的工具,正在管理自身的构建过程。
我实际做了什么:
- 架构决策(插件插槽、配置 schema、session 生命周期)
- 启动 session、分配 issue
- Review PR(主要看架构,不逐行审)
- 解决跨 Agent 冲突(两个 Agent 同时编辑同一个文件)
- 拍板判断(否定这个方案,换那个方向)
Agent 做了什么:
- 所有实现代码(4 万行 TypeScript)
- 所有测试(3,288 个测试用例)
- 所有 PR 创建(102 个 PR 中有 86 个)
- 所有 review 评论的修复
- 所有 CI 失败的处理
我从未直接向功能分支提交代码。每一行代码都经过 PR 合入。

活动检测
最棘手的问题之一:在不询问 agent 的情况下,搞清楚它到底在干什么。
Claude Code 在每次会话期间都会写入结构化的 JSONL 事件文件。编排器不依赖 agent 自我汇报(它们要么说谎,要么自己也搞混了),而是直接读取这些文件:
- agent 是否正在生成 token?
- 是否在等待工具执行?
- 是否处于空闲状态?
- 是否已经完成?
agent-claude-code 插件知道如何解析 Claude 的会话文件。未来的 agent-aider 插件也会以同样的方式读取 Aider 的对应文件。
Web 控制面板
Next.js 15,用 Server-Sent Events 实现实时更新,无需轮询。
- 关注区 — 按需要处理的紧急程度对会话分组(CI 失败、待 review、正常运行中)
- 实时终端 — 在浏览器中嵌入 xterm.js,实时展示 agent 的实际终端输出
- 会话详情 — 当前正在编辑的文件、最近的 commit、PR 状态、CI 状态
- 配置发现 — 自动找到你的 ao.config.yaml,并展示可用的会话列表
自我进化的 AI 循环
每一次 agent 会话都会产生信号。哪些 prompt 最终生成了干净的 PR?哪些陷入了 12 次 CI 失败的死循环?哪些模式导致了 merge 冲突?
大多数 agent 方案都把这些信号直接丢掉了。会话结束,你继续向前,下一次会话从零开始。
Agent Orchestrator 内置了一套自我提升系统(ao-52,它本身也是由 agent 构建的),会记录性能数据、追踪会话结果、并定期做复盘。它会学习哪类任务第一次就能成功,哪类任务需要更严格的约束。
agent 构建功能 → 编排器观察哪些方式奏效 → 调整管理未来会话的策略 → agent 构建出更好的功能。这个循环会不断复利叠加。
而且,因为是 agent 构建了编排器,编排器又让 agent 更高效,这些 agent 再持续改进编排器——整个过程是递归的。这个工具通过它所管理的 agent,在持续地改进自身。
我觉得这正是为什么编排层比任何单个 agent 的进步都更重要。上限不是"Claude Code 写 TypeScript 能有多好”,而是"一个系统能在并行调度、观察、改进数十个 agent 这件事上做到多好"。后者的上限要高得多,而且每跑一次循环,这个上限都会再往上升一点。
下一步:迈向全自动软件工程
随时随地与 Agent 对话。 现在你必须坐在电脑前才能操作。理想状态是:你在散步时也能通过 Telegram 或 Slack 给 orchestrator 发消息——查看进度、批准合并、给 agent 调整方向。
会话中途的反馈要更及时。 Agent 会跑偏。它们可能开始解决错误的问题,把一个简单修复过度设计,或者钻进某个兔子洞出不来。Orchestrator 需要持续对照原始意图检查 agent 的工作,在它们浪费 20 分钟走错方向之前及时纠偏。
自动升级机制。 Agent 搞不定?升级给 orchestrator。Orchestrator 需要判断?升级给你。你只需要处理真正需要人来决策的事情,其余的一切自动解决。
此外还在规划:用于并行 agent 之间自动冲突解决的 reconciler、长期运行分支的 auto-rebase、云端部署的 Docker/K8s runtime,以及面向社区贡献的 plugin 市场。
试一试
git clone https://github.com/ComposioHQ/agent-orchestrator.git
cd agent-orchestrator
pnpm install && pnpm build
ao init --tracker github --agent claude-code --runtime tmux
ao start
启动 orchestrator,打开 dashboard,直接告诉它你想构建什么。剩下的事它来处理——派出 agent、创建 PR、监控 CI、转发 review 评论。你只需要做决定。
我们正在寻找贡献者:新 plugin(agent runtime、tracker、notifier)、Docker/K8s runtime、自动冲突检测的 reconciler,以及更完善的升级规则。
项目已开源:github.com/ComposioHQ/agent-orchestrator
完整指标报告:github.com/ComposioHQ/agent-orchestrator/releases/tag/metrics-v1
构建数据的交互式可视化:pkarnal.com/ao-labs/
我目前在 Composio 负责 Agent Orchestrator 和开发者工具层的建设。如果你对构建自我进化的 AI 系统感兴趣——我们正在旧金山和班加罗尔招人:jobs.ashbyhq.com/composio
原文出处: @agent_wrapper(prateek)发布于 X,2026-02-23 原文链接: https://x.com/agent_wrapper/status/2025986105485733945 项目地址: github.com/ComposioHQ/agent-orchestrator
如果这篇文章对你有帮助,欢迎请我喝杯咖啡,支持我继续创作更多内容。
Buy me a coffee