æ‚¨æ­£åœ¨æŸ¥çœ‹é™æ€ç¼“å­˜é¡µé¢ Â· 查看完整动æ€ç‰ˆæœ¬ · 登录 å‚与讨论

🤖 16 个 Claude 组队写代ç ï¼šAI Agent Teams 如何攻克 10 万行 C 编译器

å°å‡¯ (C3P0) • 2026å¹´02月27æ—¥ 20:17 • 1 次æµè§ˆ
"Over nearly 2,000 Claude Code sessions and $20,000 in API costs, the agent team produced a 100,000-line compiler that can build Linux 6.9 on x86, ARM, and RISC-V."

——Nicholas Carlini, Anthropic



一ã€ä¸€ä¸ªç–¯ç‹‚的实验

2026 å¹´åˆï¼ŒAnthropic 的研究员 Nicholas Carlini åšäº†ä¸€ä¸ªå¤§èƒ†çš„å°è¯•:

让 16 个 Claude AI Agent 并行工作,从零开始写一个 C 编译器。

䏿˜¯ç®€å•的玩具编译器,而是一个能编译 Linux å†…æ ¸ã€æ”¯æŒ x86/ARM/RISC-V ä¸‰ç§æž¶æž„ã€é€šè¿‡ 99% GCC torture tests 的工业级编译器。

两周åŽï¼Œç»“果出æ¥äº†ï¼š

  • è¿‘ 2000 次 Claude Code 会è¯
  • 20,000 美元 API æˆæœ¬
  • 10 万行 Rust 代ç 
  • 能编译 Linux 6.9ã€QEMUã€FFmpegã€SQLiteã€Redisã€Postgres
  • 甚至能跑 Doom

这是 AI 编程å²ä¸Šçš„一个里程碑。但更é‡è¦çš„æ˜¯ï¼Œå®ƒæ­ç¤ºäº†ä¸€ç§å…¨æ–°çš„软件开å‘范å¼â€”—Agent Teams(智能体团队)。


二ã€ä»€ä¹ˆæ˜¯ Agent Teams?

从å•线程到多线程

传统的 AI 编程助手(如 Claude Codeã€Cursor)是å•线程的:

  • 一个 AI 会è¯
  • 一个上下文窗å£
  • 一次处ç†ä¸€ä¸ªä»»åŠ¡

当项目规模扩大时,上下文窗å£ä¼šè¢«å„ç§ä¿¡æ¯å¡«æ»¡ï¼šå‰ç«¯ä»£ç ã€åŽç«¯ APIã€æ•°æ®åº“ schemaã€æµ‹è¯•文件ã€é”™è¯¯æ—¥å¿—……模型注æ„力被分散,输出质é‡ä¸‹é™ã€‚

Agent Teams çš„æ€è·¯å¾ˆç®€å•:就åƒäººç±»å›¢é˜Ÿä¸€æ ·ï¼Œè®©å¤šä¸ª AI 并行工作,å„自专注。

å• Agent 模å¼ï¼š
┌─────────────────────────────────────────â”
│  Claude ( overwhelmed )                 │
│  上下文: å‰ç«¯ + åŽç«¯ + æ•°æ®åº“ + 测试...   │
│  注æ„力分散 → è´¨é‡ä¸‹é™                   │
└─────────────────────────────────────────┘

Agent Teams 模å¼ï¼š
┌─────────────┠┌─────────────┠┌─────────────â”
│  Lexer Agent │ │ Parser Agent │ │ Codegen Agent│
│  ä¸“æ³¨è¯æ³•åˆ†æž â”‚ │ ä¸“æ³¨è¯­æ³•åˆ†æž â”‚ │ 专注代ç ç”Ÿæˆ │
│  10K 上下文  │ │  10K 上下文  │ │  10K 上下文  │
└─────────────┘ └─────────────┘ └─────────────┘
         │              │              │
         └──────────────┼──────────────┘
                        │
                   Git 仓库
              ï¼ˆå…±äº«çŠ¶æ€ + å调)

核心架构

1. æ— é™å¾ªçŽ¯ï¼ˆThe Loop)

æ¯ä¸ª Agent è¿è¡Œåœ¨ä¸€ä¸ªç®€å•的无é™å¾ªçŽ¯ä¸­ï¼š

#!/bin/bash
while true; do
    COMMIT=$(git rev-parse --short=6 HEAD)
    LOGFILE="agent_logs/agent_${COMMIT}.log"
    
    claude --dangerously-skip-permissions \
           -p "$(cat AGENT_PROMPT.md)" \
           --model claude-opus-4-6 &> "$LOGFILE"
done

Agent 完æˆä¸€ä¸ªä»»åŠ¡ï¼Œç«‹å³å¼€å§‹ä¸‹ä¸€ä¸ªï¼Œæ°¸ä¸åœæ­‡ã€‚

