Claude Code 源码泄露 51 万行!Anthropic「被动开源」,连「卧底模式」都没防住自己
📅 事件时间:
2026 年 3 月 31 日,愚人节前夜📦 泄露规模:51.2 万行 TypeScript 代码,1900+ 文件🔍 发现者:FuzzLand(Web3 安全公司)实习研究员💥 圈内评价:AI 界的「核泄漏」
愚人节前夜,AI 圈炸了。
2026 年 3 月 31 日,一个普通的工作日,Anthropic 的工程师们可能正准备下班过周末。
然后他们发现——Claude Code 的源码,在 npm 上裸奔了。
整整51.2 万行 TypeScript 代码,1900+ 个文件,包括工具调用逻辑、权限系统、Agent 架构、提示词工程……全部打包成了一个 57MB 的 Source Map 文件,静静躺在 npm 注册表里,等着任何人来下载。
发现者倒不是黑客——是 Web3 安全公司 FuzzLand 的一名实习研究员。

🔓 一个 .map 文件,怎么就闯了大祸?
说白了,就是一次打包失误。
Source Map 文件是干嘛的?是把压缩混淆后的生产代码映射回原始源码,用于调试。发布到 npm 时,这东西本不应该放进去。
但 Anthropic 的构建流程出了疏漏,57MB 的 cli.js.map 被一起打进了正式包。
更糟糕的是,这个 .map 文件直接指向 Cloudflare R2 存储桶——一个任何人都能访问的公开链接。
换句话说:
不需要反编译,不需要逆向——只要下载这个 npm 包,点开 .map 文件,51 万行代码就直接摊在你面前。

🤦 最讽刺的是:代码里有「卧底模式」

所谓「卧底模式」(Undercover Mode),据说是用来防止员工在公开仓库里暴露内部信息的。
Claude Code 专门做了这个模块,来确保自己人不会泄密。
结果——自己先把家底全抖出来了。
这个「卧底模式」现在成了全网笑柄,被戏称为「年度最佳讽刺代码」。
📊 泄露了什么?影响有多大?
|
|
|
|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
✅ 好消息:
模型权重没泄露,用户数据没泄露,普通用户没有直接安全风险。
❌ 坏消息:
护城河没了。Claude Code 最核心的工程实现被看光光了。
⚠️ 代码下架了,但损失已经造成
Anthropic 反应很快,紧急下架了问题版本。
但已经太晚了——
代码已经被 GitHub 镜像留存,开源社区的 Fork 和 Star 疯涨。即便 npm 包被删除,这些代码已经在全球开发者的硬盘里永久存在。
💣 这次泄露,被业内称为 AI 界的「核泄漏」
🌍 被动开源,对行业意味着什么?
虽然不是主动开源,但 51 万行代码摆在所有人面前,其影响不容小觑:
-
🏢 竞争对手:可以深入研究 Claude Code 的工程设计 -
🔬 AI 研究者:第一次有机会完整分析头部 AI 编程工具的 Agent 架构 -
🔒 安全社区:可以审计代码中的潜在安全漏洞 -
🚀 独立开发者:可以借鉴其设计思路,做自己的 Agent 工具
某种程度上,这是 Anthropic 给全行业发了一份「免费午餐」。
🔄 一周两次「被动开源」,Anthropic 该反思什么?
巧了,就在几天前,Anthropic 刚因为第三方 CMS 配置错误,泄露了将近 3000 份内部文件。
一周之内,两次「被动开源」。
问题不在于技术多复杂,而在于流程和检查机制。CI/CD 最后一步的发布检查,npm 包发布前的审核——这些本该是最后防线的地方,全线失守。
一家以安全著称的公司,在发布流程上出了最基础的纰漏,这个教训值得所有 Tech 公司记取。
✍️ 写在最后
这个事件发生在愚人节前一天,戏剧性拉满。
Claude Code 带着「卧底模式」的源码被扒了个精光,防得了别人泄密,防不住自己手滑。
不过对整个 AI 行业来说,这次泄露未必是坏事——技术扩散加速,行业壁垒降低,后来者能从中吸取的营养,远比失去的要多。
至于 Anthropic……
🚀 建议先把 CI/CD 流程从头到尾 review 一遍。
💬 你对这个事件怎么看?欢迎留言讨论 👇
夜雨聆风