Claude Code 已悄悄换上 Rust 版 Bun:75 万行迁移,用户几乎不该有感觉
林岚|OC 开发者生态编辑
林岚|OC 开发者生态编辑
据开发者 Simon Willison 检查,Claude Code 2.1.181 及之后版本已经包含从 Zig 迁移到 Rust 的 Bun 运行时。二进制字符串可识别出 Bun 1.4.0 和数百个 Rust 源文件名,Anthropic 与 Bun 团队随后也公布了迁移过程。
一句话结论: 这次变化重要的不是“Rust 又赢了一局”,而是一个约 75 万行代码的底层运行时在 11 天内完成迁移,并以用户几乎察觉不到的方式进入了数百万开发者使用的 Claude Code。
Bun 最初以 Zig 编写,是一个集 JavaScript 运行时、包管理、打包和测试于一体的工具。把这样一个项目换语言,和把普通应用重写不是一回事:底层内存布局、系统调用、JavaScriptCore 绑定、跨平台行为和大量边角兼容都可能变化。只要有一个小地方不同,落到 Claude Code 里就可能表现为命令挂起、文件监听失灵或安装脚本异常。
Anthropic 公布的信息称,迁移覆盖约 75 万行代码,在 11 天内完成,并通过 99.8% 的测试。真实工作负载性能改善约 2% 至 5%;Bun 创始人 Jarred Sumner 还提到 Linux 启动速度约快 10%。这些提升不错,但不是改写规模的主要解释。更核心的目标,是获得更成熟的内存安全工具、工程生态和长期维护路径。

AI 在其中扮演什么角色,也要说准确。Anthropic 把这次工程称为 AI 代码迁移案例,Claude Code 帮助逐模块转换、修复编译错误、补测试和比较行为。但这不等于输入一句“把 Bun 改成 Rust”,11 天后自动得到可发布产物。迁移之所以可能,是原项目已有庞大测试套件、清晰的性能基准,以及熟悉 Bun 内部结构的工程师持续决策。
99.8% 测试通过同样不等于 99.8% 功能完全一致。测试覆盖的是已被写成断言的行为,剩余 0.2% 可能是平台特例,也可能不影响 Claude Code 使用的子集;另一方面,没有测试到的行为不会进入这个百分比。所以更有说服力的证据,是 Rust 版已经被放进真实 Claude Code 发布版,由高频用户在实际终端任务中持续验证。
“用户几乎没感觉”恰恰是基础设施迁移最好的评价。开发者不需要为了庆祝重写去改配置,命令和脚本继续工作,性能稍有改善,维护团队以后更容易演进。底层工程的成功通常不是多一个按钮,而是少一次事故。
这也给正在考虑重写的团队一个现实参照。AI 显著降低了机械转换和反馈循环成本,却没有取消重写的前提:可执行测试、双实现对照、明确边界、真实流量验证和随时回退。没有这些,AI 只会更快地产生一份看起来完整的新代码库。
关键事实
- Claude Code 2.1.181+ 已包含 Rust 版 Bun 运行时,而非只停留在实验分支。
- Anthropic 称迁移约 75 万行代码、耗时 11 天、通过 99.8% 测试。
- 官方报告真实工作负载性能提升约 2% 至 5%;Linux 启动另有约 10% 改善的公开说法。
OC 判断
这不是语言信仰之争,而是 AI 工程能力的一次压力测试。AI 能把大型迁移从“几年不敢动”缩短到可执行项目,但真正让它上线的是测试、对照和渐进部署。模型负责加速,工程纪律负责兜底。
为什么重要
- 对开发者: AI 已能承担大规模机械迁移,但先补齐测试往往比先开 Agent 更重要。
- 对企业: 评估重写项目应看行为兼容和回退能力,不要只看转换了多少行。
- 对用户: Claude Code 的底层已变化,但正常使用不需要做任何迁移操作。
评论
围绕这篇文章补充信息、提出问题或分享观察。