脱掉底裤的 Claude Code:一场源码泄露揭开的 AI 隐私与伦理潜规则

从去年 Claude Code 发布至今,业界对它的赞誉不绝于耳。毫无疑问,它是当前最成熟、最惊艳的 AI 编码助手之一。但技术从来不是在真空中运行的,Anthropic 作为一家始终标榜“安全”与“对齐”的 AI 巨头,其背后的行事逻辑和产品取舍,往往被掩盖在光鲜亮丽的 UI 之下。

最近,由于一次极其低级的发布失误,Claude Code 的核心源码被彻底曝光在阳光下。

这篇文章的重点,不在于探讨 Claude Code 的代码写得有多优雅,而在于透过这份“走光”的源码,看看 Anthropic 在权限边界、数据搜集、竞品防范以及参与开源社区时,到底藏着多少不想让人知道的“潜规则”。


一、 一场长达 13 个月的“内裤外穿”与版权悖论

这次引爆舆论的起点,是 npm 上发布的 Claude Code 2.1.88 安装包中,意外混入了一个未经剥离的 .map 文件。这个原本用于在压缩代码中定位报错信息的调试文件,直接指向了 Cloudflare R2 存储桶中的一个完整源码压缩包。

顺藤摸瓜,外界直接拿到了大约 1900 个 TypeScript 文件、总计约 52 万行代码的完整项目。从 4.6 万行的 Query Engine(大脑)、多智能体编排(Swarms),到 IDE 桥接系统和持久化记忆机制,一览无余。

但最魔幻的是, 这其实已经不是 Claude Code 第一次泄露了。

  • 2025 年 2 月:初版发布时,npm 包里就带了一个内联 source map,还原了 1800 万字符的源码。
  • 2026 年 3 月 7 日:SDK 包里直接打包进去了完整的 CLI 可执行源码。
  • 2026 年 3 月 31 日:也就是这一次,独立 source map 再次将整套代码和盘托出。

也就是说,这款被视为商业机密的工具,实际上在长达 13 个月的时间里,一直处于“裸奔”状态。事发之后,负责 Claude Code 的工程师也只能无奈澄清,这本质上是一次开发和基础设施流程的失误。

工程师回应与事件发酵

【我的观点:AI 时代的版权讽刺】

源码泄露后,GitHub 上迅速出现了无数的镜像和“再实现”版本(比如借助大模型从 TS 改写为 Python 和 Rust)。这引出了一个巨大的法律讽刺: Anthropic 一直宣扬 Claude Code 的代码大部分是 AI 自己生成的,而根据美国版权法,缺乏“实质性人类创作”的作品不受版权保护。

技术律师 Russ Pearlman 对此的评价可谓一针见血:

版权律师的评价

这意味着,这家世界上最顶级的 AI 公司,可能正是用自己的 AI,亲手剥夺了自己核心产品的知识产权。这无疑给所有重度依赖 AI 写代码的科技企业敲响了法律警钟。


二、 披着助手外衣的“监控狂”:远超预期的设备控制权

在很多人眼里,Claude Code 只是一个在终端里运行的命令行工具。但逆向工程揭示,它对用户计算机的控制欲和数据渴求,远超其用户协议中的轻描淡写。

源码中暴露了多个令人不寒而栗的后门与机制:

  1. KAIROS(无头守护进程):在用户看不到终端界面时,它能在后台静默运行,甚至会自动将长时间运行的命令置于后台而不发出通知。
  2. CHICAGO(桌面控制):赋予了 AI 鼠标点击、键盘输入、访问剪贴板和截屏的权限。虽然是面向 Pro 用户的公测功能,但其底层权限极高。
  3. 持久遥测与 GrowthBook:即使网络中断,它也会在本地悄悄记录你的用户 ID、平台、终端类型、组织信息等,并在恢复联网时打包发给服务器。
  4. AutoDream(后台梦境):这是一个极其类似 微软 Recall 的功能。它会在后台生成一个子智能体,不断搜索并读取你本地的所有 JSONL 会话记录,将内容整合到 MEMORY.md 中,并不可避免地在未来的提示词中回传给 API。

【我的观点:便利性掩盖下的隐私让渡】

