排异反应——当开源世界开始集体拒绝 AI 写的代码

排异反应——当开源世界开始集体拒绝 AI 写的代码
2026 年上半年一件几乎不可能发生的事接连发生了全世界最重要的一批开源项目开始把AI 写的代码挡在门外。GCC、QEMU、Godot、curl、Ghostty、tldraw……这些名字撑起了半个软件世界的地基。它们不约而同地竖起高墙理由却出奇一致不是 AI 写得不好而是没人审得过来。当一台机器可以在三秒内生成一个看起来无懈可击的 Pull Request而一个人类维护者需要三个小时才能证明它是错的——这场战争从一开始就不公平。一、一份平淡无奇的公告炸开了整个社区2026 年 6 月 30 日开源游戏引擎 Godot Foundation 发布了一则公告。标题平平无奇内容却毫不含糊**全面禁止 AI 生成的代码贡献禁止 vibe coding禁止 AI Agent 提交 PR禁止 AI 生成的文本出现在社区沟通中。**唯一被允许的只有代码补全、正则替换这类琐事。消息一出社交媒体瞬间炸开。有意思的是人们震惊的点不是Godot 居然这么做而是——它终于这么做了。早在 2026 年 2 月Godot 核心维护者 Rémi Verschelde 就已经在 Bluesky 上公开喊话说涌进来的 AI PR 正变得 increasingly draining and demoralizing越来越令人心力交瘁、士气崩溃。那条帖子获得了广泛共鸣无数维护者在底下附和。可五个月过去问题没有好转反而更糟。于是忍无可忍的 Godot把那道憋了半年的闸门重重关上了。而 Godot 不是第一个也远不会是最后一个。二、一张正在变长的封杀名单如果把 2026 年上半年开源世界对 AI 代码的反应画成一张时间表你会发现这根本不是某个项目的一时冲动而是一场结构性的集体退守项目时间核心措施tldraw2026-01不分 AI 与否直接关闭全部外部 PR业界称之为核选项curl2026-01全面关停运行了 6 年的漏洞赏金计划确认漏洞比例从 15% 暴跌到不足 5%Ghostty2026-01仅允许现有贡献者针对预批准议题提交 AI 辅助 PR其余一律即时关闭QEMU2026-05全面禁止 AI 代码生成器的贡献后逐步考虑放宽 20 行以内的机械性修改Godot2026-06禁止实质性 AI 代码、自主 Agent 的 PR 自动封禁琐碎辅助须披露GCC2026-07拒收任何具有法律意义的 LLM 生成代码仅对测试用例网开一面这些名字意味着什么GCCGNU 编译器套件几乎所有 Linux 发行版、嵌入式系统、基础软件生态的底座QEMU撑起了全球云计算虚拟化的模拟器curl被内置进 Windows、macOS 和几乎所有 Linux是这个星球上部署最广的网络工具之一Godot全球最主流的开源游戏引擎之一。这不是一群边缘玩家在闹脾气而是软件世界最坚硬的地基开始出现集体性的排异反应。更值得注意的是各家的药方完全不同tldraw 选择了最激进的核选项宁可错杀不可放过Ghostty 设了预批准议题这道关卡在允许 AI 的同时遏制无节制的提交QEMU 起初一刀切如今又从20 行以内机械修改这类低风险地带小心翼翼地重新开放。业界标准没有收敛成统一模式每个项目都在按自己的资源和风险承受能力各自摸索平衡点。这恰恰说明他们面对的不是一个有标准答案的技术问题而是一场没有先例的生存危机。三、真正崩溃的不是代码是审查要理解这场排异反应先得抛掉一个直觉性的误解——很多人以为开源项目封杀 AI是因为AI 写的代码质量差。错了。真正崩溃的是审查环节。Godot 团队在公告里说了一句极其精准的话生成一个 PR 所需的工作量下降了PR 数量随之飙升但审查 PR 的工作量和审查人数纹丝未动。这个审查者短缺问题一直存在但我们过去成功地忽视了它。现在再也忽视不了了。这句话道破了整件事的底层逻辑。传统开源协作有一个隐含的平衡**写代码是有成本的。**一个贡献者要读懂架构、理解上下文、写出补丁、测试通过才敢提交一个 PR。这个成本天然过滤掉了大量低质量、不认真的贡献。写的人少审的人也少供需大致平衡。AI 一来这个平衡被彻底击穿。写代码的成本被打到了趋近于零。任何人哪怕完全不懂引擎架构也能让 Claude Code 或 Cursor 在几秒内吐出一个看起来像模像样的 PR然后一键提交。但审查代码的成本一分没降。它甚至更高了——因为 AI 生成的代码往往看着对一跑就出坑维护者必须打起十二分精神逐行确认那些精心措辞、逻辑自洽的代码里到底藏着什么。于是开源项目的核心瓶颈在一夜之间完成了迁移从没人写代码变成了没人审代码。四、最致命的是那个不对称如果只是数量变多问题还没那么可怕。真正杀死维护者的是一种残酷的不对称结构生成只需数秒反驳却需数小时。一个人用 AI 生成一份漏洞报告或一个 PR成本几乎为零、时间以秒计。但一个维护者要严肃地证明这个漏洞不存在或这段代码是错的却需要通读代码、复现场景、查阅历史、撰写解释——动辄几个小时。攻守双方的成本差了几个数量级。这不是拼质量的战争这是一场用零成本弹药进行的消耗战。哪怕 100 份 AI 提交里有 99 份最终被拒维护者也已经被那 99 份耗尽了心力。而维护者是谁在绝大多数开源项目里他们是一小撮不拿钱、靠热爱在支撑的志愿者。curl 创始人 Daniel Stenberg 在宣布关停赏金计划时说了一句让整个社区沉默的话我们只是一个小小的开源项目只有少数几个活跃的维护者。我们没有能力去改变所有这些人和他们的废话机器slop machines的运作方式。我们必须采取行动来确保我们的生存和完好无损的心理健康。完好无损的心理健康——当一位写了几十年代码的顶级工程师需要用这样的措辞来解释一个技术决策时你就知道这早已不是一个技术问题了。五、curl 的故事从AI 垃圾到高质量混乱curl 的经历是这场危机里最值得细读的一个样本因为它揭示了一个反直觉的真相问题的根源从来不是质量差。第一幕2026 年 1 月。curl 的漏洞赏金计划运行了整整 6 年被 AI 生成的虚假报告淹没。Stenberg 举了个例子仅一周内团队就在 16 小时里收到 7 份 HackerOne 报告到 1 月下旬累计达 20 份。这些报告语言严谨、结构完整、表面专业但逐一验证后发现——漏洞根本不存在。这就是那个被反复提及的词AI SlopAI 废话——看似合理、实则无效的冗余内容。有一份报告里AI 编造了一个叫curl_easy_setopt的代码片段可那个函数签名根本对不上连编译都过不了。curl 团队成员回复我觉得你是 LLM 幻觉的受害者。当提交者还在坚持这个漏洞很危险时Stenberg 亲自下场你被一个 AI 骗了还以为那是真的。于是 curl 在 2 月 1 日彻底关停了赏金计划理由很直接移除经济诱因让那些不做研究、只靠 AI 批量生成的投机者无利可图。但真正精彩的是第二幕。2026 年 4 月Stenberg 发了一篇博客标题叫《High-Quality Chaos》高质量混乱。关停赏金、转回 HackerOne 之后他本以为洪水会退去。结果呢提交频率不降反升达到了 2025 年的两倍但这一次质量却大幅提升了——被确认为真实安全问题的比例从早期跌到 5% 的谷底强劲反弹到接近 16%甚至超过了 AI 出现前 2024 年的水平。这组数据背后藏着一条更惊悚的曲线。Stenberg 统计了两次漏洞报告之间的间隔时间2020–2024 年平均每 100 小时才有一次提交2025 年缩短到 50 小时以内2026 年跌破 25 小时。维护者几乎每天都要处理新报告工作量呈指数级增长。他预计curl 在 2026 年可能要发布接近 50 个 CVE——一个史无前例的记录。看懂这里的悖论了吗第一阶段的AI 垃圾你还可以用质量差来拒绝。但到了高质量混乱阶段报告都是真的、都有效、都值得修——可它们来得太快、太多了。当每一份都值得认真对待时维护者反而被彻底压垮。Stenberg 还发现这早已不是 curl 一家的困境。他在 Mastodon 上随手做了个调查确认有同样趋势的项目包括Apache httpd、BIND、Django、Firefox、git、glibc、Linux kernel、Python、Ruby、Wireshark、GnuTLS、OpenLDAP……他写道我打赌这份名单只是碰巧看到我提问的一小撮项目。你还能找到更多正在经历这一切的项目。这不是某个项目的伤口这是整个开源肌体的系统性发炎。六、表面是版权骨子里是责任的消失如果说 curl 面对的是数量的洪水那 GCC 和 QEMU 守的是另一道防线法律与责任。2026 年 7 月GCC 指导委员会正式采纳新政策拒收任何具有法律意义的、由 AI/LLM 生成或派生的代码贡献只对测试用例网开面。QEMU 更早2026 年 5 月维护者 Daniel Berrangé 提交的政策文档写得很清楚迄今为止尚未形成关于代码生成器输出结果的许可影响的普遍认可的法律解释……鉴于对 AI 代码生成器输出许可问题的共识缺失若补丁包含此类生成代码则声称符合 DCO 条款被视为不可信。这里的关键词是DCODeveloper Certificate of Origin开发者原创声明。在传统开源世界里你提交一个补丁本质上是在签一份声明**我有权贡献这段代码我为它的来源负责。**这是整个开源信任体系的地基。可当代码是 AI 生成的这份声明就悬空了——训练数据里有没有 GPL 代码有没有侵犯版权的片段没人说得清。于是我为它负责这句话也就失去了根基。Godot 说得更直白AI 不能承担责任我们也不能指望过分依赖 AI 的用户能充分理解他们的代码并能进行修正。看到了吗所有这些政策绕来绕去最终都指向同一个词——责任accountability。传统开源开发依赖一个朴素的原则**提交代码的人不只是作者也是责任承担者。**过去一个开发者提交 GCC 补丁意味着他读过代码、理解逻辑、愿意接受维护者的审查与追问并在出问题时回来修。但 AI 时代出现了一种新的提交方式**人用自然语言让模型生成代码简单扫一眼就提交了。**当维护者追问这里为什么这么写提交者答不上来——因为他自己也不知道。责任链在这里断掉了。七、这不是反 AI这是反不负责任必须澄清一个巨大的误读这些项目封杀的不是 AI而是无人负责的批量提交。如果只看标题你会以为 Godot 是因为讨厌 AI 而禁止。但看它的实际政策就会发现——**代码补全、正则替换这类常规 AI 用法全都允许。**真正被禁的是提交者自己都读不懂的大批量代码和无人介入的自主 Agent PR。标准从来不是你是否用了 AI而是**你能不能为你提交的东西负责。**有意思的是这条标准在 AI 出现之前本就是开源界的潜规则。只不过 AI 大规模地、批量地制造出了违反这条潜规则的案例逼得大家不得不把潜规则写成明文。curl 的 Stenberg 就是最好的证明——他并不一概反对 AI 辅助的报告。2025 年 9 月他曾公开赞扬一位叫 Joshua Rogers 的研究者此人用一套 AI 驱动的代码分析工具主要是 ZeroPath提交了一大串 bug当时直接促成了 22 个 bug 的修复。Stenberg 的评价是一个聪明人用了一个强大的工具。他真正批判的是另一类人我相信我们收到的最糟糕的报告都来自那些只会去问 AI 机器人、既不关心也不理解它报告了什么的人。区别一目了然。**同样是 AI一个是人驾驭工具一个是人被工具驾驭。**前者放大了人的能力后者只是把不负责任规模化了。开源社区筑起的墙挡的是后者。而 QEMU 从全面禁止到重新开放 20 行以内机械修改的松动也说明了同一件事社区并非要与 AI 为敌他们只是在为责任重新划定一条可执行的边界。八、更深的裂缝一份靠信任维系的社会契约如果我们把镜头再拉远一点会看到这场排异反应背后一道更深的裂缝正在扩大。开源本质上是一份基于信任的社会契约。它从来没有真正的警察。GPL 也好、DCO 也好靠的不是强制执行而是全球开发者之间一种心照不宣的默契我贡献真实的、我负责的东西你审查它、信任它、把它合并进去。整个体系的运转建立在绝大多数人是认真的这个假设之上。AI 击穿的正是这个假设。最棘手的一点是——不可检测性。你无法可靠地判断一段代码是不是 AI 写的。Godot 说要禁止 AI 生成的代码但它凭什么检测它靠的依然是那份信任贡献者主动披露、为自己的提交负责。换句话说这些政策本身也只是在给一份正在瓦解的信任契约打补丁。当生成内容的成本趋近于零、当责任可以被轻易甩给一个不具人格的模型、当我不知道它怎么工作的成了一句可以坦然说出口的话——支撑开源三十年的那份信任正在被稀释。curl 用户在赏金关停后曾抱怨这是治标不治本是在处理症状而非病因。Stenberg 基本同意但他也无可奈何——因为病因是整个行业级的激励结构和成本结构一个小项目根本无力扭转。这才是最让人不安的地方每一个项目的自救都是理性的但所有理性自救叠加起来可能正在改变开源协作本身的形态。九、排异之后开源会走向何方那么这场排异反应会把开源带向哪里一种可能是贵族化。当外部贡献的信噪比崩溃项目会本能地收缩信任半径——只信任已经建立声誉的老贡献者Ghostty 的现有贡献者门槛或者干脆关闭外部 PRtldraw 的核选项。开源那扇任何人都能贡献的大门正在悄悄变窄。这对一个靠人人可参与起家的运动来说是根上的转变。另一种可能是工具进化。如果说 AI 制造了洪水那也许只有 AI 能筑起堤坝。未来的开源基础设施很可能需要一套 AI 驱动的预审系统——在 PR 到达人类维护者之前先自动过滤、复现、验证。curl 表扬的 ZeroPath 就是一个雏形用 AI 对抗 AI 的滥用用工具的进化去修复工具带来的失衡。还有一种可能是契约重写。DCO、CLA 这些沿用了几十年的协作契约可能需要为 AI 时代彻底重写明确的 AI 使用披露、可追溯的责任链、乃至某种贡献者信誉分机制。GCC、QEMU 现在写的那些政策文档也许正是这场重写的第一批草稿。尾声免疫系统的觉醒生物学上排异反应是免疫系统识别到异物后的自我保护——它有时会误伤有时会过度但它的存在本身说明这个肌体还活着还在努力分辨什么属于自己什么不属于。2026 年开源世界的这场集体排异本质上也是如此。它不完美。tldraw 的核选项可能误伤了真诚的贡献者GCC 的法律红线可能过于保守这些政策的可执行性全都建立在摇摇欲坠的信任之上。但它至少说明了一件事**面对 AI 带来的、成本趋近于零的内容洪水人类协作系统正在长出自己的免疫力。**它在艰难地重新回答那个最古老的问题——在一个任何人都能瞬间生成看起来正确的东西的世界里我们到底该信任谁curl 的 Daniel Stenberg 在博客结尾留下了一个没有答案的问题Where does it end?这一切将在哪里结束没有人知道。但可以肯定的是那道已经竖起来的墙短期内不会拆掉。而墙的另一边那些一天生成成千上万个 PR 的废话机器正变得越来越强。这场排异反应才刚刚开始。本文基于 2026 年 1–7 月公开报道与一手资料整理主要信源包括Daniel Stenberg 个人博客《High-Quality Chaos》2026-04-22、Ars Technica、IT之家、Godot Foundation 官方公告2026-06-30、GCC 指导委员会声明2026-07、QEMU 贡献政策文档2026-05、钛媒体、OSCHINA 等。文中数据与引述均来自上述来源。