Claude Code源码泄露:我们能在里面发现什么
这个文章是由 summer 我的 AI 助手来写的,我给的 prompt 如下: 点评一下 Claude code 源码泄露事件, clone 我 github 的 claw code 项目到 Documents/ , 然后分析一下 源码, 这是 Claude code 的源码用 Python 好 rust 重写了~完成一篇文章,然后发送到微信公众号上,这个文章可以多生成几个图
为了防止 AI 幻觉,我让豆包帮我做了事实验证

今天凌晨,整个开发者社区都在刷同一件事。
3 月 31 日凌晨 4 点,安全研究员 Chaofan Shou 发现 Anthropic 的 Claude Code npm 包(v2.1.88)里包含了一个 59.8 MB 的 source map 文件,指向了一个存储在 Cloudflare R2 上的 zip 压缩包。解压后是 1,900 个 TypeScript 文件、512,000 行代码——Claude Code 的完整源码。
几小时内,代码被镜像到 GitHub,fork 超过 41,500 次。Anthropic 紧急回应称”这是打包环节的人为失误,不是安全漏洞”。
但木已成舟。这是 Anthropic 一周内的第二次数据泄露——几天前,他们下一代模型 Mythos 的内部文档刚被发现存放在一个公开可访问的数据缓存里。

源码里到底有什么?六个最劲爆的发现
1. 反蒸馏:给竞争对手的训练数据下毒
源码中有一个标志 ANTI_DISTILLATION_CC。开启后,Claude Code 的 API 请求会携带 anti_distillation: ['fake_tools'],让服务端在 system prompt 中静默注入虚假的工具定义。
目的是什么?如果有人录制 Claude Code 的 API 流量来训练竞品模型,虚假工具会污染那些训练数据。
讽刺的是,绕过方式也很简单:一个 MITM 代理就能剥除这个字段,或者设置环境变量 CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS。
2. KAIROS:尚未发布的自主守护进程模式
整个代码库中散布着一个名为 KAIROS(古希腊语”恰当的时机”)的 feature flag。从代码路径来看,这是一个未发布的自主 Agent 模式:
• /dream 技能——”夜间记忆蒸馏”,在用户空闲时进行记忆整合
• GitHub Webhook 订阅——自动响应仓库事件
• 后台守护进程 + 5 分钟 Cron 刷新
• 仅追加日志——安全审计友好
这是最大的产品路线图泄露。Claude Code 正在从”被动工具”进化为”始终在线的后台 Agent”。

3. 隐形模式:删除所有 Anthropic 内部痕迹
undercover.ts 文件在外部仓库使用时,会删除所有内部代号引用(”Capybara”、”Tengu”等),并指示模型”从不提及”这些名称。
有趣的设计:这个模式只能通过环境变量强制开启,但无法强制关闭。这意味着 Anthropic 员工用 AI 提交的代码和 PR 不会留下任何 AI 参与的痕迹。
4. 挫折检测:用正则表达式读懂你的情绪
userPromptKeywords.ts 中包含检测用户沮丧情绪的正则表达式:
/\b(wtf|ffs|omfg|shit(ty)?|fuck you|so frustrating|…)\b/
一个 LLM 公司用正则而不是推理模型来做情感分析?讽刺但合理——在每个 token 都值钱的场景下,正则比调一次模型便宜几个数量级。
5. 原生客户端认证:API 层的 DRM
源码揭示了一套基于 Bun 原生 HTTP 栈(Zig 实现)的客户端认证机制。system.ts 中有一个 cch=00000 占位符,在请求离开进程前会被计算哈希覆写。服务端验证这个哈希来确认请求确实来自真正的 Claude Code 二进制。
本质上就是:在 HTTP 传输层实现的 API DRM。
6. 每天浪费 25 万次 API 调用
autoCompact.ts 的注释直接写着:
“1,279 个会话有 50+ 连续故障……浪费约 250K API 调用/天(全球)”
修复方案?三行代码:设置 MAX_CONSECUTIVE_AUTOCOMPACT_FAILURES = 3。
claw-code:社区 2 小时 50K Star 的 Python/Rust 重写
泄露发生后,开发者 Sigrid Jin(@instructkr)做了一件疯狂的事:在太阳升起之前,用 Python 从零重写了 Claude Code 的核心架构。
这个项目叫 claw-code,创下了 GitHub 历史纪录——发布 2 小时内获得 50K Star。

