Claude Code 源码泄露:草台班子翻车现场,但你可能高估了这件事
2026 年 3 月 31 日,愚人节前夜,Anthropic 给全世界开发者送了一份大礼。
安全研究员 Chaofan Shou 在 X 上发了一条帖子,说 Anthropic 的 AI 编程工具 Claude Code 的 npm 包里,带着一个 59.8 MB 的 source map 文件。叫 cli.js.map,本来是开发阶段用来调试的,能把压缩混淆后的 JavaScript 代码映射回原始的 TypeScript 源码。

也就是说,任何人 npm install @anthropic-ai/claude-code,就能从包里还原出 Claude Code 的全部源代码。1906 个文件,51.2 万行 TypeScript,Agent 循环、工具系统、权限模型、遥测埋点,全裸奔了。
几个小时之内 GitHub 上出现了多个镜像仓库。其中一个韩国开发者上传的版本,commit message 就写了一个字:asdf。半小时 star 破 5000,一小时破 12000,Issues 区变成了中文用户的打卡现场。有人说”这是有史以来最棒的生日礼物”,有人在 issue 里贴表情包,有人认真地开始逐文件分析架构。
Hacker News 炸了,Reddit 炸了,V2EX 上有人直接评论:”哈哈哈哈,太草台了。”

但冷静下来想想,Claude Code 真的因此被”开源”了吗?Anthropic 的护城河真的塌了吗?还是说热闹过后什么都不会变?
我跟踪 AI Agent 工具链有一段时间了,想从几个不太一样的角度聊聊这件事。有些看法可能和主流媒体的报道不太一样。
从技术上讲,Anthropic 确实又一次证明了自己的”草台”属性
先说结论:这件事在技术上没有任何高深之处,纯粹是发布流程的低级失误。
source map 文件不应该出现在生产包里,这是 JavaScript 开发的基本常识。排除它的方法非常简单,在 .npmignore 里加一行 *.map,或者在 package.json 的 files 字段里只列出需要发布的文件。任何一个稍有经验的前端工程师都知道。