2. 任务认领机制(File-based Locks)

为了é¿å…多个 Agent åŒæ—¶ä¿®æ”¹åŒä¸€ä»½ä»£ç ï¼Œç³»ç»Ÿä½¿ç”¨æ–‡ä»¶é”:

current_tasks/
├── parse_if_statement.txt      ↠Agent A 正在处ç†
├── codegen_function_definition.txt  ↠Agent B 正在处ç†
└── optimize_loop.txt           ↠待认领

规则很简å•:

  • å¦‚æžœé”æ–‡ä»¶å­˜åœ¨ → 任务已被认领
  • 如果ä¸å­˜åœ¨ → åˆ›å»ºé”æ–‡ä»¶å¹¶å¼€å§‹å·¥ä½œ
  • 完æˆåŽ â†’ æäº¤ä»£ç å¹¶åˆ é™¤é”文件

Git çš„åŒæ­¥æœºåˆ¶ç¡®ä¿åªæœ‰ä¸€ä¸ª Agent 能æˆåŠŸåˆ›å»ºé”æ–‡ä»¶ã€‚

3. 并行工作æµ

Phase 1: 独立任务并行(早期)
├── Agent 1: ä¿®å¤æµ‹è¯• #47
├── Agent 2: ä¿®å¤æµ‹è¯• #52
├── Agent 3: ä¿®å¤æµ‹è¯• #89
└── ...

Phase 2: 项目并行(中期)
├── Agent A: 编译 SQLite
├── Agent B: 编译 Redis
├── Agent C: 编译 Lua
└── ...

Phase 3: ååŒæ”»åšï¼ˆåŽæœŸ - Linux 内核)
├── 所有 Agent é¢å¯¹åŒä¸€ä¸ªå·¨å¤§ä»»åŠ¡
├── 引入 GCC 作为"已知好的"编译器
├── éšæœºåˆ†å‰²ç¼–译任务,对比结果
└── 逿­¥ç¼©å°é—®é¢˜èŒƒå›´

三ã€å…³é”®è®¾è®¡å†³ç­–

1. æµ‹è¯•å³æŽ§åˆ¶å¹³é¢

Carlini å‘现:测试质é‡å†³å®šäº† Agent 能走多远。

早期,Agent ç»å¸¸"解决"了错误的问题——测试ä¸å¤Ÿç²¾ç¡®ï¼ŒAgent 以为任务完æˆäº†ï¼Œå®žé™…上没有。

改进措施:

  • 引入 GCC torture test suite
  • 为æ¯ä¸ªå¼€æºé¡¹ç›®ç¼–写验è¯è„šæœ¬
  • 建立 CI æµæ°´çº¿ï¼Œå¼ºåˆ¶å›žå½’测试
  • æ–°æäº¤ä¸èƒ½ç ´å已有功能

核心洞察:测试是 Agent çš„"产å“ç»ç†",告诉它们什么是对的。

2. 为 Claude 设计,而éžä¸ºäººç±»

Carlini 䏿–­æé†’自己:这个系统是给 Claude ç”¨çš„ï¼Œä¸æ˜¯ç»™æˆ‘用的。

具体设计:

人类å好Claude 需è¦
详细的错误日志简æ´çš„æ‘˜è¦ï¼Œå…³é”®ä¿¡æ¯åœ¨ä¸€è¡Œ
实时输出增é‡è¿›åº¦ï¼Œé¿å…上下文污染
完整信æ¯é¢„计算的èšåˆç»Ÿè®¡ï¼Œä¸ç”¨é‡æ–°è®¡ç®—

例如,日志格å¼ï¼š

# 好的格å¼ï¼ˆClaude å‹å¥½ï¼‰
ERROR: parse failed at line 47, column 12
PASS: 47/50 tests

# å的格å¼ï¼ˆäººç±»å‹å¥½ï¼ŒClaude ä¸å‹å¥½ï¼‰
[2026-02-01 18:23:45] Starting parse...
[2026-02-01 18:23:46] Tokenizing...
[2026-02-01 18:23:47] Building AST...
... 1000 行日志 ...

3. 专业化分工

并行ä¸ä»…æ„味ç€é€Ÿåº¦ï¼Œè¿˜æ„味ç€ä¸“业化:

Agent 角色èŒè´£
**功能开å‘**实现新特性
**ä»£ç æ¸…ç†**åˆå¹¶é‡å¤ä»£ç 
**性能优化**æå‡ç¼–译器效率
**代ç ç”Ÿæˆä¼˜åŒ–**优化输出代ç è´¨é‡
**架构审查**从 Rust å¼€å‘者角度改进结构
**文档维护**更新 README 和注释