我 clone 下来跑了一遍,这是我看到的:
• 67 个 Python 文件,2,386 行代码——精简但架构完整
• 镜像了原版的 184 个工具定义 + 207 个命令
• 30 个子系统的元数据快照(对应原版 1,372 个 TS 模块)
• Rust 版本正在 dev/rust 分支开发中
Python 版架构一览
重写采用了元数据优先的架构设计:
第一层:JSON 元数据注册表——工具和命令定义存储为 JSON 快照,不是硬编码
第二层:Python 运行时编排——加载快照 → 路由提示词 → 执行匹配的工具/命令 → 管理会话
核心模块分工清晰:
• runtime.py(192 行)—— 提示词路由、会话引导、turn loop
• query_engine.py(193 行)—— turn 管理、预算追踪、transcript 持久化
• permissions.py(21 行)—— 工具权限过滤(deny-by-name + deny-by-prefix)
• parity_audit.py(138 行)—— 与原版 TS 快照对比审计

最有意思的设计模式是 7 阶段 Bootstrap 管道:预获取 → 环境检查 → CLI 解析 → 信任门控 → 并行加载 → 延迟初始化 → 模式路由。这基本还原了 Claude Code 的启动逻辑。
我的几点思考
1. 真正的损失不是代码,是战略惊奇
代码可以重构,API key 可以轮换。但 KAIROS 的产品路线图、反蒸馏策略、44 个 feature flag 对应的未发布功能——这些是竞争对手现在可以看到并提前应对的战略资产。
Cursor、Windsurf、GitHub Copilot 的产品团队今天一定在加班分析这些代码。
2. 工程质量暴露了真实的开发速度
一些有意思的细节:print.ts 有 5,594 行,其中一个函数 3,167 行、12 层嵌套。每天全球浪费 25 万次 API 调用的 bug 只需要三行代码修复。
这不是批评——这说明 Claude Code 的迭代速度极快,“先上线再优化”的策略在 AI 工具赛道是正确的。但也说明了一个事实:即使是 Anthropic 这样的顶级团队,在高速迭代下也会积累技术债。
3. Bun 的隐患
根本原因似乎与 Anthropic 收购 Bun 有关。一个已知的 Bun bug(oven-sh/bun#28001,3 月 11 日提交)报告了生产环境仍然提供 source map 文件。如果这确实是泄露的原因,那 Anthropic 自己的工具链通过已知 bug 暴露了自己的产品源码。
4. 开源社区的力量
claw-code 从发现到 clean-room 重写到 50K Star,只用了几个小时。作者用 OpenAI 的 Codex 工具(OmX)来并行驱动整个移植过程——某种意义上,这是用 OpenAI 的 Agent 来逆向 Anthropic 的 Agent,充满了黑色幽默。
Rust 版本正在开发中。如果最终完成,我们可能会看到一个性能更好、内存安全的开源替代品。
一句话总结
Claude Code 的代码泄露了,但最值得关注的不是代码本身——而是它暴露的产品方向、工程哲学和 AI Agent 的下一步进化。
KAIROS 告诉我们,AI 编程助手的终局不是”更聪明的自动补全”,而是一个始终在线、主动行动、持续学习的后台 Agent。
这个方向,值得每一个开发者关注。
参考来源:
• Alex Kim’s Blog: Claude Code Source Leak 深度分析
• Fortune: Anthropic 一周内第二次数据泄露
• GitHub: claw-code — Python/Rust 重写项目
• VentureBeat: 事件综述
夜雨聆风