
chardet,一个检测文本编码的小库,每个月被下载 1.3 亿次。几乎每个处理过 CSV、爬过网页的 Python 项目都用过它。维护者 Dan Blanchard 用 Claude 把它从头重写了一遍。新版快了 48 倍,支持多核,代码和旧版相似度低于 **1.3%**。
然后他把协议从 LGPL 改成了 MIT。
原作者 Mark Pilgrim 在 GitHub 开了个 issue,说:你这叫衍生作品,LGPL 要求你保持协议。Blanchard 回:我没看过旧代码,Claude 是从 API 文档和测试用例重写的,这是全新的独立作品。
这件事在开源圈炸了。

Flask 作者 Armin Ronacher 写了篇文章,说这没问题,甚至表示他自己也想用 AI 重写 GNU Readline,就是因为它是 Copyleft 协议。Redis 作者 antirez 也发文,从版权法和 GNU 历史出发,认为 AI 重写在法律上完全站得住脚。
两个人都说:这是合法的。所以没问题。
但问题就在这个跳跃里。
合法,不等于合理。

antirez 的论据是这样的:当年 GNU 项目重写 UNIX 工具,人家也说侵权,但 GNU 赢了。现在 AI 重写 GPL 代码,道理一样。
这个类比乍看很有力,仔细一想,方向完全反了。
GNU 重写 UNIX,是把专有软件变成了自由软件。他们是在给公地(commons)加砖。Copyleft 的力量来自它的方向感:从封闭到开放。所以大家鼓掌。
chardet 这件事方向相反。把有 Copyleft 保护的自由软件变成了 MIT 许可的代码。用 chardet 7.0 的下游项目,从此不需要开源了。12 年贡献者们共同建立的"你用我的代码,你也要分享"的契约,消失了。
antirez 拿 GNU 的先例为 AI 洗白,恰恰引用了一个反例。
Ronacher 文章里有个细节,他没仔细说,但值得多想。
Vercel 用 AI 重写了 GNU Bash,发布了。合法,开源社区应该鼓掌对不对?
接着 Cloudflare 用 AI 重写了 Next.js(Vercel 的产品),也发布了。Next.js 是 MIT 协议,完全合法。
Vercel 的人在 Twitter 上气炸了。(原帖)
Ronacher 看到这个,笑了一下,然后继续说"我支持 AI 重写"。但他没停下来想:这个自打脸说明了什么?
说明"分享精神"在他们的框架里是单向的。分享别人的(尤其是 GPL 代码)= 进步;别人分享我的 = 侵犯。

FSF 执行主任 Zoë Kooyman 说得直接:"拒绝给别人你曾收到的权利,无论你用什么方法,都是反社会行为。"
LGPL 不只是 Blanchard 一个人的决定。那 12 年里,有其他贡献者提交过 bug fix、优化、测试。他们同意协议的时候,是接受了一个条件:你用这个代码,你也要分享。
法院可能最终判决 AI 重写不构成衍生作品。但那只告诉我们法律允许什么。
它不告诉我们这件事是不是对的。
原文作者 Hong Minhee 提出了一个方向:Specification Copyleft。
如果 AI 能用 API 文档和测试套件重写代码,那核心知识产权就不在源码里,而在规格里。Blanchard 自己的辩护——"我只给 Claude 看了测试用例"——恰恰是把测试套件作为核心资产的承认。下一代 Copyleft 要保护的,可能是规格和测试,而不是源码。
GPL 的每一次进化(v2 → v3 → AGPL)都是社区先形成价值判断,再找法律工具表达它。这次也一样。
Bruce Perens,开源定义的作者,说的是:"整个软件开发经济学,死了。"这是警报,不是终结。
我问过几个身边的开发者。有人说:管他呢,MIT 比 LGPL 好用,感谢 AI。也有人说:下次有人用 AI 重写我的代码删掉协议,我不知道该怎么办。
如果有人用 AI 重写你维护了多年的开源项目,把协议从 GPL 改成 MIT——你会怎么想?