引言
这个系列已经讲了 Claude Code 的底层机制、扩展能力的工程演进、以及自动编排与防失控。但一直缺一个东西:真实的、大规模的生产案例。
Anthropic 最近两篇博客正好补上了这个缺口。一篇讲他们怎么用 Claude Code 把百万行代码从 Zig 迁到 Rust;另一篇讲他们新推出的 Managed Agents——一套帮团队把 Agent 从原型变成生产级服务的基础设施。
这两篇放在一起看,就是 Claude Code 从"个人工具"走向"生产平台"的完整路线图。
一、百万行代码迁移:不是翻译,是生产线
先看几个数字:
Bun 的 Jarred Sumner 用 Claude Code 把项目从 Zig 迁到 Rust,不到两周产出 100 万行代码,合并前 CI 中所有原有测试通过。另一个案例,Anthropic Labs 的 Mike Krieger 用一个周末,把 Python 代码库迁成了 16.5 万行 TypeScript,跑了数百个 Agent、8 道阶段闸门、3 轮对抗审查。
Anthropic 过去一个月一共迁了 10 个代码包,每个都有数万到数十万行。
注意,这不是"Claude 一次把代码翻译对了"。真正让规模迁移成立的,是它把迁移改造成了一条可以反复运行、机械验收、失败后继续收敛的生产线。
人不再追着每个文件改。人负责规则、裁判和异常模式,Agent 负责把队列烧完。用原文里最值钱的一句话:别修代码,修产生代码的循环。
为什么代码迁移特别适合多 Agent
大规模迁移刚好满足 Agent 最喜欢的几个条件:
- 工作能并行:上千个文件可以切成独立批次
- 旧代码就是规格:原程序已经把行为写出来了,Agent 可以同时对照源语言、目标语言和真实输出
- 有机械裁判:编译器、冒烟测试、完整测试套件、命令输出 diff,都能明确告诉 Agent 对还是错
- 规则可以向后传播:一个 Agent 发现边界问题,不是只补当前文件,而是把解法写回迁移规则,后面所有 Agent 都按新规则执行
这也是它和普通"批量翻译代码"的根本区别:并行只负责提速,统一规则和机械验收才负责不失控。
六步迁移:最重要的工作都发生在大规模翻译前
第一步,建立规则手册、依赖图和差距清单。 规则手册规定类型、惯用法和架构怎么映射;依赖图决定哪些文件先迁;差距清单记录无法直接翻译的隐性知识。顺序不能反:先定默认规则,再找默认规则盖不住的差距。
第二步,用小样本把规则撞一遍。 Bun 迁移时,一个 Agent 按规则翻 3 个文件,另一个 Agent 像资深工程师一样翻同样的文件,第三个 Agent 比较差异并补规则。只跑这轮小实验,就提前抓到两个会扩散到 1448 个文件的关键问题。
这里最反直觉的是:试迁出来的代码全部扔掉。 这一轮的产物不是代码,是更可靠的规则。
第三步,把翻译任务铺开。 批处理脚本从磁盘重建待办队列,高吞吐翻译交给较小模型,写规则和做审查留给更强模型。如果同一种错误反复出现,别手补十个文件——给规则手册加一句,再重新生成受影响的那一批。
第四到第六步,依次编译、运行、对齐行为。 编译错误由 fixer agents 分批处理;崩溃交给冒烟测试;最后把新旧程序放到同一套测试里比行为。人的注意力不要放在某一个红叉,要看哪些红叉总以同一种方式出现——单点失败交给 loop 消耗,重复模式才值得人修改上游规则。
裁判要严格到能抓住已知错误
Anthropic 把强裁判列为前置条件。没有它,你连"迁完了"是什么意思都说不清。
裁判必须做一次反向验证:原程序应该通过,故意破坏的程序必须失败。抓不住已知错误的测试,不是裁判,只是安慰剂。
Mike 没有现成的跨语言测试,就做了 7 个真实场景的 parity harness,把 Python 和 TypeScript 输出逐项比较,任何行为差异都算 Bug。
账要算清楚
Bun 迁移消耗了约 16.5 万美元的 API 费用(59 亿 uncached input tokens + 6.9 亿 output tokens)。但过去百万行迁移可能是 4 年、300 万到 400 万美元的人力项目。最坏情况也从"维护两套半成品几年"变成"删掉分支,改好规则再跑一次"。
效果也不是只看行数。Bun 的一个 2000 次重复构建基准,内存从 6745 MB 降到 609 MB;Python 到 TypeScript 的项目,启动快 6 倍,还删掉了一条独立部署流水线。
所以别因为"Claude 能迁"就迁。业务收益、测试裁判、Token 预算、审查能力,四样缺一个,都可能把漂亮 Demo 变成昂贵烂尾。
二、Managed Agents:把 Agent 从原型推向生产
如果说代码迁移展示了 Claude Code"能干什么",那 Managed Agents 展示的是"怎么让它稳定地干"。
演进线:从 tokens in/out 到全托管
- 2023 年,简单 API 时代。 最早的 Claude API 只是 tokens in, tokens out。模型只负责思考,工具调用、循环、文件系统这些外壳全得开发者自己搭。
- 2025 年,Claude Code 和 Agent SDK。 Claude Code 自带了一套打磨过的内部 harness,后来通过 Agent SDK 开放出来。
- 现在,Managed Agents。 不只是给你 harness,而是把 harness + 整套生产基础设施一起托管。你专注写 Agent 的逻辑和领域知识,运行、伸缩、安全交给平台。
核心设计:把"大脑"和"双手"拆开
过去 Agent 的 harness(负责推理的"大脑")和它操作的 sandbox 文件系统(执行代码的"双手")经常挤在同一个容器里。听起来没毛病,但一上规模三个问题全冒出来:
- 启动慢——每跑一个 Agent 都要冷启动一个容器
- 凭证暴露——你的 API key 和 Agent 生成的代码待在同一个容器里
- 挂了就全丢——容器一崩,跑到一半的进度全没了
Managed Agents 的解法:把大脑和双手拆开,中间用一条 append-only 的 session 日志连接。 大脑在一边推理,双手在另一边执行,两边通过这条只追加、不修改的事件流对话。
拆开之后,整套东西由三种资源组成:
- Agents:配置——用哪个模型、什么提示词、能调哪些工具、有什么护栏
- Environments:执行上下文——sandbox 容器、预装好的依赖包
- Sessions:一次具体的运行——完整事件历史存在服务端,可观察、可恢复
拆开之后赚到了什么
- 凭证安全:凭证放进保险库,信封加密,Agent 现场写的代码碰不到密钥
- 延迟大降:首 token 时间中位数降了约 60%,最慢的那批降了 90% 以上
- 会话可持久、可恢复:容器崩了不再等于从头再来,可以从断点接着跑
- 部署灵活:既可以用 Anthropic 托管,也可以把 sandbox 放进你自己的 VPC 里
一个容易被忽略的 lesson
博客里有一段特别值得拎出来:模型在进化,harness 必须跟着一起进化。
在 Sonnet 4.5 上,Agent 快用到上下文末尾时会"赶工"——感觉自己快没空间了,就急着草草收尾。团队给 harness 加了上下文重置来修这个问题。结果到了下一代模型,这个毛病没了,那段优化也就不需要了。
这意味着什么?如果你自己维护 harness,你就得永远追着模型的脾气改——这一代有这个怪癖你补一段,下一代变了你再删一段。而 Managed Agents 的意义就在这:这些跟着模型版本来回横跳的优化,平台替你扛了。
谁该用
对绝大多数团队来说,维护一套 harness 是"不产生差异化"的纯开销。 你的产品凭什么赢?是你的领域知识、你对上下文的组织能力,不是你那套 Agent 循环写得比别人精巧。
几个客户数据:Notion 用自定义 Agent 把"十二个小时的活干成了二十分钟";Sentry 的调试 + 自动 PR Agent,单个工程师几周就搞定,过去得几个月;Rakuten、Atlassian 跨部门铺开 Agent 大约一周就上。
它还带了生产级特性:Memory 和 Dreaming(定时回顾 session、从中提炼模式)、Outcomes(Agent 按评分标准给自己的活打分)、多 Agent 编排、权限策略、webhook、MCP tunnel 连私网。
总结
把代码迁移和 Managed Agents 放在一起看,是一条完整的生产级路线:
代码迁移展示了"能做什么"——百万行代码不再是"多年豪赌",而是"昂贵但可以重跑的工程实验"。关键是把迁移变成一条生产线:规则负责不失控,裁判负责验证,loop 负责收敛。
Managed Agents展示了"怎么稳定地做"——把大脑和双手拆开,用一条 append-only 日志连接,让 Agent 从个人玩具变成可伸缩、可恢复、可审计的生产服务。
两者的共同点:人不再追着每个任务改。人负责规则、裁判和异常模式,Agent 负责把队列烧完。 这不是"AI 替代人",而是把人的工程判断外化成系统约束。
从 tokens in/out,到自带 harness,再到托管整个基础设施——这条线的终点不是"AI 更聪明",而是"开发者只需要关心 Agent 该干什么,不用操心它怎么跑"。
参考链接
- Anthropic Blog: How Anthropic runs large-scale code migrations with Claude Code
- Anthropic Blog: Building with Claude Managed Agents