乐于分享
好东西不私藏

Claude Code 源码泄露事件:1884个TypeScript文件揭示了哪些秘密?

Claude Code 源码泄露事件:1884个TypeScript文件揭示了哪些秘密?

Claude Code 源码泄露事件:

1884个TypeScript文件揭示了哪些秘密?

2026-03-31 | 技术深度 | 来源:GitHub / npm


2026年3月31日,一位名为 ChinaSiro(huo0) 的开发者做了一件让整个 AI 编程圈沸腾的事——他通过分析 Claude Code npm 包(@anthropic-ai/claude-code@2.1.88)内置的 Source Map,成功还原出了这套 AI 编程工具的完整 TypeScript 源码。

 4756个文件,1884个 .ts/.tsx 源文件,全部公开。 

这是 Claude Code 自发布以来,最大规模的一次”源码泄露”。


Source Map 泄露是什么?

首先需要解释一下技术背景。

现代前端项目在发布时,通常会对代码进行压缩和混淆(比如把变量名从 userName 变成 a,把多行代码压缩成一行),以减小体积、提升加载速度。但这样一来,调试就变得几乎不可能——你能看到 a(a,b) 但完全不知道它是什么意思。

Source Map(.map 文件)就是来解决这个问题的。它是一个 JSON 文件,记录了”压缩后代码”和”原始源码”之间的映射关系。浏览器和调试工具可以根据这个文件,还原出可读的原始代码。 

Claude Code 在发布 npm 包时,随包附带了 cli.js.map 文件,其中包含了所有 TypeScript 源文件的内容(sourcesContent 字段)。这本来是给 Anthropic 内部调试用的,但被 ChinaSiro 发现并利用了。

这个操作本身并不违法——Source Map 是公开发布的,没有加密也没有禁止访问。但它确实揭示了 Claude Code 大量从未公开过的内部实现。


源码揭示了哪些架构秘密?

1. 启动优化:精确到毫秒的工程化

打开 main.tsx,前几行注释就让人印象深刻:

// These side-effects must run before all imports:1. profileCheckpoint marks entry before heavy module evaluation 2. startMdmRawRead fires MDM subprocesses in parallel      with the remaining ~135ms of imports 3. startKeychainPrefetch fires both macOS keychain reads      in parallel (~65ms on every macOS startup)

Anthropic 在 Claude Code 的启动速度上做了大量优化:

MDM 预读取 — 通过 plutil(macOS)和 reg query(Windows)并行读取设备管理配置

Keychain 预读取 — OAuth 和传统 API Key 的读取并行执行,避免串行阻塞

启动性能分析器(startupProfiler)— 每个关键节点都打点计时

这些优化将 macOS 平台的启动时间控制在 135ms 左右。不得不说,这是工程化做得非常细致的产品。

2. 工具系统:30+ 内置工具

源码中 tools/ 目录包含了超过 30 个工具实现,包括:

Bash
执行 Shell 命令
FileEdit
编辑文件
Grep
代码搜索
MCP
Model Context Protocol 集成
……
以及更多…

每个工具都有完整的错误处理和权限控制逻辑。

3. 命令系统:40+ Slash Commands

commands/ 目录揭示了 Claude Code 支持的 40 多个内置命令:

/commit
自动生成 Git 提交信息
/review
代码审查
/config
配置管理
/test
生成测试

4. KAIROS:神秘的助手模式

在 assistant/ 目录中,出现了一个从未公开过的名字:KAIROS

这是一个多模态助手模式的实现,具体功能尚未完全解析,但名字本身就足够引发大量讨论。KAIROS 一词源于希腊语,意为”充满机遇的关键时刻”——Anthropic 似乎在酝酿一个与当前 Claude Code 完全不同的下一代产品形态。

5. 多 Agent 协调模式

coordinator/ 目录的发现尤为引人注目。这表明 Claude Code 内部已经有了一套完整的多 Agent 协调框架,支持多个 AI Agent 协作完成复杂任务。表面上用户只需要一个 Agent,但底层架构已经具备了多 Agent 协作能力。

6. 插件系统与技能系统并行

源码同时包含 plugins/ 和 skills/ 两个系统:

Plugins

更深层次的系统集成,可能直接操作 Claude Code 内部逻辑

Skills

面向用户的可扩展能力(也就是我们熟悉的 /skills 命令生态)

这两个系统的并存,揭示了 Claude Code 正在构建一个双层的扩展性架构。

7. Vim 模式:真正的全键盘支持

vim/ 目录的存在,解释了为什么 Claude Code 能够在极客社区中赢得如此多的拥趸。一个完整的 Vim 集成模式,内嵌在 CLI 工具中,这是许多老牌程序员梦寐以求的功能。


安全视角:泄露了哪些敏感信息?

尽管这是一次有研究性质的公开,但仍有一些值得关注的发现:

代码架构的完整暴露

意味着竞争对手可以了解 Anthropic 的技术选型和实现路径

npm 包的分发方式

Source Map 包含的完整源码远超必要信息量,促使 Anthropic 在事后对 npm 包的发布流程进行了反思


社区反响

消息公布后,技术社区的反应是复杂的:

有人欢呼:

这是难得一见的学习机会。Claude Code 的工程化水平之高、代码组织之清晰,给开源社区提供了大量可以借鉴的设计思路。

有人担忧:

如此详细的源码公开,会不会催生大量”Claude Code 克隆”产品?会不会加速 AI 编程工具的同质化?

Anthropic 沉默应对:

截至目前,Anthropic 尚未发表官方声明。但据内部消息,团队正在评估 Source Map 的发布策略,预计在下一个版本中会有所调整。


总结

这次 Source Map 泄露事件,本质上是一次”意外公开”。Anthropic 没有做错什么,ChinaSiro 的操作也在合理范围内。但它让我们第一次如此清晰地看到了 Claude Code 的内部构造。

 一个注重启动性能的产品, 一个拥有多 Agent 协调能力的产品, 一个正在秘密开发”KAIROS”的产品——Anthropic 在 Claude Code 上的野心,远比它对外展示的要大得多。


参考资料

https://github.com/ChinaSiro/claude-code-sourcemap

npm 包:@anthropic-ai/claude-code@2.1.88

声明:本仓库为非官方整理版,仅供研究使用,源码版权归 Anthropic 所有