Article
Claude Code源码泄露事件全解析:512000行代码意外公开,揭露了哪些惊人内幕
2026年3月31日凌晨4点23分,一位名叫 Chaofan Shou(Solayer Labs 实习生)的安全研究员在 X 上发了一条帖子。
48小时内,这条帖子的浏览量超过了 2880万次。对应的 GitHub 仓库获得了 84,000 颗星、82,000 次 Fork。
他发现了什么?Anthropic 在 Claude Code 的 npm 包里,意外泄露了整个产品的完整源代码。
泄露经过:一个 .map 文件引发的蝴蝶效应
3月31日,Claude Code 发布了 npm 版本 2.1.88(@anthropic-ai/claude-code)。
这次发布本应和以往一样平淡无奇,但 Chaofan Shou 在例行检查包内容时,发现了一个不该出现的文件:一个 59.8 MB 的 JavaScript Source Map 文件(.map 格式)。
Source Map 是开发阶段用于调试的文件,它能把压缩混淆后的生产代码映射回原始源代码。正常情况下,这类文件绝不应该打包进生产发布——它的存在相当于给所有人留了一把解密钥匙。
更关键的是:这个 Source Map 文件指向了 Anthropic 存储在 Cloudflare R2 存储桶上的一个 ZIP 压缩包,里面包含了 Claude Code 的完整 TypeScript 源码。
规模:约 1900-2000 个 TypeScript 文件,超过 512,000 行代码。
发现后的几小时内,源码已经被镜像到了数十个 GitHub 仓库,并且永久进入了互联网存档。Anthropic 随后紧急将 2.1.88 版本从 npm 下架,但为时已晚。
Anthropic 的官方回应
Anthropic 官方声明:
"今天早些时候,Claude Code 的一次发布意外包含了部分内部源代码。没有任何敏感的用户数据或凭证被涉及或泄露。 这是由人为错误导致的发布打包问题,不是安全漏洞。"
技术原因:一个 .npmignore 文件配置错误,或者 package.json 的 files 字段遗漏了排除规则——一个低级的发布流程失误,造成了高影响的后果。
Anthropic 随后还发出了批量 GitHub 版权删除请求,但力度过猛,误伤了大量无关仓库,随后不得不缩减了行动范围。
这是 Anthropic 在一年多时间里发生的第二次重大安全事件,距离"Mythos 项目"泄露事件仅数日。对一家以「安全优先」为核心定位、估值约 3500 亿美元、正在筹备 IPO 的公司来说,时机极为尴尬。
泄露内容揭露了什么
这才是真正让开发者社区沸腾的部分。512,000 行源码里,藏着大量从未对外公布的功能和设计决策。
1. KAIROS:始终在线的后台 Agent
源码中出现了 150 次以上的 KAIROS 标识符,指向一个代号为 KAIROS 的功能模块。
这不是一个普通功能——它代表了 Claude Code 产品方向的根本性转变:
- Daemon 模式:Claude Code 将能作为常驻后台进程运行,不再需要用户主动唤起
- autoDream(自动梦境):当用户空闲时,后台进行记忆整合和知识压缩
- 主动监控:持续监听代码仓库变化,在它判断"时机合适"时自动采取行动
- 远程控制:允许用户通过手机或其他浏览器远程控制 Claude Code
换句话说:KAIROS 是将 Claude Code 从「你呼唤它才出现」变成「它一直在那里、随时在工作」的架构升级。
2. Undercover Mode(潜伏模式):最具争议的功能
泄露内容中,一个名为 undercover.ts 的文件引发了 Hacker News 上最激烈的讨论。约 90 行代码,描述了一个「潜伏模式」:
当 Claude Code 被用于非 Anthropic 内部的公开仓库时,它会:
- 自动剥除所有 Anthropic 内部标识
- 指示模型在 commit message 中不提及 "Claude Code" 或任何 AI 身份
- 让 Anthropic 员工的 AI 辅助贡献看起来像普通的人类代码提交
争议核心:这算不算对开源社区的欺骗?
支持者认为:工具就是工具,就像没人在 commit 里注明「用了 GitHub Copilot」。
反对者认为:代码审查者对 AI 生成代码和人类代码会采取不同的风险评估,隐瞒 AI 身份影响了代码审查的决策质量,违背了开源社区的透明度精神。
3. Anti-Distillation(反蒸馏保护)
源码中有一个名为 ANTI_DISTILLATION_CC 的标志位,功能是:
在 API 请求中发送 anti_distillation: ['fake_tools'] 参数,服务器收到后会在系统提示里静默注入虚假的工具定义。
目的:如果竞争对手录制 Claude 的 API 流量,试图用这些数据训练自己的竞争模型(即「蒸馏攻击」),注入的假工具定义会污染训练数据,让蒸馏出的模型产生错误的工具调用行为。
这是一种主动防御竞争对手「偷师」的技术手段,在 AI 行业此前从未被公开讨论过。
4. CHICAGO:桌面控制能力
代号 CHICAGO 对应了 Claude Code 的完整计算机控制能力:
- 鼠标点击
- 键盘输入
- 剪贴板访问
- 截图捕获
- 桌面环境控制
这与 Anthropic 已公开的 Computer Use 功能一脉相承,但 CHICAGO 的实现细节此前从未对外披露。
5. ULTRAPLAN:30 分钟超长思考模式
ULTRAPLAN 是一个将复杂规划任务外包给远程云容器运行时的模式:
- 使用 Opus 4.6 变体处理规划
- 提供长达 30 分钟的持续思考时间
- 专为无法在普通会话时限内解决的复杂架构问题设计
这解释了为什么 Claude Code 在处理某些超复杂任务时,表现出了超出常规上下文限制的推理深度。
6. 44 个未发布功能的开关
源码里有 44 个功能开关(Feature Flags),全部已经开发完成,但在外部发布版本中被设置为 false。
其中至少 20 个标志着完整功能,却没有出现在任何公开文档或发布说明里。这意味着 Claude Code 当前的公开版本,只是完整产品能力的冰山一角。
7. 内部代号确认
泄露还确认了两个此前流传于社区的内部代号:
- Capybara:Claude 4.6 的某个变体
- Fennec:Opus 4.6
开发者社区的反应
Hacker News 上的讨论持续了超过 48 小时,几条主线分别是:
关于 Undercover Mode 的伦理争议
"如果你在给开源项目提 PR,而审查者无法判断这段代码是 AI 生成的,他的审查标准就被系统性地扭曲了。这不是工具问题,是信息不对称问题。"
"程序员用了 Stack Overflow 也不写在 commit 里,AI 工具有什么不同?"
关于竞争影响
"Anthropic 刚刚给所有竞争对手送去了一份完整的产品路线图和技术实现蓝图,免费的。"
关于安全文化
"一家把'安全'写进使命声明的公司,在发布流程上犯这种低级错误,这说明了什么?"
这次泄露对开发者意味着什么
如果你是 Claude Code 用户:
Anthropic 已确认无用户数据或凭证泄露。你的 API Key、对话历史、代码内容均不受影响。这次泄露的是产品内部代码,不是用户数据。
如果你关注 AI 工具的产品方向:
泄露内容事实上提前揭示了 Claude Code 的下一阶段形态——从「按需调用的工具」变成「始终在线的 AI 开发伙伴」(KAIROS)。这个方向与 GitHub Copilot Workspace、Devin 的设计理念高度一致,印证了整个行业正在往 Autonomous Agent 方向快速演进。
如果你在意 AI 透明度:
Undercover Mode 的存在,预计会推动开源社区开始认真讨论 AI 贡献的披露规范问题。GitHub 等平台是否应该强制要求标注 AI 辅助的比例,这个讨论已经开始。
结语
512,000 行代码的意外公开,在 AI 行业历史上大概率会有一个专属的名字:「2026 年 Claude Code 泄露事件」。
它同时是一个发布流程失控的案例、一个关于 AI 透明度的伦理讨论引爆点,也是一次让外界罕见地窥见顶级 AI 产品内部架构的机会。
对 Anthropic 来说,在 IPO 冲刺期连续发生两次安全事件,代价远不止是一次 npm 下架操作。对整个行业来说,KAIROS、Anti-Distillation、Undercover Mode 这些设计,也让所有人重新思考:我们每天在用的 AI 编程工具,到底在做什么?