Claude Code 源码泄露完整复盘
51万行代码裸奔13个月:Anthropic 同一个问题踩两次
想象一下,你是一家估值180亿美元的AI独角兽,你最核心的编程工具源代码被人扒了个精光——不是被黑客入侵,而是因为你发布npm包时忘了一个点号。2026年3月31日,这出堪称”AI界年度最佳讽刺剧”真实上演了。
一、事件前因后果:一部13个月的”连续剧”
第一次泄露(2025年2月24日)
故事的起点,要从一年前说起。
Claude Code 刚上线不久,Anthropic在npm发布的安装包中,夹带了一个23MB的cli.js.map文件——这是Source Map文件,里面包含完整的源代码映射信息。安全研究员发现后报告,Anthropic紧急下架、删除相关版本,发布v0.2.9修复问题。
按理说,吃一堑长一智。但显然,Anthropic的团队没有长记性。
第二次泄露(2026年3月31日)
2026年3月31日凌晨4点23分,Anthropic按部就班地在npm发布了@anthropic-ai/claude-code v2.1.88版本。
这原本是一次普通的版本迭代。但他们忘了一件事——用Bun打包时,默认开启的Source Map生成功能没有被关闭,而.npmignore文件中也没有添加*.map的排除规则。
结果?一个59.8MB的cli.js.map文件,被原封不动地打包进了生产环境的npm包。
这个文件里,有个叫sourcesContent的字段,直接存储着Claude Code全部原始TypeScript代码——1906个文件、51.2万行代码、一个字符都不少。
当天下午4点30分,区块链安全公司FuzzLand的实习研究员Chaofan Shou(@Fried_rice)在检查npm包时发现了这个异常。
他随手输了几行命令:
npm pack @anthropic-ai/claude-code@2.1.88tar -xzf anthropic-ai-claude-code-2.1.88.tgzcat package/cli.js.map | jq -r '.sourcesContent[]'
51万行完整可读的TypeScript源码,就这样被还原了。
17:00,他在X平台(原Twitter)曝光此事。
18:00,GitHub上出现首个镜像仓库,1小时后狂揽1.1万Star、1.7万Fork。
19:00,Anthropic终于反应过来,紧急下架问题版本、推送v2.1.89修复。
但为时已晚——代码已经被无数次备份、传播、去中心化存储。
后续”闹剧”:DMCA封杀反杀
4月1日,Anthropic向GitHub提交DMCA下架通知,试图遏制源码扩散。
结果,由于过度依赖自动化工具匹配,误伤了约8100个无关仓库——包括一些正常的开源项目、甚至是Anthropic自身的部分开源项目分支。
开发者社区炸锅了。Boris Cherny(Claude Code项目负责人)紧急致歉,撤回误删请求。Anthropic颜面尽失。
讽刺的是,去中心化Git平台Gitlawb直接把源码做了镜像,公开喊话”永远不会被下架”。
二、泄露了什么?比你想象的更劲爆
51万行代码里藏着什么?
这次泄露的不是Claude大模型权重或训练代码,而是Claude Code客户端的完整生产级代码。
具体包括:
|
|
|
|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
8大未官宣的”黑科技”
代码中挖掘出的未发布功能,让开发者社区疯狂:
- KAIROS守护进程
:让Claude成为7×24小时自主运行的AI Agent,可定时任务、监听GitHub事件 - 自动部署模式
:代码中被引用超过150次 - 数据库操作模块
:未上线的数据管理功能 - 网页爬虫功能
:隐藏的数据抓取能力 - 反蒸馏机制
:防止竞争对手模型抄袭,故意输出错误信息干扰 - 省钱引擎
:追踪14种缓存失败原因,极致优化API调用成本 - 6级权限沙箱
:文件读写、Shell执行、网络请求的严格权限控制 - 完整System Prompt
:Claude Code的”底层世界观”、指令规则、行为边界全曝光
用一句话总结:Anthropic花了两年多研发的核心竞争力,被自己一次低级失误免费送给了全行业。
三、当前可用的修复仓库(实时状态:2026年4月)
⚠️ 重要提示:原始泄露代码因DMCA下架已无法访问,但以下是社区贡献的合法替代方案,建议按需选用:
1. 净室重写项目(推荐 ⭐)
|
|
|
|
|
|
|---|---|---|---|---|
| claw-code |
|
97.8k | 90.5k |
|
这是史上最快破10万Stars的仓库之一——发布2小时冲破5万,24小时破10万,创下GitHub历史纪录。
由韩国开发者Sigrid Jin创建,全程AI辅助(oh-my-codex工作流),从零重写Claude Code核心架构,明确声明不保留任何原始代码作为跟踪状态,法律风险极低。README标注为学习/研究用途,活跃更新中(23分钟前刚commit)。
项目亮点:
-
命令系统、工具manifest、slash命令全部重新实现 -
并行Rust系统语言移植(Rust占比92.8%) -
插件模型、hook pipeline完整
2. 本地可运行修复版(推荐动手能力强的开发者)
|
|
|
|
|
|---|---|---|---|
| claude-code-haha | 1.9k | 2.5k |
|
国内大佬连夜基于泄露源码修复的版本,解决了原始泄露代码无法直接启动的问题。支持任意Anthropic兼容 API(MiniMax、OpenRouter等),有Windows启动教程。5小时前还在更新。
3. 直接镜像仓库(学术研究用)
|
|
|
|
|
|---|---|---|---|
| claude-code-fork |
|
|
|
完整还原泄露的src/目录(1900+文件)。目前还在,没被删,但随时可能被DMCA。
4. 其他值得关注
|
|
|
|
|
|---|---|---|---|
| clawedcode |
|
|
|
| li-ruijie/claude-code |
|
|
|
5. 官方安全版本
如需使用官方修复版本,请从npm安装最新版:
npm install -g @anthropic-ai/claude-code@latest
四、行业影响:谁受伤?谁获益?
受伤的:Anthropic
- 声誉崩塌
:以”安全AI”为口号的公司,连续犯低级安全错误 - 商业承压
:Claude Code年化ARR达25亿美元(占公司19.5%),IPO估值被投行下调最高30% - 技术壁垒消失
:核心竞争力被抹平,竞品可直接借鉴
获益的:整个行业
|
|
|
|---|---|
| 国产AI编程工具 |
|
| 中小开发团队 |
|
| 安全研究人员 |
|
| 开源社区 |
|
五、安全启示:所有技术团队都该警惕
1. 发布流程是生命线
-
.npmignore/.gitignore必须严格配置 -
构建配置需专人审核 -
生产包文件内容必须校验
2. Source Map绝不能进生产包
Source Map的sourcesContent字段,会把压缩混淆后的代码100%还原成原始可读源码。行业规范要求:
-
✅ 生产环境必须删除.map文件 -
✅ 构建配置中关闭Source Map生成 -
✅ CI/CD流程中增加自动化检查
3. 一次泄露不等于终身免疫
Anthropic第一次泄露后,仅做了紧急修复,没有建立完善的发布审核机制。13个月后,同一个坑摔了第二次。 这说明安全机制不能头痛医头脚痛医脚。
结语
Claude Code的这次”被开源”,给整个行业上了生动一课:
在AI时代,核心竞争力不在于代码是否保密,而在于模型能力、迭代速度、用户体验。 Anthropic的代码虽然泄露了,但Claude模型的能力、品牌的先发优势依然存在。
对于开发者而言,这51万行代码更像是一座”工业级教科书”——从架构设计到代码风格,从工具模块到Agent实现,全都是可以学习借鉴的珍贵资料。
毕竟,真正的护城河,从来不是代码本身。
引用链接
-
github.com/instructkr/claw-code: https://github.com/instructkr/claw-code -
github.com/NanmiCoder/claude-code-haha: https://github.com/NanmiCoder/claude-code-haha -
github.com/DonutShinobu/claude-code-fork: https://github.com/DonutShinobu/claude-code-fork -
github.com/suryavirkapur/clawedcode: https://github.com/suryavirkapur/clawedcode -
github.com/li-ruijie/claude-code: https://github.com/li-ruijie/claude-code
夜雨聆风