上周 Godot(一个用户量很大的开源游戏引擎)更新了贡献政策:全面禁止 AI 代理直接提交代码,违者永久禁止访问仓库。这是目前最强硬的一次"反 Vibe Coding"表态。我每天都在用 Claude Code 写代码,看到这个新闻的第一反应不是"AI 又被针对了",而是"这个规则说的正是我一直担心的问题"。
先说清楚 Godot 具体做了什么
Godot 基金会这次更新贡献政策,核心是三条:
| 规则 | 具体内容 |
|---|---|
| 禁止 AI 代理直接提交代码 | 违者永久禁止访问仓库,这是目前开源社区里最严厉的处罚力度 |
| 新贡献者门槛 | 合并 PR 数量在 3 个及以下的用户被定义为"新贡献者",会有额外限制 |
| 强制人工审核 | 任何 PR 必须由真人完成审核并批准,才能合并进主分支------这条规则以前就有,这次是进一步明确和强化 |
触发这次政策更新的原因: 大量 AI 生成的低质量 PR 涌入项目,维护者的审查负担暴增,同时也引发了代码质量和责任归属的争议------如果一段 AI 生成的代码出了问题,责任算谁的?
这不是个例,而是一个正在扩大的趋势
Godot 不是第一个这么做的项目。最近开发者圈里流行一个新词------"Vibe Slop"(氛围垃圾代码),专门用来形容那种"看起来能跑,但没人真正理解、也没人愿意负责"的 AI 生成代码。
这个词流行起来,本身就说明了一个现象:大量开源维护者已经被"Vibe Coding 提交的低质量代码"折磨够了。
维护者的困境很实际:
- 审查一段人写的代码,你大致能判断作者的思路和意图
- 审查一段 AI 生成的代码,你完全不知道提交者自己有没有理解这段代码在干什么
- 如果代码出问题,提交者可能自己都答不上来"为什么这样写"
对开源项目来说,PR 数量暴增但质量下降,等于维护成本不降反升。
作为个人开发者,我怎么看这件事
我自己每天都在用 Claude Code 写代码,效率提升是真实的。但 Godot 这次的政策,让我重新想清楚了一个问题:Vibe Coding 适合"你自己负责"的场景,不适合"你要说服别人相信"的场景。
具体展开:
| 场景 | Vibe Coding 是否合适 | 原因 |
|---|---|---|
| 自己的项目,自己维护 | ✅ 合适 | 出了问题自己扛,理解不理解是自己的事 |
| 给团队提 PR | ⚠️ 谨慎 | 同事需要理解你的代码,AI 生成的东西你自己都说不清就麻烦了 |
| 给开源项目提 PR | ❌ 不合适 | 维护者要为整个项目的长期质量负责,你的"不理解"变成了别人的负担 |
| 写文档/脚手架/一次性脚本 | ✅ 合适 | 低风险,出错影响小 |
Godot 这次针对的其实是最后一种情况的极端版本: 有人用 AI 生成代码,自己完全不审查就直接提 PR 给维护者,把"理解代码"这个责任完全甩给了别人。这不是在用 AI 提升效率,是在用 AI 转移劳动。
一个容易被忽略的区别:AI 辅助 vs AI 甩锅
我自己现在用 AI 写代码,会明确区分两种情况:
AI 辅助(我依然负责):
- 让 AI 生成初稿,我逐行看过、理解、调整
- 遇到我不确定的地方,会去验证或者测试
- 提交前,我能对每一行代码的存在负责
AI 甩锅(我不再负责):
- AI 生成什么就是什么,没有真正 Review
- 提交的时候,其实是"把责任转移给了下一个看代码的人"
- 出了问题,第一反应是"这是 AI 写的"
Godot 这次的政策,本质上是在强制大家从"甩锅模式"切回"辅助模式"。 我觉得这个方向是对的,只是用了比较激烈的手段(一刀切禁止 AI 代理提交,而不是要求提交者做更严格的自我审查)。
这对我们日常写代码有什么启发
不管你是不是给开源项目提 PR,Godot 这次事件都值得我们对照检查一下自己的 AI 使用方式:
自查清单:
- 提交代码前,我能不能对每一行的存在给出理由?
- 如果同事问我"这段逻辑为什么这样写",我能不能不查 AI 对话记录就回答?
- 我有没有真正 Review 过 AI 生成的内容,还是看起来能跑就直接提交了?
- 如果这段代码出了 bug,我能不能独立排查,而不是重新问一遍 AI?
四个问题里如果有两个以上答不上来,说明你正在从"AI 辅助"滑向"AI 甩锅",需要收一收。
最后
Godot 这次的强硬表态,不是"AI 编程不行",而是"不负责任的 AI 编程不行"。作为每天靠 AI 提效的开发者,我反而觉得这种边界感是好事------它把"用 AI 写代码"和"用 AI 逃避理解代码"这两件事划清楚了。
Vibe Coding 本身没有错,错的是把"我不需要理解"也一起 Vibe 掉了。
你怎么看 Godot 这次的政策?你在用 AI 写代码时,会不会做逐行 Review? 评论区聊聊。