Claude Code 源码泄露:51.2 万行 TypeScript 揭示的 Agent 架构真相

> 来源: Sebastian Raschka (@rasbt)

> 分析: Latent.Space / David Borish

> 泄露日期: 2026-03-31

> 代码量: ~512,000 行 TypeScript, ~1,900 文件

> 研究时间: 2026-04-01

🎯 一句话版本

Claude Code 的完整 TypeScript 源码因 npm 包意外包含 source map 文件泄露。51.2 万行代码揭示了一个关键事实——Claude Code 比 web UI 强不是因为更好的模型或 prompt,而是因为围绕模型的工程 harness:仓库上下文注入、KV cache 复用的免费并行子 Agent、三层记忆系统、五种 Compaction 策略。

💥 怎么泄露的

不是黑客,是配置错误。

Bun runtime 默认生成 .map source map 文件(调试用),团队忘了在 .npmignore 中排除。任何人从 npm 包里就能下载完整未混淆源码——直接从 Anthropic 的 R2 存储桶获取。

讽刺的是,代码里有一个 "Undercover Mode"——专门防止 Claude Code 在公开仓库的 commit 里泄露内部代号(Capybara、Tengu 等)。防住了模型泄密,没防住工程师忘记 .npmignore。

这是第二次了。 2025 年初有过同样的泄露,修过了,然后又犯了。

🏗️ 架构六大发现(rasbt 总结)

1. 仓库状态注入上下文

Claude Code 把 recent commits、git branch info、项目结构 自动注入到每次对话的上下文里。这就是为什么它"理解你的项目"——不是魔法,是工程。

2. 激进的 KV Cache 复用

这是最大的成本秘密。API 的 prompt cache 被充分利用——重复内容不重新计算。

3. 自定义 Grep/Glob/LSP

内建的代码搜索和语言服务协议集成——不是让模型自己用 bash grep,而是有专门的高效工具。

4. 文件读取去重 + 工具结果采样

同一文件不会被重复读取;工具输出被采样而不是全部塞入 context。

5. 三层记忆系统


Layer 1: MEMORY.md — 索引,指向其他知识文件
Layer 2: Topic files — 按需加载的主题知识
Layer 3: Session transcripts — 可搜索的完整会话记录

还有 "autoDream" 模式——agent "睡眠"时合并记忆、去重、修剪、去除矛盾。

6. 子 Agent 三种模式 ⭐

模式机制特点
**Fork**字节级复制父 context,命中 KV cache**并行几乎免费**
**Teammate**文件 mailbox 跨终端通信独立工作空间
**Worktree**每个 agent 独立 git branch代码隔离

Fork 模式是杀手锏——因为子 agent 共享父 context 的 KV cache,跑 5 个子 agent 的 API 成本和跑 1 个差不多。

📊 代码内部细节

工具系统(~40 个工具,默认开启 <20 个)


AgentTool, BashTool, FileReadTool, FileEditTool, FileWriteTool,
NotebookEditTool, WebFetchTool, WebSearchTool, TodoWriteTool,
TaskStopTool, TaskOutputTool, AskUserQuestionTool, SkillTool,
EnterPlanModeTool, ExitPlanModeV2Tool, SendMessageTool, BriefTool,
ListMcpResourcesTool, ReadMcpResourceTool

只读操作并发执行,变更操作串行执行——简单但有效的并发控制。

CLAUDE.md 处理

Hook 系统

25+ 生命周期事件,5 种 hook 类型(shell / LLM 注入 / agent 验证 / HTTP webhook / JS 函数)。这是一个 Anthropic 没有大力宣传的扩展 API。

五种 Compaction 策略

策略说明
时间清理清除旧的工具结果
对话摘要压缩对话历史
Memory 提取提取任务规格、文件列表、错误、工作流状态
全历史摘要整体压缩
最旧截断丢弃最早的消息

权限系统

5 级设置级联 + "auto" 模式:LLM 分类器判断每个操作,多个 resolver 并行竞赛审批。

🐣 有趣发现

内容说明
**Buddy 系统**Tamagotchi 风格的电子宠物——物种稀有度、闪光变体、程序生成属性、模型写的"灵魂描述"
**ULTRAPLAN**未发布的内部规划系统
**KAIROS**未发布的内部项目
**MAGIC DOCS**内部文档系统
**Claude Mythos**未发布模型——计算密集型推理,面向企业安全
**员工 TUI**员工专用终端界面
**/buddy**4月1日愚人节彩蛋

⚠️ 安全后果

💡 与我们的关联

1. 验证了我们一直在做的事

Claude Code 的记忆系统(MEMORY.md + topic files)、CLAUDE.md 的层级设计——和 OpenClaw 的 AGENTS.md / SOUL.md / MEMORY.md 模式几乎一模一样。我们的 workspace-based 方法被 Anthropic 自己的旗舰产品验证了。

2. Fork 子 Agent 模式值得学习

OpenClaw 的 sessions_spawn 对应 Claude Code 的子 agent 系统。但 Claude Code 的 fork 模式利用 KV cache 做到了"并行免费"——这是架构层面的优势。

3. Compaction 策略

我们之前研究的 ACON / SUPO 都在做上下文压缩——Claude Code 内部用了 5 种策略的组合。这是工程化而非学术化的解法。

4. 40,000 字符的 CLAUDE.md

大多数用户只用了很小一部分——这和我们的 AGENTS.md 使用情况类似。空间足够但内容密度是关键。

5. "不是模型,是 harness"

rasbt 的核心结论和 Meta-Harness 论文的观点完全一致——模型性能的差异更多来自编排代码而非模型本身。Anthropic 自己的产品证明了这一点。

📊 评分

维度评分(/10)
信息价值10.0 — 51.2 万行源码的直接分析,无比真实
技术深度9.5 — 完整的 agent 架构、记忆系统、并发模型
影响力9.5 — AI 行业年度事件级别的泄露
实用性9.0 — 直接可以借鉴的架构模式和工程实践
与我们的相关度9.5 — 验证了 OpenClaw 的方法论,子 agent 和记忆系统直接相关
**综合****9.5**

报告由深度研究助手自动生成 | 2026-04-01

来源: rasbt 推文 / Latent.Space / David Borish 分析