Linux 内核开始认真给 AI 写规矩了:最狠的一句不是‘能不能用’,而是‘出了事你自己背’
AI 写代码这件事,最近已经从‘新鲜玩具’慢慢变成‘大家默认你会用一点’的状态了。
但越到这个阶段,真正值钱的问题反而不再是:
- 能不能用 AI
- 哪个模型更会写
- 补丁是不是能跑起来
而是更土、也更关键的那句:出了问题,到底谁负责?
Linux 内核最近把这件事正式写进文档,我觉得很值得开发者认真看一眼。不是因为它讲了什么惊天大原则,恰恰相反,是因为它讲得太正常了。
正常到有点像在提醒整个行业:
AI 可以帮你干活,但别想顺手把责任也外包给它。
这次 Linux 内核到底写了什么
新文档的核心其实不复杂,翻成人话大概就几条:
- 你可以用 AI 辅助 Linux 内核开发
- 但你还是得遵守原来的开发流程、代码风格和提交流程
- 所有代码仍然必须满足 GPL-2.0-only 等许可证要求
- AI 绝对不能替你加 Signed-off-by
- 人类提交者必须审查 AI 生成的代码,并对提交结果负全责
- 如果用了 AI,建议用
Assisted-by标签透明标注
你会发现,这套东西没有走两个极端。
它不是那种‘AI 是未来,大家放开用’的兴奋派,也不是‘只要碰了 AI 一律滚出去’的禁欲派。它的态度更像一句冷静的人话:
工具你可以用,流程你别跳,责任你别赖。
最关键的一刀,其实砍在 Signed-off-by 上
我觉得整份文档里最重要的一句,就是 AI agents 不能添加 Signed-off-by。
这件事看起来像格式要求,实际上不是。
因为 Linux 内核的 Signed-off-by 不是装饰,它对应的是 Developer Certificate of Origin。说白了,这不是‘我看过了’那么简单,而是你在用自己的身份确认:
- 这份提交是可以这样贡献的
- 我有权这么提交
- 它满足相应的许可证和贡献要求
这个动作天然就带法律和责任属性。
所以内核这次把话说死,其实是在堵一个非常现实的口子:别让 AI 看起来像在替人签字。
很多团队现在最大的问题不是 AI 会不会写代码,而是有人会不自觉地把‘AI 帮我生成’偷换成‘AI 帮我承担’。这一步一旦含糊,后面许可证、版权、责任归属,全会变得黏糊糊的。
Linux 这次相当于先把最容易装傻的地方钉死了。这个动作非常对。
它真正想解决的,不是技术问题,而是人类甩锅问题
我越来越觉得,现在很多 AI 编程争议,表面看在吵技术,实际在吵责任。
因为模型能力越强,越容易出现一种很危险的心理捷径:
- 代码是它写的
- 出 bug 是模型幻觉
- 许可证有问题是工具锅
- PR 被喷是提示词没写好
听起来像笑话,但现实里真的有人这么搞。
尤其在开源社区,这种行为特别招人烦。维护者最怕的不是你用了 AI,而是你自己都没搞懂代码,就拿着一坨模型输出来刷存在感;出了问题,再假装自己只是‘AI 的搬运工’。
Linux 内核这份规则,本质上就是把这条路堵上:
你当然可以把 AI 当工具,但你不能把自己降级成快递员。
补丁是你发的,名字是你署的,责任也得是你的。
另一个很成熟的点:它没有假装 AI 不存在
这份文档我挺喜欢的一点,是它没有装清高。
有些社区谈 AI,会有一种微妙的掩耳盗铃气质:
- 大家明明都知道有人在用
- 也知道以后只会更多
- 但规则层面一直不写
- 好像不写就等于问题不存在
这种做法短期省事,长期容易炸。
Linux 这次反而选了更成熟的路线:承认 AI 已经进场,然后把边界先画出来。
这也是为什么它引入 Assisted-by 标签很有意思。
这个标签不是为了羞辱谁,也不是为了搞‘AI 成分检测’,而是在做一件很工程化的事:
- 让贡献过程更透明
- 方便以后回看和追踪
- 帮社区积累 AI 参与开发的真实经验
这其实比假装大家都没用过 AI 要诚实得多。
对其他开源项目来说,这比“禁不禁 AI”更有参考价值
如果你维护自己的项目,我觉得这条新闻真正值得抄的,不是原样复制 Linux 的格式,而是抄它的思路。
也就是这三件事最好尽快写清楚:
1. 责任归谁
用了 AI 不等于责任转移。最终提交者必须承担 review、测试和后果。
2. 许可证怎么兜
尤其是对代码生成类贡献,许可证边界和来源合规最好提前写明,别等出事再吵。
3. 要不要透明披露
你不一定非得照着写 Assisted-by,但至少要想清楚:项目要不要记录 AI 在贡献流程里的角色。
这三件事一旦不提前说,后面社区很容易陷入一种又烦又没建设性的循环:
- 有人偷偷用
- 有人怀疑
- 有人一口咬死反对
- 规则始终空着
- 每次吵架都像第一次吵
这才是真的低效。
这条规则背后还有个更大的信号
我觉得 Linux 内核这次做的,其实不只是写一份文档,而是在释放一个挺清楚的行业信号:
AI 编程正在从‘能不能碰’阶段,进入‘怎么纳入成熟工程秩序’阶段。
前一个阶段大家最爱比的是:
- 生成速度
- benchmark
- 能写多少文件
- 能不能自己改 PR
后一个阶段更重要的会变成:
- 谁审
- 谁签
- 谁负责
- 谁背许可证风险
- 谁来定义透明度
说白了,真正成熟的工程体系,从来不会因为一个工具很强,就默认把责任结构一起打散。
AI 现在碰到的也是同一课。
我的判断
如果要我用一句话概括这件事,我会这么说:
Linux 内核这次最值得学的,不是它终于允许 AI 辅助贡献,而是它先把一句最容易被装糊涂的话讲明白了:工具可以代劳一部分工作,但不能代替人类承担提交责任。
这个态度一点都不花哨。
但我觉得,它比很多高谈阔论都更接近现实。
因为 AI 真正进入成熟开发流程之后,最重要的从来不会只是‘它写得够不够快’,而是:
当代码进入仓库、进入发布、进入事故复盘时,最后站出来签字和背锅的,必须还是一个活人。
这句话听着冷。
但工程世界里,冷静往往比兴奋值钱。