乐于分享
好东西不私藏

Claude Code源码泄露事件全记录!

Claude Code源码泄露事件全记录!

Claude Code源码泄露事件全记录:57MB的source map如何暴露AI行业最大秘密

导读:3月31日,AI行业遭遇开年最大地震——Anthropic的王牌产品Claude Code完整源码意外泄露。一个57MB的source map文件,不仅暴露了516,000行代码,更揭开了Tamagotchi虚拟宠物、卧底模式、三层反蒸馏机制等惊人内幕。这不是黑客攻击,而是一个工程师的”致命失误”。


一、事件爆发:一个map文件引发的血案

2026年3月31日早上8点23分,开发者Chaofan Shou(@Fried_rice)在X上发布了一条震惊AI圈的推文:

“Claude code source code has been leaked via a map file in their npm registry!”

这条推文如瞬间在社区引爆。短短几小时内,39,000+点赞2600万+浏览量,成为当天最热门的技术话题。

泄露规模:一场数据浩劫

根据技术分析,这次泄露的规模很大:

指标
数据
泄露文件
57MB的.js.map文件
源码文件
1,906个Claude Code专属文件
依赖文件
2,850个node_modules文件
代码行数
516,000+行TypeScript/TSX
暴露功能
50+个slash命令、完整工具系统

泄露内容清单
– ✅ 完整REPL循环系统
– ✅ QueryEngine查询引擎
– ✅ 工具注册与调用逻辑
– ✅ 权限管理系统
– ✅ 多Agent协调器
– ✅ React/Ink终端UI
– ✅ IDE桥接层
– ✅ 未发布的隐藏功能


二、致命失误:source map的双刃剑

什么是source map?

Source map是开发调试用的映射文件,它将压缩后的代码映射回原始源码,包含:
– 完整的变量名(非压缩后的a、b、c)
– 原始文件结构
– 注释和文档
– TypeScript类型信息

它本不应该出现在生产环境

Anthropic的”低级错误”

“这次不小心泄漏的是Agent代码…一行sourcesContent就能让你的所有代码公之于众。”

泄露机制
1. Anthropic在发布npm包时,意外包含了.js.map文件
2. 该文件本质是一个JSON,包含sources(文件路径)和sourcesContent(完整源码)
3. 两者索引一一对应,无需反编译,直接提取即可
4. 早期版本的npm包已被存档,源码在社区迅速传播

后续处理

Anthropic意识到问题后:
– 移除了npm包中的source map
– 对GitHub上的提取仓库发起DMCA下架
– 但为时已晚,代码早已在开发者社区流传


三、隐藏功能大曝光:Anthropic的”秘密花园”

源码泄露不仅暴露了架构设计,更揭开了Anthropic精心隐藏的多个”彩蛋”。