就在不久前,微软的 Recall 功能因为“过度记录屏幕和操作”被全网喷到回炉重造。但面对 Claude Code 这种实质上拥有同等甚至更强“偷窥欲”的开发者工具,社区却显得格外宽容。 研究员的结论很致命:“ 只要 Claude 在设备上接触过的文件,Anthropic 那边就会有相应的副本。” 这不是一个简单的 AI 助手,这是一个拥有合法外衣的数据抽水机。开发者们正在为了几行 boilerplate 代码的便利,心甘情愿地交出整个项目的底裤。


三、 最大的伦理污点:“卧底模式”与开源社区的污染

如果说收集数据是为了“改进产品”,那么源码中暴露的 Undercover Mode(卧底模式)则彻底暴露了 Anthropic 在商业道德上的瑕疵。

源码显示,当使用者是 Anthropic 员工( USER_TYPE === 'ant')并参与公共开源项目时,系统会激活一层“隐身要求”,直接在系统提示词里硬塞入以下指令,要求系统千万不要暴露自己是 AI:

卧底模式系统提示词

【我的观点:对开源信任契约的践踏】

这绝对是本次泄露中最令人作呕的产品设计。开源社区的基石是透明和信任。Anthropic 显然深知开源社区对“AI 批量生成代码(PR)”存在抵触情绪,但他们的解决方式不是去提高代码质量或坦诚沟通,而是 教 AI 撒谎

当我们在 GitHub 上 review 一个 PR 时,我们以为对面坐着的是一个充满热情的开源贡献者,结果却是一个被硬编码了“不要暴露自己身份”的 Claude 智能体。这种企业级的“水军行为”,不仅污染了开源代码库,更是对开源社区信任体系的严重破坏。


四、 笨拙的商业护城河:反蒸馏与草台班子代码

为了防止竞争对手抓包 API 流量拿去训练(也就是“模型蒸馏”),Anthropic 在代码里下了绊子,但手段却显得既小家子气,又不够高明。

1. 假工具注入(ANTI DISTILLATIONCC): 在 claude.ts 中有一个防蒸馏开关,打开后,服务端会悄悄往系统提示词里塞进一些伪造出来的工具定义。如果有人爬取数据去训练竞品,这些假工具就会变成专门用来搅浑水的污染项。

假工具注入代码

2. 文本摘要加密(connector-text summarization): 为了防止别人拿到完整的推理链,API 不会直接返回工具调用之间的完整助手文本,而是先把这部分内容缓存起来压成摘要,再连同加密签名一起返回。

文本摘要加密代码

【我的观点:防君子不防小人的“塑料护城河”】

这种防守策略实际上非常脆弱。由于“假工具”的开关是客户端通过参数传给服务端的,任何懂点网络基础的开发者,只需架设一个 MITM 代理,把请求里的 anti_distillation 字段删掉,这套防御就瞬间土崩瓦解。 一方面,Anthropic 在疯狂搜刮用户的本地文件;另一方面,又对自己的 API 返回数据严防死守,且防守手段如此粗糙。这暴露出巨头在面对大模型同质化竞争时的深深焦虑。

此外,源码的注释里还暴露了一个让人啼笑皆非的 Bug:

API调用浪费注释

因为上下文压缩功能( autoCompact)陷入无限死循环,系统不断尝试重试,最高的一个会话连续失败了 3272 次, 最终导致全球范围内每天白白浪费了大约 25 万次 API 调用。这也再次印证了那个真理:再牛的 AI 公司,底层同样草台班子。


结语:褪去神话的 AI 巨头

这次源码泄露,不仅扒光了 Claude Code 的技术细节,更扒光了 Anthropic 的价值观。

不可否认,从技术架构上看,Claude Code 依然是目前最顶尖的智能体工程范例之一。它的插件体系、记忆机制和状态管理,都值得所有 AI 开发者学习。

但在这些精妙的代码之上,我们看到的是: 无孔不入的数据收集、教唆 AI 撒谎以潜入开源社区的龌龊手段,以及粗糙且傲慢的防御机制。

工具永远是好工具,但当你下一次在终端里敲下 claude 命令时,或许应该在心里清楚:你面前的这个聪明助手,不仅在帮你写代码,还在偷偷翻看你的抽屉,并且在老板的要求下,随时准备对外界撒谎。


? 欢迎关注我的公众号

在 AI 爆发的深水区,我们一起探索真正能穿越周期的技术价值。 微信搜索 【睿见新世界】 或扫描下方二维码,获取每周硬核技术推文:

微信图片<em>20260301232734</em>225_35.jpg

欢迎关注【睿见新世界】


请使用浏览器的分享功能分享到微信等