
为代理提供上下文,为人提供所有权:为什么无归属的 AI 贡献正在破坏开源
在过去的一年里,我们看到开源项目中的 AI 生成拉取请求(PR)大幅增加。其中一些 PR 在形式上是正确的,甚至可以通过测试。在某些情况下,维护者为了保护项目和他们自己,不得不暂时关闭所有外部 PR。
开源界并非在抵制 AI,维护者是在抵制“无主执行”。

这是对系统承受压力时的理性反应。
这不是一个关于“坏贡献者”或“恶意自动化”的故事。许多贡献者都是出于好意。问题在于,AI 改变“工作形态”的速度快于我们的贡献规范、工作流程和社会契约的演进速度。曾经可控的、零星的误解,现在已经变成了洪水猛兽。
开源项目中 AI 拉取请求(PR)的问题
我们以前经历过这种情况。Hacktoberfest 期间的垃圾信息曾迫使维护者划定严格的界限。随意提交的格式修复和“Hello World”PR 让人们很容易分辨出哪些贡献缺乏意图。那些很容易关闭。
现在的不同之处在于,AI 生成的 PR 看起来并不明显糟糕。它们看起来很完美。测试通过了。代码也能运行。
维护者反复报告同样的问题:没有人负责。没有后续跟进,没有理解,也没有所有权。真正的问题在于贡献者如何使用 AI。一个没有负责人的 AI 生成的拉取请求,即使差异(diff)看起来很干净,也与垃圾信息无异。
每一个拉取请求都在隐性地要求维护者评估:
- 这是否符合项目的架构?
- 它是否与长期目标一致?
- 它是否重新引入了我们已经否决的权衡?
- 这是否会在六个月后增加维护负担?
从历史上看,这种上下文差距会随着时间推移而缩小。贡献者通过先前的 PR 反馈、讨论以及与维护者的反复互动来学习项目规范。误解的成本会被长期分摊。
AI 降低了代码生产的成本,但并没有降低理解项目的成本,因为理解需要时间和技能。
当维护者抵制 AI 生成的 PR 时,他们真正要求的是:减少意外、尽早对齐、减少重复解释、明确所有权和跟进,以及证明贡献者(及其 AI)在占用维护者时间之前已经审阅过工作成果。
换句话说,他们希望在实现之前验证意图,并让上下文随着工作成果一同传递。这是一种系统性的要求。
将上下文视为配置
我们以前见过这种模式。当工具降低了生产工作的成本,而没有降低审查工作的成本时,瓶颈就会转移,进而导致倦怠。
如果我们观察开源如何适应过去的扩展压力,一种模式就会显现出来:
- 社会规范 → 书面准则
- 书面准则 → 强制检查
- 强制检查 → 标准化格式
有理由预测,AI 辅助贡献将遵循同样的道路。在不久的将来,我们可能会看到:
- 以更结构化、机器可读的形式表达的项目规则
- 明确规范 AI 使用的贡献标准
- 实施前的验证变得比事后审查更为普遍
- 关于 AI 辅助所有权和后续跟进的共同期望
维护者需要找到杠杆来减轻认知负荷。实际上,这并不一定需要新的标准或平台。
我们正在走向一个仓库上下文默认可被机器读取的世界。无论是 AI 代理的 rules 文件,还是专门的 linter,目标都是一样的:将拒绝提前(shift the rejection left)。在对齐偏差成为维护者手机上的通知之前,就将其拦截。
Angie Jones 分享了 Block 如何通过将 AI 使用与明确的、机器可读的指导以及基于 AI 的预审查相结合,来鼓励使用 AI,从而确保贡献者在维护者看到工作之前就完成了清理。区别不在于是否使用了 AI,而在于所有权、上下文和后续跟进。

将上下文管理视为基础设施
除非文化以 AI 能消化的方式表达出来,否则 AI 系统无法“吸收文化”。文档解释如何工作。上下文管理则解释为什么事情是现在这个样子。
当这些信息只能通过反复解释获得时,它就成了瓶颈。仓库中描述架构约束的 .md 文件不仅是文档,更是 AI 代理的基础设施。
重建社会契约
长期以来,开源项目有一种不成文的社会压力。当你打开一个拉取请求时,你是可见的:
- 你的名字附在变更上
- 你的理解(或误解)被公开展示
- 你被期待回答问题
- 你被期待去学习
提交 PR 不仅仅是一个技术行为,更是一个社会行为。
你不想显得漫不经心,不想浪费维护者的时间。你想证明你在用心。这种压力并不总是友好的,但它确实创造了责任感。
结果是,现在 PR 的后续跟进变慢了,反馈变浅了,所有权在社会契约削弱的过程中悄然消失了。
开源项目一直基于一种隐性契约:
如果你提交了工作,你就得对后果负责。
该契约依然重要,并且在 AI 辅助的世界中,需要被明确地重申。
使用 AI 并不减轻责任,反而在增加责任。如果你不是亲手编写每一行代码,你仍然需要:
- 理解代码的作用
- 解释它为什么属于该项目
- 回应审查反馈
- 如果代码有误,进行修改或撤回
AI 可以帮你思考,但它不能替项目思考。这也是社会压力重新发挥作用的地方——不是作为门槛,而是作为尊重。
明确的规范和更好的工具将解决大部分问题。但当贡献者反复无视上下文、跳过后续跟进或将 PR 视为一次性消耗品时,强制执行就变得有必要了。Hacktoberfest 之所以取消垃圾信息的资格是有原因的。项目之所以禁止惯犯也是有原因的。
采取后果措施并非为了残酷,而是为了保护那些让项目得以存续的人。包含贡献质量和问责制的强制性行为准则不再是可选项。这早已迫在眉睫。
AI 辅助的 PR 仍然需要人类所有者
从贡献者的角度来看,必须明确一点:
无论代码是如何生成的,每个 PR 都必须有一个明确且负责的人类所有者。
该所有者负责上下文、后续跟进和修改。
对于项目而言,将文化、约束和上下文转化为任何贡献者(无论是人类还是代理)都能即刻理解的基础设施,可能就是通往 AI 时代的一座桥梁。
AI 降低了生产代码的成本。开源现在必须通过提高责任的明确性来进行再平衡。贡献,即使是在 AI 的辅助下,依然是一种关系。工具变了,但对信任的需求没变。我们只是需要建立支撑这种信任的基础设施。