开源项目的维护者正在以惊人的速度拒绝外部贡献者的参与。丹尼尔·斯坦伯格在1月份终止了cURL长达六年的漏洞赏金计划;米切尔·桥本禁止在Ghostty项目中使用由AI生成的代码;史蒂夫·鲁伊斯更是采取了更为极端的措施——tldraw现在会自动拒绝所有来自外部的拉取请求。这些并非个例,它们其实是红蒙克公司分析师凯特·霍尔特霍夫所称的“AI代码泛滥危机”的体现:大量低质量的AI生成代码涌入开源社区,导致维护者根本无法应对。
然而根据中欧大学与基尔世界经济研究所最近发表的一篇研究论文,这种表面上的危机其实隐藏着更深层次的结构性威胁。该研究模拟了这样一种情况:让AI代理来选择和组装开源软件包,而开发者无需阅读文档、报告漏洞或与维护者进行交流。
研究结果表明,当开源项目依赖用户的参与才能获得收益时——比如文档浏览量、漏洞报告数量以及社区认可度——这种由AI主导的开发模式会形成一种负反馈循环。随着开发者将代码选择任务交给AI,文档被阅读的次数就会减少,人类发现的漏洞也会相应减少,进而影响维护者的积极性。尽管AI大大提高了开发效率,但该模型预测,软件的可用性和质量最终还是会下降。
例如,在ChatGPT推出的六个月内,Stack Overflow上的活动量减少了25%;Tailwind CSS的下载次数虽然增加了,但文档浏览量和收入却分别下降了40%和80%。对于丹尼尔·斯坦伯格来说,当支付给贡献者的奖金总额达到86,000美元时,情况开始恶化:到2025年,有20%的提交内容是由AI生成的,而有效代码的比例更是降到了5%。
这一危机不仅仅体现在漏洞赏金计划上。Stacklok公司的联合创始人克雷格·麦克卢基指出,过去那些高质量的初始问题标签曾经吸引了许多工程师,这些人后来也成为了开源项目的贡献者。但他现在表示:“现在我们只要把某个问题标记为‘高质量初始问题’,不到24小时之后,就会收到大量低质量的AI生成代码,这些代码让我们无法专心进行真正的工作。”
霍尔特霍夫认为,问题的根源在于现有的筛选机制已经失效。过去,编写代码需要花费时间和精力,这自然能过滤掉那些不认真的贡献者;但AI的出现消除了这一障碍,从而导致目前这种混乱的局面。
为了解决这个问题,桥本在Ghostty项目中采取了零容忍政策:任何未经批准就提交AI生成代码的贡献者都会被禁止继续参与项目。
这并不是反对人工智能的立场,而是反对那些利用人工智能来编写低质量代码的行为。Ghostty这个项目的开发过程中确实得到了大量人工智能技术的帮助,我们的许多维护者也每天都在使用人工智能工具。我们只是希望看到高质量的贡献,而不管这些贡献是通过什么方式产生的。
Ruiz的做法更为极端。当他发现自己使用人工智能编写的脚本会导致一些质量低下的问题时,那些使用这些脚本的人会将这些问题输入到他们的人工智能工具中,从而生成一些毫无意义的拉取请求,于是他彻底停止了接受外部用户的贡献:
如果编写代码本来就是一件容易的事,那我为什么还要让别人来来做呢?
平台自身的激励机制更是加剧了这个问题。GitHub在2025年5月推出了Copilot功能,用于自动生成问题报告,但却没有为维护者提供任何工具来过滤那些由人工智能生成的贡献内容。Flux CD的核心维护者Stefan Prodan指出了这种矛盾:
人工智能生成的低质量代码正在对开源项目的维护者造成严重的干扰,而那些托管开源项目的平台也没有动力去阻止这种现象。相反,这些平台反而有动机夸大由人工智能生成的贡献内容,以此来向他们的股东展示“价值”。
研究人员提出了一种“Spotify模式”,即让人工智能平台根据用户对软件包的使用情况来重新分配订阅收入。然而他们的计算结果显示,那些使用人工智能生成代码的用户需要贡献出目前直接参与开发的用户所产生贡献量的84%,这个标准显然是不现实的。许多开源基金会制定的政策更注重许可证的规范,而不是代码的质量。Linux基金会关注许可证的兼容性问题,而Apache则建议在代码中添加“Generated-by:”标签,但这些措施都无法有效解决当前的问题。Gentoo Linux和NetBSD都完全禁止了使用人工智能生成的代码,但正如RedMonk的Holterhoff所指出的,在一两年内,检测这些违规行为实际上将会变得不可能。
Koren警告说,这种危害会呈现出不平衡的影响:
那些受欢迎的开源项目仍然能够找到支持者,而一些规模较小、定位较为 niche 的项目则更有可能受到严重影响。但是像Linux、git、TeX或grep这样的成功项目,最初都是由某个人出于自己的兴趣开始开发的。如果那些小型项目的维护者放弃了,那么下一个“Linux”又会由谁来创造呢?
目前,像Stenberg、Hashimoto和Ruiz这样的维护者们正在通过一个接一个地关闭他们的项目来回答这个问题。