
2026年3月31日,AI编程工具领域发生了一场戏剧性的“开源”事件。Anthropic旗下的明星终端开发工具Claude Code,因npm包中包含一个完整的source map文件,导致其全部TypeScript源代码被意外泄露。
这一事件迅速在开发者社区引发热议,GitHub上相关仓库已获得数千星标,而Anthropic官方截至目前尚未对此公开回应。


事件的发现者是Web3安全公司FuzzLand的实习研究员Chaofan Shou。他在X平台上披露,在Claude Code的npm包中,存在一个约70MB大小的文件——cli.js.map。
Source Map是JavaScript开发中用于将压缩后的代码映射回原始源代码的调试文件,旨在方便开发者排查生产环境问题。然而,这个文件本应在发布时被移除,绝不该出现在面向用户的最终npm包中。
经社区验证,即便是最新的v2.1.88版本,这一文件依然存在。通过该source map,开发者可以完整还原出所有原始的TypeScript代码。据统计,泄露的代码包含了1884个Claude Code专有源文件,涉及大量核心实现细节。
本仓库通过 npm 发布包(@anthropic-ai/claude-code)内附带的 source map(cli.js.map)还原的 TypeScript 源码,版本为 2.1.88。
npm 包:@anthropic-ai/claude-code 还原版本:2.1.88
还原文件数:4756 个(含 1884 个 .ts/.tsx 源文件)
还原方式:提取 cli.js.map 中的 sourcesContent 字段
restored-src/src/
├── main.tsx # CLI 入口
├── tools/ # 工具实现(Bash、FileEdit、Grep、MCP 等 30+ 个)
├── commands/ # 命令实现(commit、review、config 等 40+ 个)
├── services/ # API、MCP、分析等服务
├── utils/ # 工具函数(git、model、auth、env 等)
├── context/ # React Context
├── coordinator/ # 多 Agent 协调模式
├── assistant/ # 助手模式(KAIROS)
├── buddy/ # AI 伴侣 UI
├── remote/ # 远程会话
├── plugins/ # 插件系统
├── skills/ # 技能系统
├── voice/ # 语音交互
└── vim/ # Vim 模式
根据GitHub上备份的仓库(如已获近千星的ghuntley/claude-code-source-code-deobfuscation)显示,泄露的代码内容极为广泛,涵盖了:
不过,需要强调的是,此次泄露的是Claude Code CLI工具的客户端实现代码,并不涉及Anthropic的模型权重,也未直接泄露用户的使用数据。因此,对于普通用户而言,没有直接的安全风险。
值得注意的是,这并非Claude Code首次发生此类事故。早在2025年2月,早期版本的Claude Code就曾因同样的问题被曝光。当时Anthropic紧急从npm移除了旧版本并删除了source map,试图亡羊补牢。
然而,显然这一教训并未被吸取。此次问题在后续版本中再次出现,且泄露的代码量更大、细节更丰富,让Anthropic内部的工程规范问题暴露在公众视野之下。
这次源代码泄露的时间点颇为微妙。就在昨日,Anthropic刚刚高调宣布在Claude Code中引入突破性的“Computer Use”(计算机操作能力),允许Claude直接操控macOS系统,实现从代码编写到应用验证的完整闭环。
与此同时,竞争对手OpenAI也趁势出击,发布了一款针对Claude Code的插件codex-plugin-cc,允许开发者在Claude Code中直接调用OpenAI的Codex进行代码审查甚至任务委派,被业内戏称为“偷家”行为。
如今,Claude Code核心代码的彻底透明,无疑为这场AI编程工具大战增加了更多变数。一方面,开发者可以更深入地理解其工作原理,甚至利用泄露代码进行二次开发或安全研究;另一方面,Anthropic的商业护城河——客户端专属技术实现——也在一夜之间被填平。
截至发稿,Anthropic尚未就此次泄露事件发表官方声明。对于这家专注于AI安全的公司而言,如何在自己的“代码安全”上给出令人信服的答案,将是接下来必须面对的严峻考验。