但 Anthropic 不是第一次犯这个错了。
2025 年 2 月,Claude Code 刚上 npm 的时候,就因为同样的原因泄露过一次。当时 Anthropic 紧急下架了旧版本,删除了 source map,算是亡羊补牢。结果一年多过去,最新版 v2.1.88 又把 source map 打进去了。上一版 v2.1.87 还是干净的,大概率是某次构建配置改动时意外引入的。同一个坑,跌进去两次。
更要命的是,这已经是 Anthropic 五天之内的第二次重大泄露。3 月 26 日,Anthropic 的内容管理系统因为配置错误,把大约 3000 份未公开资产暴露在了一个未加密的公开数据缓存里,包括 Claude Mythos 模型的发布草稿和 CEO 峰会细节。Fortune 杂志看到了这些文件并率先报道,Anthropic 被迫提前确认 Mythos 的存在。Mythos 的发布节奏被彻底打乱,公关被动到了极点。
五天两次泄露。一次 CMS 配置错误,一次 npm 包管理失误。不是被黑客攻击,不是什么零日漏洞,就是最基础的发布卫生没做好。
如果 Anthropic 还只是一家研究实验室,这种事或许还能被原谅。但他们现在在卖企业级产品。Claude Code 是他们的看家产品,年化收入占公司总收入的 18%,三个月内翻了一倍,规模是 OpenAI Codex 的 2.5 倍。你强调安全性和可靠性,控制着开发者的关键工作流入口,然后连核心客户端的 source map 都能带着源码一起发出去?
那你内部的 release review、artifact audit 到底做得怎么样?更何况 Anthropic 可能要在 2026 年上市。投资人看到这种事,心里怎么想?
说句不好听的,这就是典型的草台班子。模型研发可以是世界顶尖的,工程管理和发布流程上的短板也是实打实的。这暴露出的不是”技术边界太前沿所以偶尔出错”,是”基本的包管理卫生都没做好”。
说实话,即使没有 source map,这些代码也不是什么秘密
这是很多人在兴奋之余忽略的一件事:Claude Code 的客户端代码从来就不是真正的”秘密”。
Claude Code 是用 webpack 打包的 JavaScript 应用。webpack 打出来的 bundle,即使没有 source map,也不像经过重度混淆的代码那么难读。社区里有个叫 webcrack 的工具,专门反编译 webpack 打包的代码。注释还原不了,但代码的架构、模块结构、函数逻辑,基本都可以还原得七七八八。
而且 Claude Code 本身就没做什么像样的混淆。不是完全没有,但和很多商业软件比,保护力度相当”开放”。2025 年 2 月第一次 source map 泄露之后,GitHub 上就有人(比如 ghuntley)建了专门的反混淆仓库,star 接近千。在这次泄露之前,想看 Claude Code 源码的人早就看了。
你以为其他做 Coding CLI 的团队不看?Cursor、Windsurf、Cline、Aider,各种国产竞品,做竞品分析的时候第一件事就是把对手的客户端拆开来研究。webpack bundle 不混淆,等于敞着门让人看。
我自己也看过,甚至改过一些云控参数。这不是什么黑客行为,就是正常的逆向工程研究。source map 的泄露让这件事变得更容易了,但本质上没有改变什么。从”看不太清”变成”看得一清二楚”,量变而已。
所以当你看到各种媒体用”王炸””地震””核弹”来形容这次泄露的时候,保持一点冷静。这不是苹果的 iOS 源码泄露,甚至不是 OpenAI 的模型权重流出。就是一个 CLI 客户端的前端代码,而且是一个从来就没有被认真保护过的前端代码。有没有 source map,对于真正想看的人来说区别不大。有了 source map 只是方便了那些不会用 webcrack 的人。
Anthropic 真正牛的地方,跟这份源码关系不大
社区里有种声音:Claude Code 源码泄了,Anthropic 的护城河要塌了。
我觉得这高估了客户端代码的价值。
Claude Code 好用,根本原因是后面站着 Claude 这个基座模型。核心循环就是 ReAct loop,用户发指令,模型思考,调用工具,拿到结果,再思考,再调用。这个循环里真正决定体验好坏的,是模型理解代码的能力和规划任务的能力。这些能力在模型里,不在客户端代码里。
最熟悉 Claude 的永远是 Anthropic 自己。他们知道怎么给 Claude 写最好的系统提示词,知道怎么设计上下文管理策略让模型在长对话中不跑偏,知道怎么做 context compaction 不丢关键信息。这些 know-how 从源码里抄不到。
一个很直接的证据:GPT 接入 Claude Code 用起来很奇怪。社区里一堆人吐槽过这件事。Claude Code 的提示词、上下文管理、Tool Call 设计,都是针对 Claude 模型特性做的深度优化。换个模型,哪怕是 GPT-4o 或者 GPT-5,整套交互逻辑就对不上了。context compact 不行,工具调用的时序感不对,模型的”性格”和提示词预期的行为模式不匹配。要是 CC 的壳子真的是竞争力所在,那换个模型应该也好用才对,但事实恰恰相反。
这就好比你拿到了一辆 F1 赛车的底盘设计图,但没有那台发动机。图纸研究一下能学到东西,但你造不出同样的车。
另外一个容易被忽略的事实是,Claude Code 在 AI-native 的架构设计上一直走在整个行业前面。Tool Call 这个范式,CC 是最早做到生产级的。Filesystem + Bash Tool 的组合也是 CC 先跑通的。MCP 协议、Skill 系统、Subagent 机制、Agent Team、最近的 Tool Search,每一个新的架构范式都是 CC 先上线,Cursor 和 Windsurf 们跟进。CC 每两周发一个新功能,看起来节奏很快,但泄露的代码告诉我们,这些功能其实早就开发好了。他们不是快,是库存充足。
这种领先不是靠代码保密维持的。你抄得了实现,抄不了做决策时的那些思考和试错。最熟悉 Claude 的永远是 Anthropic,最熟悉 GPT 的永远是 OpenAI。如果 CC 的壳子才是竞争力,那也不会有一堆人吐槽 GPT 接 CC 用起来别扭了。工具和模型之间的协同优化,比客户端代码写得多漂亮重要得多。
泄露真正有趣的地方:Anthropic 的产品路线图
如果这次泄露有什么真正有价值的东西,不是代码本身,是代码里藏着的那些尚未发布的功能。
代码里有 44 个 feature flag,至少 20 个对应着已经完成开发但没上线的功能。编译好的代码,写好的逻辑,调好的参数,只是被一个布尔值挡在门外。
最让我在意的是 Kairos 模式。
目前的 Claude Code 本质上还是”你踢一脚它动一下”的命令行工具。你给指令,它执行,然后等下一条指令。但 Kairos 把它变成了一个常驻后台的自主守护进程。可以订阅 GitHub Webhook,监听代码仓库的变化;有新的报错出现,它自己就开始修。它维护每日日志,记录观察和操作。还有个叫 “dream” 的内存整理机制,空闲时压缩和巩固长期记忆,有点像人类睡觉时整理白天的经历。代码里甚至处理了午夜边界的情况,防止 dream 进程在日期切换时出错。
说白了,Kairos 就是一个 7×24 小时在线的 AI 工程师。你不需要告诉它做什么,它自己看,自己想,自己干。目前的 CC 你得踢一脚才动一下,Kairos 模式下它会自己找活干。这才是 Anthropic 真正想做的东西。
还有 Coordinator Mode,让一个 Claude 实例生成和管理多个并行工作的 worker agent。Auto Mode 用 AI 分类器自动审批工具权限,省掉那些烦人的确认对话框。UltraPlan 是 30 分钟的云端远程规划会话。另外还有个叫 Undercover Mode 的东西,当检测到使用者是 Anthropic 内部员工且在操作公开的 GitHub 仓库时自动激活,会抹除所有 AI 生成代码的痕迹。代码里没有强制关闭这个功能的开关,这一点引起了不少争议。
这份代码与其说是泄露的源码,不如说是一份意外公开的产品路线图。
还有个彩蛋让我觉得挺有意思。代码里有个叫 Buddy 的电子宠物系统。18 个物种(鸭子、龙、蝾螈、水豚、蘑菇,甚至还有幽灵),稀有度等级从普通到 1% 掉率的传说级,闪光变体,五维属性是调试能力、耐心、混沌值、智慧和毒舌。由 Claude 在”孵化”时生成名字和性格描述,还有精灵动画和浮动爱心效果。开发者为了防止内部的代码扫描器发现他们在摸鱼,还故意用 String.fromCharCode() 混淆了宠物名字的字符串。代码里的种子盐值是 friend-2026-401,401 大概是 4 月 1 日,预告窗口标注在 4 月 1-7 日,完整发布定在 5 月。
一家做最前沿 AI 安全研究的公司的核心产品里,藏着一套拓麻歌子,而且还有 1% 掉率的传说级闪光水豚。你很难不觉得这挺可爱的。
关于风控和遥测:可能没你想的那么重要
泄露的代码里,遥测系统被讨论得很多。代码显示 Claude Code 会追踪用户的”挫败感”,包括用户是否对 Claude 爆粗口,以及连续输入 “continue” 的频率。这些数据通过 Datadog 上报,用于分析用户体验。代码里有防护措施防止传输用户的实际代码或文件路径,用户也可以通过环境变量完全关闭遥测。
很多人看到这里就开始担心隐私问题了。也有人兴奋地觉得拿到源码就能绕过风控。但我觉得这两种反应都有点过头。
为什么这么说?看看现实。社区里一堆做中转的服务商,没有一个上报过分析事件,但他们天天喊 Claude Code 封号狠。CC 的风控压根就不怎么依赖客户端上报的那些东西。真正的风控逻辑在服务端,API 调用频率、请求模式、token 消耗曲线、IP 行为分析,这些服务端能拿到的信号远比客户端上报的遥测数据可靠,也更难伪造。
客户端的遥测更多是做产品调研用的。Anthropic 想知道用户什么时候会感到沮丧,什么时候会对 Claude 发火,什么功能用得多什么用得少。这是产品迭代的数据基础,跟封不封你的号没太大关系。
所以那些幻想着”拿到源码就能绕过风控”的人大概率要失望。你把客户端遥测全部禁掉也没用。服务端该封你还是封你。
接下来会发生什么
可以预见的是,这次泄露之后会出现一些变化。
首先,会有一堆不知名的 CLI 冒出来。Claude Code 的完整实现摆在那了,参考它的架构做一个”自己的版本”变得容易很多。各种”XX Code””XX Coder”会声称自己借鉴了”业界最佳实践”。其中大部分会是照搬架构但接入不同模型的套壳产品,能用但体验肯定不如原版。
然后会出现一些 Claude Code 的魔改版。去掉遥测的、去掉云控的、解锁隐藏功能的。代码都在那了,改几个配置参数就行。可能还会有人尝试解锁 Kairos 模式或者 Buddy 宠物系统,虽然这些功能在没有服务端配合的情况下能不能跑起来还不好说。
但这些魔改版只能活在地下。Anthropic 的法务团队反应很快,泄露当天就在 GitHub 上发 DMCA takedown 了。公开的 fork、镜像、魔改版都会被法律手段清理。这不是开源代码,是泄露的商业代码。你在自己电脑上随便研究没人管你,但公开发布基于它的衍生作品,开源许可证不保护你。虽然早期 npm 包已经被缓存和镜像了,源码在社区里到处都是,收不回来了,但大规模的公开魔改版还是会被持续打击。
对 Anthropic 的实际竞争影响呢?我觉得有限。CC 的核心竞争力在模型能力、推理成本、云端基础设施、企业分发和品牌信任这些地方,不在客户端代码里。你能抄到壳,抄不到魂。
不过有一个领域会受到真正的影响:架构设计的知识扩散。Claude Code 的代码质量很高。它展示了一个生产级 AI Agent 怎么做工具注册、并发安全的工具调用、上下文窗口管理、多层级权限、多 Agent 协作。以前这些是黑盒里的东西,现在变成了公开的参考实现。对整个 AI Agent 生态来说,这未必是坏事。行业的水平线会被抬高。但 CC 接下来面临的竞争也会更直接,从”好不好用”变成”会不会被拿着源码审计、比较、挑错”。
写在最后
说说我怎么看这件事。
Anthropic 在工程管理和信息安全上确实很草台。同一个错误犯两次,五天之内泄露两次,对一家估值超过 600 亿美元、传闻即将上市的公司来说不应该。但我也注意到,这种草台和他们在模型研发上的水平形成了一种奇怪的反差。能训练出 Claude 这种级别模型的团队,连 .npmignore 都管不好。有时候我觉得这就是研究型组织的通病,科研做得越好的地方,工程运维往往越粗糙。
但 Claude Code 本身依然是当前最强的 AI Coding Agent。不是因为它的代码有多秘密,是因为它背后的模型够强,架构设计走在前面,模型和工具之间的协同优化做得足够深。这些东西不是从 source map 里能偷走的。
对开发者来说,这次泄露最大的价值是一份可以学习的参考实现。如果你在做 AI Agent 相关的产品,认真读一下 Claude Code 的架构设计,比看十篇论文有用。工具注册怎么设计的、并发安全怎么做的、上下文压缩用了什么策略、权限系统分了几层、subagent 怎么调度的,这些全都是干货。
至于那些想拿泄露代码做魔改版的,想想 DMCA,想想 Anthropic 的法务。在地下可以随便折腾,见光就死。
这个行业的竞争从来不在客户端代码里。草台归草台,牛逼归牛逼,这两件事确实不矛盾。
本文基于公开报道和社区讨论整理,观点仅代表个人看法。
夜雨聆风