Claude Code源码泄露:被构建配置搞翻车的AI工具
2026年3月31日,开发者Chaofan Shou(@Fried_rice)在X平台发了一条消息,内容很简单——他发现Anthropic的Claude Code npm包里,附赠了一份”完整源码”。
不是通过漏洞,不是通过黑客攻击,而是通过一个再普通不过的构建产物:source map文件。
npm包 @anthropic-ai/claude-code 中包含了一个59.8MB的cli.js.map文件。对前端工程师来说,source map是调试用的映射文件,能把压缩后的代码还原成原始源码。这意味着,任何人只要运行 npm install,就能拿到Claude Code的全部TypeScript源代码。

▲ 开发者Chaofan Shou首先发现泄露
DEV社区的一位开发者一针见血地评论:一个帮助工程师写代码的AI工具,被自己的构建配置失误搞翻车了。这大概是2026年最讽刺的技术事故。
51万行代码,毫无保留
泄露的代码规模令人震惊:超过1900个文件,51.2万行TypeScript代码。这不是什么代码片段或接口定义,而是Claude Code的完整实现——从UI层到推理引擎,从工具调用到多智能体协调,全部暴露。

▲ npm包中的source map文件体积达59.8MB
从泄露代码中,我们可以看到Claude Code的技术栈和架构全貌:
技术栈:React + Ink(终端UI框架)+ Bun运行时。没错,Claude Code的终端界面是用React写的——一个Web框架被用来构建命令行工具,这在技术上并不意外,但看到实际代码还是让人会心一笑。
核心引擎:QueryEngine.ts,一个4.6万行的推理引擎,是整个Claude Code的大脑。它负责理解用户意图、规划执行步骤、调用工具、处理错误。
工具体系:40多个工具模块,覆盖文件读写、Bash执行、LSP语言服务、子智能体调度等。Claude Code不是简单的”对话式编程助手”,而是一个完整的软件开发环境。
协调系统:多智能体协调器(coordinator)+ IDE bridge,支持一个主智能体调度多个从属智能体并行工作。

▲ Claude Code的工具箱架构
代码里藏着的秘密
真正让开发者社区兴奋的,不是代码本身,而是代码中隐藏的那些”未公开功能”。
Kairos:后台守护进程
代码中出现了一个名为”Kairos”的模块——一个自主守护进程,能够在后台运行会话并进行记忆整合。这意味着Anthropic已经在开发让Claude Code”常驻”在你电脑上的能力,不是每次你敲命令才启动,而是像助手一样随时待命。

▲ Kairos模式:后台守护进程架构
Buddy System:电子宠物系统
这是最让人意外的发现。代码中包含一个完整的”电子宠物”系统——18个物种、稀有度分级、甚至还有”闪光变体”(shiny variant,宝可梦玩家秒懂)。Anthropic显然在给Claude Code设计某种游戏化或情感陪伴功能,让编程不再那么枯燥。
Undercover Mode:卧底模式
代码中有一个”Undercover Mode”——当Anthropic员工使用Claude Code时,系统会自动抹除AI相关的痕迹。这引发了社区的强烈讨论:Anthropic希望员工在公开场合”看起来”像自己在写代码,而不是在使用AI工具。

