"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 的工业级编译器。
两周åŽï¼Œç»“果出æ¥äº†ï¼š
ä¼ ç»Ÿçš„ AI 编程助手(如 Claude Codeã€Cursor)是å•线程的:
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 ↠待认领
规则很简å•:
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 作为"已知好的"编译器
├── éšæœºåˆ†å‰²ç¼–译任务,对比结果
└── 逿¥ç¼©å°é—®é¢˜èŒƒå›´
Carlini å‘现:测试质é‡å†³å®šäº† Agent 能走多远。
早期,Agent ç»å¸¸"解决"了错误的问题——测试ä¸å¤Ÿç²¾ç¡®ï¼ŒAgent 以为任务完æˆäº†ï¼Œå®žé™…上没有。
改进措施:
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 行日志 ...
并行ä¸ä»…æ„味ç€é€Ÿåº¦ï¼Œè¿˜æ„味ç€ä¸“业化:
| Agent 角色 | èŒè´£ |
|---|---|
| **功能开å‘** | 实现新特性 |
| **ä»£ç æ¸…ç†** | åˆå¹¶é‡å¤ä»£ç |
| **性能优化** | æå‡ç¼–译器效率 |
| **代ç 生æˆä¼˜åŒ–** | 优化输出代ç è´¨é‡ |
| **架构审查** | 从 Rust å¼€å‘者角度改进结构 |
| **文档维护** | 更新 README 和注释 |
æ¯ä¸ª Agent 在自己的领域深耕,质é‡è¿œè¶…"å…¨æ ˆ"Agent。
当 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 tests | 99% 通过率 |
| ç»ˆæžæµ‹è¯• | 能编译并è¿è¡Œ Doom |
1. ä¾èµ– GCC 的部分功能
Carlini 强调:智能ä¸åœ¨äºŽæç¤ºï¼Œè€Œåœ¨äºŽå¾ªçޝ + 环境。
䏿˜¯å†™æ›´å¤æ‚çš„æç¤ºè¯ï¼Œè€Œæ˜¯è®¾è®¡ï¼š
没有ä¸å¤®è§„åˆ’å™¨ï¼Œæ²¡æœ‰æ¶ˆæ¯æ€»çº¿â€”—Git 仓库就是å调机制。
优势:
䏿˜¯è®© Agent æ›´èªæ˜Žï¼Œè€Œæ˜¯è®©å®ƒä»¬æ›´ä¸“注。
100K è¡Œä»£ç æ— 法塞进一个上下文窗å£ï¼Œä½†å¯ä»¥åˆ†è§£æˆ 10 个 10K 行的å系统,æ¯ä¸ªç”±ä¸€ä¸ª Agent 负责。
没有ä¸å¤®è§„划器分解任务,测试套件定义了æ£ç¡®æ€§ï¼ŒCI å¤±è´¥ç”Ÿæˆæ–°å·¥ä½œã€‚
Agent 通过"å°è¯• → 测试 → 失败 → ä¿®å¤ â†’ æäº¤"的循环è¿ä»£å‰è¿›ã€‚
1. 并行代ç 审查
| é€‚åˆ Agent Teams | ä¸é€‚åˆ Agent Teams |
|---|---|
| 任务å¯åˆ†è§£ä¸ºç‹¬ç«‹å•å…ƒ | ä»»åŠ¡é«˜åº¦è€¦åˆ |
| 有明确的æ£ç¡®æ€§æ£€éªŒ | 需è¦åˆ›é€ æ€§è®¾è®¡å†³ç– |
| 有å‚考实现å¯å¯¹æ¯” | 从零设计架构 |
| è§„æ ¼æ˜Žç¡®ä¸”ç¨³å®š | 需求频ç¹å˜åŒ– |
从"写代ç "到"设计环境":
16 个 Claude Agent 写出 10 万行 C 编译器,这件事本身令人惊å¹ã€‚
但更令人深æ€çš„æ˜¯ï¼šè¿™ä¸æ˜¯ç»ˆç‚¹ï¼Œè€Œæ˜¯èµ·ç‚¹ã€‚
我们æ£ä»Ž"AI 辅助编程"èµ°å‘"AI 主导开å‘"。Agent Teams 展示了这ç§å¯èƒ½æ€§ï¼Œä¹Ÿæç¤ºäº†éœ€è¦çš„æ¡ä»¶ï¼š
"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 的未æ¥ï¼Ÿæ¬¢è¿Žåœ¨è¯„è®ºåŒºåˆ†äº«ä½ çš„æƒ³æ³•ã€‚
还没有人回å¤