
GitHub 上出现名为 claude-code-sourcemap 的非官方仓库,通过 npm 发布包 @anthropic-ai/claude-code 附带的 source map(cli.js.map)中的 sourcesContent 字段,还原了 Claude Code 2.1.88 的完整 TypeScript 源码,共计 4756 个文件,其中 1884 个为 .ts 与 .tsx 源文件。
仓库说明中写明,内容基于公开 npm 包与 source map 分析整理,不代表 Anthropic 官方内部开发仓库结构,仅供研究使用。
还原出了什么
还原的目录结构覆盖了 Claude Code 的主要功能模块:
main.tsx— CLI 入口tools/— 30+ 工具实现,包括 Bash、FileEdit、Grep、MCP 等commands/— 40+ 命令,包括 commit、review、config 等services/— API、MCP、分析等服务层coordinator/— 多 Agent 协调模式assistant/— 助手模式(代号 KAIROS)plugins/— 插件系统skills/— 技能系统voice/— 语音交互vim/— Vim 模式

从还原出的架构来看,Claude Code 的内部实现远比外部可见的 CLI 交互复杂。多 Agent 协调、插件和技能系统、语音与 Vim 模式的存在,说明 Anthropic 在 CLI 层面做了大量功能扩展,这些模块在正常使用中大多不可见。
source map 的供应链风险
source map 是前端和 Node.js 工程中常见的构建产物,用于将压缩后的代码映射回原始源码,方便调试。问题在于:当 source map 中包含完整的 sourcesContent 时,任何人拿到发布包就能还原出原始代码。
这在 Web 前端领域是一个被反复讨论的供应链安全问题——许多项目会在构建配置中移除 sourcesContent,或在发布前清理 source map。Claude Code 作为一个 npm 公开包,将带有完整 sourcesContent 的 source map 一同发布,等于把源码公开放在了每个用户的 node_modules 里。
目前该仓库仍在 GitHub 上可见,Anthropic 尚未对此作出公开回应。