Hotdry.

Article

Zig项目为何拒绝AI代码贡献:贡献者扑克的哲学与实践

深入解析Zig软件基金会反AI贡献政策的核心理念,探讨贡献者扑克思维对开源社区治理的深远启示。

2026-04-30compilers

在开源世界的版图中,Zig 语言以其独特的设计哲学和务实的技术路线而闻名。然而,真正让 Zig 在开发者社区中引发广泛讨论的,并非其精巧的语法设计,而是一套态度鲜明的反 AI 贡献政策。这项政策不仅是一份简单的社区准则,更折射出对开源生态本质的深刻洞察。

严格的边界:Zig 的 AI 禁令具体说了什么

Zig 项目的行为准则中明确列出了三项禁止性规定:禁止在问题追踪中使用 LLM、禁止在拉取请求中使用 LLM、禁止在错误追踪器的评论中使用 LLM,包括翻译工作。这一政策在主流开源项目中堪称最严格之列。其措辞不留任何灰色地带,既没有为所谓 “AI 辅助编程” 留出例外空间,也不承认所谓 “负责任地使用 AI” 这类中间路线。

这项禁令的背景值得关注。Zig 最著名的应用案例当属 Bun JavaScript 运行时,后者于 2025 年 12 月被 Anthropic 收购,顺理成章地在内部大量使用 AI 辅助开发。Bun 维护着 Zig 的一个分支,并在近期通过添加并行语义分析和多个代码生成单元实现了 4 倍的编译性能提升。然而,Bun 团队明确表示,由于 Zig 严格禁止 AI 生成的贡献,他们不打算将这些改进上游回 Zig 主仓库。这一案例生动地说明了该政策的实际约束力 —— 即便贡献者愿意付出工程努力,政策的刚性边界也不会因此松动。

贡献者扑克:超越代码本身的治理智慧

理解 Zig 反 AI 政策的钥匙,在于其社区副总裁 Loris Cro 提出的 “贡献者扑克” 概念。这一理念的核心论点是:成功的开源项目最终会达到一个临界点 —— 收到的拉取请求数量超出维护者的处理能力。面对这种局面,许多项目选择收紧贡献标准,只接受接近完美的代码补丁以最大化维护工作的投入产出比。然而,Zig 选择了截然不同的路径。

Zig 选择的是一条投资于人的路径。项目的目标不仅是接纳代码,更是帮助新的贡献者成长为可信赖的、长期活跃的社区成员。这背后的逻辑是开源开发的 “迭代博弈” 本质:贡献者带来的大部分价值存在于后续的迭代中,而非首次提交的补丁。Loris Cro 对此的比喻极为精妙 ——“玩的是人,不是牌”。在贡献者扑克中,你下注的是贡献者本人,而非其首个拉取请求的内容。

这一策略为 Zig 带来了巨大的实际价值。从零开始构建编译器工具链是一个庞大的工程,如果没有来自社区贡献者的持续投入,单靠核心团队难以完成。诸如 Windows 可执行文件图标编译支持、密码学标准库的重大改进等关键特性,均来自长期活跃的贡献者。Zig 基金会将培养这类关系视为其商业模式的组成部分 —— 用户选择 Zig,本质上是在信任 Zig 软件基金会能够提供持续高质量的语言和工具链,而这种信任的维系依赖于与贡献者之间建立的长期互信关系。

AI 为何天然与贡献者扑克相悖

从贡献者扑克的视角审视,LLM 辅助贡献的问题变得清晰无比。即便 AI 能够帮助提交一个完美的拉取请求,Zig 团队为审查该请求所投入的时间也丝毫无助于他们建立新的、可信赖的、长期活跃的贡献者关系。换言之,维护者花费的时间没有产生 “人的投资” 这一核心收益。

Zig 团队观察到 AI 贡献带来的实际问题远超潜在收益。大量由 LLM 生成的拉取请求充满幻觉,连基本的编译都无法通过,更遑论通过持续集成测试。更有甚者,某些首次拉取请求篇幅长达上万行,表面看起来无可挑剔,但后续的讨论立即暴露了作者只是在机械地复述 AI 的错误答案。这些现象极大地消耗了维护团队的精力,却未能带来任何社区建设的正向回报。

一个关键的认识是,反 AI 政策并非基于对 AI 技术本身的否定,而是基于对开源社区治理理性的务实计算。Zig 团队明确表示,他们并不认为 AI 本身是坏的,问题在于从贡献者扑克的角度看,在存在大量不使用 AI 的风险因素的贡献者可供选择的情况下,理性地押注于 AI 用户是不合理的。这一判断无关道德判断,纯粹是基于投入产出比的理性决策。

开源治理的多维启示

Zig 的反 AI 政策对整个开源社区治理具有超越单一项目的启示意义。首先,它提醒我们重新审视 “代码质量” 这一看似客观标准的局限性。当 AI 能够生成表面质量不错的代码时,传统的代码审查范式面临挑战 —— 如果维护者可以自己调用 AI 解决同样的问题,那么花费时间审查 AI 生成的代码意义何在?

其次,Zig 的经验揭示了开源项目作为 “人的网络” 的本质。代码只是载体,真正有价值的是围绕代码建立的人际关系、知识传递和社区信任。贡献者扑克的概念将这一本质显性化,为项目维护者提供了一套评估贡献价值的框架。

最后,该政策也反映出对 AI 技术当前发展阶段的务实判断。尽管大语言模型在许多场景下表现出色,但在需要深度领域知识、长期维护承诺和精细判断力的开源贡献场景中,其局限性仍然明显。Zig 选择在这一阶段明确划定边界,而非等待技术成熟后再做反应,体现了一种有意识的治理姿态。

值得注意的是,Zig 团队表示该政策仍处于动态调整中,随着对问题的深入理解,政策细节可能会有所变化。这种开放性本身就是贡献者扑克思维的体现 —— 治理本身也是一个迭代过程,需要在实践中不断学习和修正。

资料来源:Simon Willison 的博客文章以及 Zig 软件基金会副总裁 Loris Cro 在个人博客上对该政策的详细阐述。

compilers