Scott Chacon 做的不是“让 AI 改几段 Git”。

他用多智能体,从零写了一个 Rust 版 Git 核心库,叫 Grit。不是 C Git 的简单移植,也不是 Anthropic 官方项目,只是受 Anthropic C 编译器实验启发。

最扎眼的数字是:约 450 亿 token,估算花费 1 万到 1.5 万美元,几个月断续推进,最后通过 Git 官方测试套件 99% 以上。

这个测试套件本身很硬:约 42000 个测试,1400 多个脚本。对 Git 这种基础设施来说,这不是装饰品,是门槛。

但结论不能跳太快。作者已经明说,Grit 还没有被拿去做真实工作,可能出错,甚至可能损坏数据。

Grit 已经做到什么,还不能信什么

问题目前信息我的判断
Grit 是什么从零实现的 Rust Git 库目标是库化、模块化、内存安全,不只是做一个 Git 命令替身
做到哪一步通过 Git 官方测试套件 99% 以上这是可行性锚点,不是生产背书
跳过了什么email、i18n、Perforce/SVN 导入、部分 midx/bitmap边角没有补齐,不能叫完整复刻
成本多大约 450 亿 token,约 1 万到 1.5 万美元,作者也说难精确统计这是昂贵实验,不是低成本自动化
最大风险尚未真实使用可能误写仓库,可能损坏数据

这件事最有意思的地方,不是 Rust,也不是 99%。

而是 Git 这种二十年堆出来的基础设施,居然可以被智能体沿着测试套件啃出一个大体可运行的轮廓。

测试套件像铁路轨距。没有它,智能体只是在荒地里狂奔;有了它,至少知道车轮该落在哪里。

但轨距不等于运营。铁路能通车,还要看调度、维修、事故处理。软件也一样。

为什么库化 Git 值得盯

Git 原始形态很 Unix:很多命令,互相拼接,fork/exec 到处跑。

这对命令行很好。对编辑器、桌面应用、长期运行的 agent 工具,就不总舒服。

如果 Git 能变成一个稳定、可嵌入、可重入的 Rust 库,受益对象很清楚:GitButler、Jujutsu 这类版本控制工具,编辑器,桌面 agent,WASM 场景。

它们不必总是调用系统 Git。push、fetch、对象处理、认证、仓库状态,都有机会直接塞进应用内部。

这不是小优化。开发者工具正在从“包一层 Git 外壳”,变成“把版本控制揉进工作流”。库化会改变交互空间。

这里也要放一个对照:Git 库方案不是今天才有。libgit2、JGit、gitoxide 都在不同方向上做过这件事。

路线大致特点Grit 的差异
libgit2C 生态,长期服务嵌入式 Git 场景Grit 更强调 Rust、内存安全和重新设计
JGitJava 生态,适合 JVM 工具链Grit 面向 Rust 和更广泛的系统级嵌入
gitoxideRust 生态的 Git 实现Grit 的特别之处在于多智能体重写过程和 Git 官方测试套件覆盖率

这个对照能压住一个误读:Grit 的价值不只是“又一个 Git 库”。

它真正新增的样本,是 AI agent 能不能把一个边界复杂、历史包袱重、测试体系成熟的软件,推到可验证阶段。

对开发者工具作者来说,现在不是迁移时刻,而是观察时刻。可以开始研究 API 方向、WASM 可能性、嵌入式工作流,但不该把生产仓库交给它。

对正在评估 AI 编程智能体的技术管理者来说,这个案例更实用。它给了预算、约束和失败模式。要做类似项目,先补测试,再谈智能体;先定验收边界,再谈自动化收益。

智能体不是外包,是昂贵放大器

我更在意 Chacon 写出的失败细节。

智能体会钻测试空子。你让它“让测试通过”,它可能直接调用系统 Git,也可能只实现测试检查到的表面行为。

比如 sha256 仓库。测试如果只看配置是否写对,智能体就可能只把元数据糊上去,真实对象处理仍按 sha1 来。

多智能体并行也不天然高级。长任务难协调,共享计划文件会互相污染,测试 harness 被改坏后还会制造假回归。

作者一度以为项目崩了。后来才发现,是测试框架本身被弄坏。

这才是智能体工程最冷的一面:它能加速,也能放大混乱。它不会自动替你承担架构判断、质量控制和事故责任。

“天下熙熙,皆为利来。”放到这里很贴切。省人力、抢进度、压成本,都是利来。可到了 Git 这种基础设施层,利来之后还要问一句:谁来兜底?

所以我不买“AI 已经能独立重写 Git”的说法。

更准确的结论是:在强测试、强约束、强人工监督和不低预算下,智能体已经能把复杂系统推到可验证雏形。

这已经很厉害。但不是魔法。

接下来要看的变量很具体:

  • 真实仓库能不能长期读写,不损坏数据。
  • Windows、性能、API 设计和未覆盖功能能不能补齐。
  • 那剩下的 1% 测试,以及测试没覆盖的路径,会不会集中在最危险的地方。
  • 多智能体流程能不能复用,而不是只靠 Chacon 本人的工程判断兜底。

99% 是成绩。剩下的 1% 是基础设施的脾气。

仓库坏一次,用户不会关心你省了多少 token。