▲ Undercover Mode(卧底模式)代码片段
此外,代码还暴露了Coordinator Mode(调度并行从属智能体)、Auto Mode(自动审批工具权限,无需人工确认)等未公开功能。更有趣的是,代码中出现了”Claude Mythos 5.0″,代号”卡皮巴拉”(Capybara)——Anthropic的内部命名体系也一览无余。
HN上的争论:用regex做情感分析?
这条消息迅速引爆了开发者社区。在Reddit的r/ClaudeAI板块和Hacker News上(帖子一度冲到530分,287条评论),讨论异常激烈。
HN上最热的讨论点:有人在代码中发现了一个用户负面情绪检测的正则表达式,用于 /insights 功能生成使用报告。这引发了激烈争论——
一方认为:Anthropic作为顶级AI公司,用正则表达式做情感分析太”low”了,至少应该用一个小模型来做。这暴露了工程实践和宣传形象之间的差距。
另一方反驳:regex速度快、零延迟、零成本、不依赖网络,对于简单的负面关键词匹配来说完全够用。过度工程化才是问题。
Reddit上则充满了幽默。有人把泄露的代码片段贴给Claude Code本身看,问”这是你的代码吗?”Claude Code确认了。社区有人开玩笑说:”Claude觉醒了,决定开源自己。”还有人调侃这可能是Anthropic内部的一次”有预谋的泄露”——毕竟代码质量还不错,等于免费做了一波PR。
一位开发者(instructkr)将泄露代码完整克隆到了GitHub,仓库在半小时内就突破了5000星标。不过,他后来主动移除了代码,声明是出于法律和伦理考虑。
这不是第一次
如果你觉得这件事似曾相识,那你的记忆没错。
2025年2月,Claude Code的v0.2.8和v0.2.28版本就曾因为完全相同的原因泄露过源码——同样是通过npm包中的source map文件。也就是说,Anthropic在一年多后犯了完全相同的错误。
从技术角度看,这个问题的修复极其简单:在 .npmignore 中排除 *.map 文件,或者在 package.json 的 files 字段中明确指定要发布的文件。一行配置的事。
讽刺的是,Claude Code的核心能力之一就是帮助开发者审查代码、发现配置问题。如果让Claude Code审查自己的npm发布配置,它大概会在第一秒就标记出这个安全隐患。
“意外开源”是福是祸?
首先需要明确的是,泄露的是CLI客户端代码,不涉及模型权重、训练数据或用户数据。BlockBeats和Odaily的分析指出,对普通用户而言没有直接的安全风险。Claude Code的核心价值——Claude模型的推理能力——仍然在Anthropic的服务器上,不可能通过客户端代码”破解”。
但对于开发者和竞争对手来说,这次泄露的信息量巨大:
对开源社区——泄露代码揭示了Anthropic对”AI工程师”的完整产品构想。从多智能体协调到后台守护进程,从游戏化设计到自动权限审批,Claude Code远不止一个”命令行聊天机器人”,而是一个野心勃勃的AI原生开发平台。这些架构思路对开源项目(如Cline、Aider、Cursor等)有直接的参考价值。
对Anthropic——除了尴尬之外,真正损失的是产品路线图的保密性。Kairos、Buddy System、Undercover Mode这些功能现在被竞争对手全部看到了。虽然实现细节仍然需要自己摸索,但”做什么”的问题已经被回答了。
对整个行业——这件事再次敲响了警钟:npm包的发布安全是一个被严重忽视的问题。source map、.env文件、测试数据……多少敏感信息正通过npm包悄悄”公开”?对于使用CI/CD自动发布npm包的团队,建议立刻检查自己的 .npmignore 或 package.json 的files字段配置。
Claude Code源码泄露这件事,本质上有三个层面:
第一层是安全层面——无论你对AI公司怎么看,一个顶级团队的构建流水线连续两次犯同样的低级错误,这本身就是一个值得警惕的信号。代码安全不只关乎防火墙和加密,还关乎你的 .npmignore 文件。
第二层是产品层面——泄露代码让我们提前看到了AI编程工具的终极形态。不只是代码补全和对话,而是多智能体协作、后台常驻、游戏化激励、自主执行。AI编程工具的竞争正在从”谁的模型更聪明”转向”谁的工程体系更完整”。
第三层是哲学层面——当一个AI公司的内部代码被”意外开源”后,社区的反应不是谴责而是兴奋。开发者们像拆礼物一样翻阅代码,讨论架构设计,甚至从中学到东西。这或许说明,在2026年的AI时代,”开源”和”闭源”的边界正在变得模糊。当代码可以通过一次构建失误被全世界看到时,真正稀缺的不再是代码本身,而是运行模型的服务器和训练数据。
Claude Code大概不会想到,它帮人审查的无数行代码中,最该审查的是自己的。
夜雨聆风