Claude Code 现在使用用 Rust 编写的 Bun
Bun 是 Anthropic 最近收购的 JavaScript 运行时,它已经在 AI 代理的帮助下从 Zig 移植到了 Rust,并且通过尚未正式发布的 1.4 构建版本,正在为 Claude Code 终端客户端提供支持。评论者争论这究竟标志着软件开发的一个转折点——证明大规模、由 AI 驱动的重写可以部署给数百万人——还是一种有风险的营销噱头,会损害代码质量、社区治理和开源精神,尤其是在大量依赖 `unsafe` Rust 和 AI 生成改动的情况下。也有人更关注实际影响:Bun 的金丝雀构建在 Anthropic 的使用场景下似乎可用,但频繁更新、不透明的版本管理,以及 Claude Code 的 UI 缺陷,让一些开发者质疑其稳定性和长期可信度。
Bun 1.4 和 Claude Code
- Claude Code 已经连续数周随 Bun 1.4(Rust 重写版本)一起发布,早于带标签的公开 1.4 正式版。
- 有人将其视为在一个受控的单一产品上“自己吃自己的狗粮”使用金丝雀构建;也有人认为这实际上让 Claude 用户成了公开测试版用户。
治理、开放性与预发布使用
- 有人担心,在被收购后,治理变得不透明:不清楚是谁决定 Bun 的方向,是否主要由公司所有者说了算。
- 争论点在于:在闭源应用中使用一个未打标签、可能是私有的构建版本,是否违背了 FOSS 的“精神”,即使仓库和金丝雀构建是公开的。
- 也有人认为这种预期不恰当:MIT 许可证项目并不意味着社区治理。
语言切换与社区影响
- 从 Zig 切换到 Rust 被一些人视为扼杀了 Bun 作为社区驱动的 Zig 旗舰项目的地位,并传递出公司控制的信号。
- 也有人认为,语言选择次于安全性、维护和招聘;最终用户更关心它能否正常工作。
- Zig 爱好者担心这会打击 Zig 被认为具备可行性的印象。
AI 驱动重写的质量
- 这次重写在很大程度上是借助 LLM 将 Zig→Rust 进行转换,然后再反复迭代。
- 支持者认为:测试 + 更安全的语言 + 更好的工具带来的是净收益;真实世界中的使用(Claude Code、金丝雀版)至今还没有出现重大回归。
- 怀疑者则认为:逐行、非惯用的 Rust 再加上大量
unsafe的使用,很可能只是保留了 bug,甚至引入了新 bug;可维护性也令人怀疑。
Unsafe Rust 与内存安全
- 大量
unsafe代码块(约 14k)让一些人感到警惕;他们认为 Rust 真正的安全收益尚未体现出来。 - 也有人指出,原始 Zig 代码实际上“全是 unsafe”;缩小 unsafe 范围并对其进行标注,本身就是进步,而且后续还可以逐步清理。
对贡献者与问题单的影响
- 许多重写前的 PR 和 Zig 特定问题都变得过时,或被自动关闭;一些人认为这对贡献者和社区努力不尊重。
- 使用机器人/代理进行项目管理也受到批评,认为其做法很草率:已修复的问题还开着,未修复的问题却被关闭。
Claude Code 的 UX 与工程选择
- 有多份报告提到 TUI 渲染故障、CPU/RAM 占用高,以及偶尔的 segfault;一些用户已经转向其他 harness。
- 大量使用 JS/React 的 TUI 技术栈普遍受到质疑;批评者问:如果 LLM 真的让重写这么便宜,为什么不做一个轻量的原生 TUI?
- 支持者强调 web/desktop/CLI 之间共享 JS 逻辑,以及快速迭代;并认为架构是商业决策,“总体上是可行的”。
更广泛的 AI 开发影响
- 许多人将这次大规模成功移植并投入使用视为一个信号:我们已经进入一个新阶段,LLM 能够处理大规模重写。
- 也有人认为这主要是营销噱头,担心“AI 残渣”、供应链风险,以及无限自动重构带来的环境成本。