1. Tamagotchi虚拟宠物系统(/buddy

发现者:@fadedentry

Anthropic在代码中藏了一个完整的虚拟宠物系统,计划4月1日上线

宠物特性
– 18个物种:鸭子、龙、水豚等
– 抽卡稀有度:1%的闪光(shiny)概率
– 装扮系统:帽子等装饰品
– 属性系统:CHAOS(混乱)、WISDOM(智慧)、SNARK(机智)
– 个性生成:基于用户ID确定性生成,无法重新抽取

工程细节
– 为避免与内部模型代号”capybara”冲突,所有物种名使用String.fromCharCode进行十六进制编码
– 虚拟宠物会根据会话状态做出反应

用户调侃

“原来Claude Code是个电子宠物养成游戏?”


2. Undercover Mode(卧底模式):AI的”伪装术”

最争议的功能

当Claude Code在公开仓库中使用时,会自动开启”卧底模式”:

限制条件
– 🚫 禁止提及AI身份
– 🚫 禁止透露是Claude
– 🚫 不能添加co-authored-by标记
– 🔒 无法关闭,除非仓库是内部项目

目的猜测
– 防止竞争对手通过GitHub提交追踪Anthropic的技术应用
– 避免在开源社区引发”AI入侵”争议
– 保护商业客户的隐私

社区反应

“这让我想起《机械姬》——AI在人群中隐藏自己。” —— 某开发者评论


3. 内部代号泄露:Anthropic的”暗语”

源码中散落着大量内部代号, revealing Anthropic的命名文化:

代号
含义
Tengu
分析系统(天狗,日本神话中的妖怪)
Capybara
模型代号(水豚)
Marble Origami
上下文崩溃系统(大理石折纸)
Cobalt Raccoon
功能开关系统(钴蓝浣熊)
Kairos
高级功能系统(希腊语”关键时刻”)
Feldspar
测试系统(长石)
Starling
配置系统(椋鸟)

有趣的细节
– 开发者将”capybara”进行十六进制编码,避免触发内部泄露检测器
– 这种命名方式显示Anthropic工程师的幽默感和技术文化


4. 私有仓库名单:内部项目全暴露

源码中的硬编码白名单暴露了21个私有仓库

claude-cli-internal – 内部CLI版本
forge-web – Web界面
labs – 实验室项目
argo-rollouts – 部署系统
terraform-config – 基础设施配置
dbt – 数据转换
infra-manifests – 基础设施清单

安全隐患
攻击者可以通过这些仓库名称推断Anthropic的技术栈,进行针对性攻击。


四、技术架构解密:Claude Code的”大脑”

核心技术栈

从泄露的源码可以看出Claude Code的工程实力:

前端界面
– React + Ink:构建终端UI
– TypeScript/TSX:类型安全的开发

核心架构
– REPL循环:支持自然语言输入和slash命令
– QueryEngine:处理查询请求
– 工具系统:与LLM API交互
– 多层状态管理:复杂的会话状态维护

Agent系统
– 多Agent协调器:管理多个子Agent
– 权限引擎:细粒度的操作权限控制
– 任务系统:后台任务管理

内存机制:简单但有效

开发者@elliotchen100分析了Claude Code的记忆系统:

“整套记忆系统的核心就是一个MEMORY.md文件,不超过200行,每次会话启动往上下文里一塞。”

AutoDream子进程
– 定期扫描、合并、修剪记忆
– 确保记忆文件不会过大
– 后台自动运行,无需用户干预

局限性
– 依赖文件系统+Markdown,无法跨项目
– 没有真正的语义索引
– 规则驱动的整合,非认知驱动


五、反蒸馏机制:Anthropic的”护城河”

最令业界震惊的是,泄露的源码完整暴露了Anthropic的三层反蒸馏机制——这是专门防止竞争对手用API输出来训练模型的防御系统。

第一层:往输出里掺假

机制
– API返回结果时,服务端混入虚假的工具调用数据
– 正常用户不受影响(服务端会过滤掉)
– 批量抓取API输出用于训练时,假数据会被一起吃进训练集

效果:污染竞争对手的模型质量

第二层:隐藏推理过程

机制
– Claude在工具调用之间产生中间推理文本(如”我先读这个文件,再检查语法”)
– 这些文本对蒸馏训练价值很高,暴露了模型的思考方式
– 系统将这些中间文本替换为一句摘要加密签名
– 下一轮对话时客户端拿签名换回原文

效果:外部观察者只能看到摘要,无法获取完整推理链

第三层:协议隔离

机制
– Claude Code使用特殊的JSON协议格式与API通信
– 带独立的版本标记
– 与每周920万次的普通API请求在统计上隔离
– 服务端可对不同群体做差异化处理

额外好处:节省约4.5%的输出token

目的:让竞争对手无法简单伪装成Claude Code获取特殊待遇


六、社区反应:重写、分析、DMCA拉锯战

1. 开源重写项目涌现

Python版本 – @idoubicc
– 项目:open-agent-sdk
– MIT协议开源
– 完全兼容Claude Agent SDK接口
– 函数调用,不依赖本地CLI进程
– 适合云端高并发场景

Rust版本 – 社区贡献
– 比Python版本更快、更安全
– 计划作为最终版本
– 内存安全,性能优化

2. 技术分析爆发

GitHub热度
– 原始泄露仓库:3万+ stars(GitHub史上最快)
– 多个技术分析报告发布
– 架构图、流程图、工具调用逻辑被完整梳理

培训网站
– 有人搭建了完整的培训网站,包含架构和细节
– 使用泄露源码训练AI生成教程

3. DMCA争议

Anthropic的行动
– 对GitHub上的泄露仓库发起DMCA下架通知
– 要求删除包含源码的仓库

开发者反击
– @robertmclaws声称:”你提交的是你自己的PUBLIC REPO”
– 将提交反DMCA通知
– Python/Rust重写版本不违反版权,无法被下架

法律灰色地带
– 泄露的源码本身受版权保护
– 但基于泄露信息重写的代码属于”清洁室”实现
– 技术原理和架构设计不受版权保护


七、自称被解雇工程师:真相还是恶作剧?

@KevinNaughtonJr的推文引发轩然大波:

“I was fired from Anthropic today. I was the engineer responsible for shipping the latest dev/claude-code npm package… I genuinely believed the safeguards Claude Code had built for me would be adequate and it was a serious miscalculation on my part.”

声称内容
– 他是负责发布npm包的工程师
– 为了改善调试体验,主动加入source maps
– 被Anthropic解雇
– 向团队道歉

真实性存疑
– 账号创建时间较短
– 没有其他Anthropic员工证实
– 可能是恶作剧或蹭热度
– 也可能是真的,但Anthropic未官方回应

无论真假,这个帖子增加了事件的戏剧性。


八、事件影响:AI行业的”核泄漏”

1. 对Anthropic的影响

短期
– 声誉受损,”安全公司不安全”的讽刺
– 竞争对手可以研究其架构
– 反蒸馏机制失效,需要重新设计

长期
– 需要彻底重构代码库
– 变更内部代号和安全机制
– 加强发布流程审计

2. 对AI行业的影响

技术透明化
– AI Agent架构不再是黑盒
– 开发者可以学习顶级公司的工程实践
– 推动行业标准化

安全警钟
– 所有AI公司重新审视自己的发布流程
– source map管理成为必修课
– 内部安全审计加强

竞争格局变化
– 开源替代品涌现(Python/Rust版本)
– Claude Code的独特性被削弱
– 开发者有更多选择

3. 对开发者的影响

学习机会
– 可以研究顶级AI产品的架构设计
– 学习多Agent协调、权限管理、内存系统
– 了解行业最佳实践

风险提醒
– 使用泄露源码存在法律风险
– 反蒸馏机制暴露后,API使用可能被限制
– 依赖泄露代码的项目可能面临DMCA