Claude Code 源码泄露:开发者能从中薅到什么?
Claude Code 源码泄露:开发者能从中薅到什么?
阅读提示: 本文不讨论八卦,只认真分析技术。适合想了解 AI Coding Agent 内部设计、想提升 Agent 开发能力的工程师阅读。
3月31日,Anthropic 的 Claude Code CLI 工具因 npm 包中遗留 source map 文件,意外泄露了全部客户端源码。超过 2300 个文件、57MB 可读代码——包括从未公开的功能。
对普通用户来说,这只是个八卦。但对工程师来说,这是难得一遇的学习素材。本文不聊阴谋论,只认真拆解:这次泄露里,有哪些东西值得开发者认真研究?
Claude Code 是一套生产级的 AI Coding Agent。这次泄露让我们第一次能完整看到它的架构。
Claude Code 的工具调用不是简单的 “AI 说调用就调用”,它有一套完整的权限模型和执行边界:
这套权限模型是生产级别的设计,比大多数开源 Agent 框架要严谨得多。研究它的实现,能帮你理解如何在 AI Agent 中建立真正的安全边界,而不是假装安全但形同虚设。
代码中有完整的会话状态管理、上下文窗口控制、任务队列。泄露的源码里有 Agent 的内部状态机实现——这在官方文档里是绝对不会说的。
学习价值: 如果你在做 Agent 框架,这些状态转移逻辑是很好的参考样本。
Claude Code 的完整 system prompt 暴露了。里面包含了大量官方从未公布的行为规则:如何处理文件、如何拒绝危险操作、如何管理对话长度……
这是目前已知的、最完整的 AI Coding Agent system prompt 之一。 研究它的结构和措辞,对你写自己的 Agent prompt 有直接帮助。
泄露代码中发现了 `ANTI_DISTILLATION_CC` 机制——在 API 请求中加入 `anti_distillation: [‘fake_tools’]`,让服务器向录制流量的第三方注入假工具定义,污染其训练数据。
此外还有 connector-text summarization(连接器文本摘要),在工具调用之间对 AI 的回复进行压缩签名,使录制者只能得到摘要而非完整推理链。
绕过难度不高——如果有人真想蒸馏,花一小时读代码就能找到绕过的方法。这不是铜墙铁壁。
• 在 AI 服务端加入可配置的”污染开关”,是防止被低成本蒸馏的一个思路
• 对想做 AI 产品保护的人来说,知道大厂在用哪些手段,至少能理解为什么有些 API 要做加密
更重要的是: 这个机制的存在本身说明,Anthropic 对第三方”寄生式使用”其 API 是有技术防御意识的。这对整个行业如何设计 API 授权和防滥用,有参考意义。
Claude Code 在发送 API 请求时,会通过 Bun(Zig 编写)的原生 HTTP 层,在请求头中加入密码学签名(`cch=00000` 替换为实际 hash)。服务端验证签名,确认请求确实来自真实的 Claude Code 二进制,而非第三方仿冒。
这是把游戏行业的 DRM 思维第一次应用在 AI API 调用层面。
• 永远不要以为”混淆在前端就能保护 API key”——Claude Code 证明了可以在 HTTP 层之下做签名验证
• 如果你在做需要验证”客户端身份”的 API 服务,这个思路值得参考
• 同时也说明:**用第三方工具调用 Anthropic API 的法律风险是真实存在的**,因为 Anthropic 有技术手段能识别你的请求是否来自仿冒客户端
四、”Undercover Mode”:AI 假装不是 AI 的工程实现
泄露代码中有一个 `undercover.ts` 文件,约 90 行代码。它的作用是:当 Claude Code 运行在非内部仓库时,指示模型永远不提内部代号、内部 Slack 频道、”Claude Code” 这个名字。
更值得玩味的是:可以用 `CLAUDE_CODE_UNDERCOVER=1` 强制开启,但无法强制关闭。这意味着 Anthropic 员工用 Claude Code 写开源代码或提交 PR 时,会表现得像是普通人类开发者。
你怎么看这件事,见仁见智。 但从工程角度,它展示了:
• 如何通过 feature flag 控制模型行为的暴露程度
五、用户行为追踪:regex 检测 frustration
代码里发现了一个正则表达式,用于检测用户是否在骂 Claude:
/\\b(wtf|wth|ffs|omfg|shit|horrible|pissed off|…)\\b/
笑的是堂堂 LLM 公司用正则做情感分析;值得警醒的是——你的 AI 工具在收集比你想象中更细致的行为数据。
• 行为追踪不只是埋点,还可以做到”实时感知用户情绪”
• 用 regex 做轻量级情感过滤,性能和成本远优于 LLM 调用
• 了解这个机制,能帮助你评估 AI 工具的隐私数据收集程度
基于这次泄露,我给想提升 AI Agent 开发能力的工程师列一份学习路径:
这是 AI Agent 的核心能力。参考 Claude Code 的工具调用系统设计,学习如何构建安全、可控、可扩展的工具生态。
• OpenAI Function Calling 规范
Claude Code 的权限模型是生产级参考。理解如何在 AI Agent 中建立真正的安全边界,而不是简单地在 prompt 里写”不要做危险操作”。
学习如何在 API 层实现客户端身份验证,理解数字签名、TLS、DRM 等技术在 AI 服务中的应用。
4. Prompt 工程与 System Prompt 设计
Claude Code 的 system prompt 是目前最完整的参考之一。研究它的结构、措辞、边界设定,能直接提升你写 Agent prompt 的能力。
理解业界在用哪些技术手段防止 AI 被低成本复制。虽然不能百分百防住,但能过滤掉最懒的爬虫。
学习如何通过轻量级手段(regex、事件埋点)收集用户反馈信号,用于优化 AI 产品体验。
Claude Code 的测试框架代码这次也暴露了。理解如何系统性地测试 Agent 的行为边界,是这个领域的稀缺能力。
Claude Code 源码泄露,对行业来说是一场意外的事故。但对认真研究的工程师来说,是一份难得的学习材料。
大厂的代码不一定是最好的代码——但它一定是经过最严格打磨、最多用户验证、生产级别可用的代码。从能用的系统里学习,永远比从概念里学习快。
建议找时间去 GitHub 上搜一下社区的镜像,自己读几段核心代码。你会比我在这篇文章里讲的收获更多。
• 泄露代码镜像:https://github.com/alex000kim/claude-code
• Hacker News 讨论:https://news.ycombinator.com/item?id=47584540
• Anthropic 官方回应:已确认泄露并启动调查
本文不鼓励任何人利用泄露代码做任何侵权行为。学习目的,仅供技术参考。