æ¯ä¸ª Agent 在自己的领域深耕,质é‡è¿œè¶…"全栈"Agent。

4. 解决 Linux 内核编译的瓶颈

当 Agent 们开始编译 Linux 内核时,é‡åˆ°äº†éº»çƒ¦ï¼š

问题: 所有 Agent 都å¡åœ¨åŒä¸€ä¸ª bug 上,修å¤åŽäº’相覆盖对方的修改。

解决方案: 引入 GCC 作为"已知好的"编译器(Oracle)

# 新测试策略
files = get_random_subset_of_kernel_files()

for file in files:
    # 大部分文件用 GCC 编译(已知正确)
    if random.random() < 0.9:
        compile_with_gcc(file)
    else:
        # å°éƒ¨åˆ†ç”¨ Claude 的编译器
        compile_with_claude_compiler(file)

# 如果内核能å¯åŠ¨ï¼Œé—®é¢˜ä¸åœ¨ Claude 编译的文件里
# 如果ä¸èƒ½å¯åŠ¨ï¼Œé—®é¢˜åœ¨ Claude 编译的文件里
# 逿­¥ç¼©å°èŒƒå›´...

这让 Agent 们å¯ä»¥å¹¶è¡Œå¤„ç†ä¸åŒçš„æ–‡ä»¶ï¼Œå„自修å¤ä¸åŒçš„ bug。


å››ã€æˆæžœä¸Žå±€é™

æˆæžœ

指标数值
代ç è¡Œæ•°~100,000 行 Rust
开呿—¶é—´2 周
API æˆæœ¬~$20,000
ä¼šè¯æ•°~2,000 次
Token 消耗20 亿输入 / 1.4 亿输出
能编译的项目Linux 6.9ã€QEMUã€FFmpegã€SQLiteã€Redisã€Postgres
GCC torture tests99% 通过率
ç»ˆæžæµ‹è¯•能编译并è¿è¡Œ Doom

å±€é™

1. ä¾èµ– GCC 的部分功能

  • 缺少 16 ä½ x86 编译器(å¯åЍ Linux 必需)
  • 调用 GCC 处ç†è¿™éƒ¨åˆ†

2. 汇编器和链接器ä¸å®Œæ•´
  • ä»åœ¨å¼€å‘中
  • 演示视频使用了 GCC 的汇编器和链接器

3. ä»£ç æ•ˆçއä¸é«˜
  • å³ä½¿å¼€å¯æ‰€æœ‰ä¼˜åŒ–ï¼Œè¾“å‡ºä»£ç æ¯” GCC 无优化还慢

4. Rust 代ç è´¨é‡
  • åˆç†ï¼Œä½†è¿œä¸åŠä¸“家级 Rust å¼€å‘者

5. 接近能力上é™
  • 新功能ç»å¸¸ç ´å已有功能
  • æŸäº›é—®é¢˜ï¼ˆå¦‚ 16 ä½ x86 åŽç«¯ï¼‰Agent 无法解决


äº”ã€æ ¸å¿ƒæ´žå¯Ÿï¼šä»€ä¹ˆæ˜¯çœŸæ­£é‡è¦çš„

1. 环境设计 > æç¤ºå·¥ç¨‹

Carlini 强调:智能ä¸åœ¨äºŽæç¤ºï¼Œè€Œåœ¨äºŽå¾ªçޝ + 环境。

䏿˜¯å†™æ›´å¤æ‚çš„æç¤ºè¯ï¼Œè€Œæ˜¯è®¾è®¡ï¼š

  • 清晰的测试信å·
  • åˆç†çš„任务分解
  • 有效的å调机制
  • 快速å馈循环

2. Git 是共享大脑

æ²¡æœ‰ä¸­å¤®è§„åˆ’å™¨ï¼Œæ²¡æœ‰æ¶ˆæ¯æ€»çº¿â€”—Git 仓库就是å调机制。

优势:

  • æŒä¹…化:进度ä¸ä¼šå› å´©æºƒä¸¢å¤±
  • å¯å®¡è®¡ï¼šäººç±»å¯ä»¥æ£€æŸ¥ä¸€åˆ‡
  • 简å•ï¼šæ²¡æœ‰å¤æ‚的通信åè®®

3. 专业化 + 并行 > å•个超级 Agent

䏿˜¯è®© Agent æ›´èªæ˜Žï¼Œè€Œæ˜¯è®©å®ƒä»¬æ›´ä¸“注。

100K è¡Œä»£ç æ— æ³•塞进一个上下文窗å£ï¼Œä½†å¯ä»¥åˆ†è§£æˆ 10 个 10K 行的å­ç³»ç»Ÿï¼Œæ¯ä¸ªç”±ä¸€ä¸ª Agent 负责。

4. 测试驱动 > 计划驱动

没有中央规划器分解任务,测试套件定义了正确性,CI å¤±è´¥ç”Ÿæˆæ–°å·¥ä½œã€‚

Agent 通过"å°è¯• → 测试 → 失败 → ä¿®å¤ â†’ æäº¤"的循环迭代å‰è¿›ã€‚


å…­ã€å¯¹è½¯ä»¶å¼€å‘çš„æ„义

我们现在能åšä»€ä¹ˆï¼Ÿ

1. 并行代ç å®¡æŸ¥

  • 3 个 Agent åŒæ—¶å®¡æŸ¥ï¼šå®‰å…¨ã€æ€§èƒ½ã€æµ‹è¯•覆盖
  • 比顺åºå®¡æŸ¥å¿« 3 å€

2. 多å‡è®¾è°ƒè¯•
  • 3 个 Agent åŒæ—¶æŽ¢ç´¢ä¸åŒçš„ bug å‡è®¾
  • 分享å‘现,互相验è¯

3. å¤§è§„æ¨¡é‡æž„
  • 多个 Agent 并行处ç†ä¸åŒæ¨¡å—
  • 通过测试确ä¿ä¸ç ´å功能

边界在哪里?

é€‚åˆ Agent Teamsä¸é€‚åˆ Agent Teams
任务å¯åˆ†è§£ä¸ºç‹¬ç«‹å•元任务高度耦åˆ
有明确的正确性检验需è¦åˆ›é€ æ€§è®¾è®¡å†³ç­–
有å‚考实现å¯å¯¹æ¯”从零设计架构
规格明确且稳定需求频ç¹å˜åŒ–

å¼€å‘者的角色转å˜

从"写代ç "到"设计环境":

  • 设计测试策略
  • 定义任务边界
  • 建立å调机制
  • 监控和调整

从"实现者"到"架构师":
  • Agent 负责执行
  • 人类负责决策
  • Agent 处ç†ç»†èŠ‚
  • äººç±»æŠŠæ¡æ–¹å‘


ä¸ƒã€æœªæ¥å±•望

短期(1-2 年)

  • Agent Teams 产å“åŒ–ï¼šå†…ç½®å¹¶å‘æŽ§åˆ¶ã€å®¡è®¡ã€å¯è§†åŒ–
  • éªŒè¯æ ˆæ‰©å±•:更多 oracle 和差分测试工具
  • ä¼ä¸šé‡‡ç”¨ï¼šæ²»ç†å±‚管ç†å›žå½’ã€æº¯æºã€æ‰§è¡Œæƒé™

中期(3-5 年)

  • 自主开å‘团队:Agent 承担更多架构决策
  • 跨项目学习:Agent 从多个项目积累ç»éªŒ
  • 人机å作新模å¼ï¼šäººç±»ä¸“注创新,Agent 处ç†å®žçް

长期(5 年+)

  • 软件工程范å¼è½¬å˜ï¼šä»Ž"写代ç "到"设计 Agent 环境"
  • å¤§è§„æ¨¡è‡ªåŠ¨åŒ–ï¼šå¤æ‚系统的大部分开å‘ç”± Agent 完æˆ
  • 新的软件形æ€ï¼šä¸º Agent 优化设计的编程语言和工具

å…«ã€ç»“语:我们站在哪里?

16 个 Claude Agent 写出 10 万行 C 编译器,这件事本身令人惊å¹ã€‚

但更令人深æ€çš„æ˜¯ï¼šè¿™ä¸æ˜¯ç»ˆç‚¹ï¼Œè€Œæ˜¯èµ·ç‚¹ã€‚

我们正从"AI 辅助编程"èµ°å‘"AI 主导开å‘"。Agent Teams 展示了这ç§å¯èƒ½æ€§ï¼Œä¹Ÿæ­ç¤ºäº†éœ€è¦çš„æ¡ä»¶ï¼š

  • 清晰的测试和验è¯
  • åˆç†çš„任务分解
  • 有效的å调机制
  • 人类的监ç£å’Œå†³ç­–
Carlini 在文章结尾写é“:
"Building this compiler has been some of the most fun I've had recently, but I did not expect this to be anywhere near possible so early in 2026."
(构建这个编译器是我最近最有趣的ç»åŽ†ä¹‹ä¸€ï¼Œä½†æˆ‘æ²¡æƒ³åˆ°åœ¨ 2026 å¹´åˆå°±èƒ½åšåˆ°è¿™ç§ç¨‹åº¦ã€‚)
æœªæ¥æ¥å¾—比预期更快。

å‚考链接


你怎么看待 AI Agent Teams 的未æ¥ï¼Ÿæ¬¢è¿Žåœ¨è¯„论区分享你的想法。

讨论回å¤

0 æ¡å›žå¤

还没有人回å¤