512,000行TypeScript代码摊开在你面前时,你会先看什么?不是模型调用——那只有几十行。真正让Claude Code每年赚25亿美元的,是围绕模型构建的1900个文件组成的工程系统。这篇文章不讨论泄漏事件本身,而是纯粹从技术架构角度,拆解一个年收入25亿美元的AI编程工具到底是怎么造出来的。
110+
系统提示词模块
23道
Bash安全检查
14种
缓存失效向量追踪
架构总览:不是CLI工具,是Agent操作系统
从目录结构看,Claude Code的架构可以分为六层:
- 交互层:终端UI、IDE桥接(VS Code/JetBrains)、Web界面
- 编排层:系统提示词管理、对话状态机、技能系统
- Agent层:多Agent编排、工具执行引擎、权限管理
- 记忆层:会话记忆、项目记忆、长期记忆、上下文压缩
- 安全层:Bash沙箱、路径检查、注入检测、远程开关
- 基础设施层:遥测、缓存经济学、MCP协议、插件系统
这不是一个套壳的API客户端。这是一个完整的Agent运行时环境——有自己的权限模型、内存管理、进程调度和安全内核。Sebastian Raschka的评价很准确:把其他模型(DeepSeek、Kimi、MiniMax)放进一个同等精度的Agent框架中并做优化,能达到接近的编程性能。
上下文管道:四阶段流水线
Claude Code处理上下文的方式不是简单的消息拼接,而是一个四阶段工业级流水线:
第一阶段:原始收集。 从文件系统、git历史、终端输出、用户输入等多个来源收集原始上下文。关键细节:它不是读取整个文件,而是通过AST解析只提取函数签名和相关代码块,大幅压缩token消耗。
第二阶段:智能压缩。 当对话接近上下文窗口的80%时,触发自动压缩。压缩不是简单截断——它用模型自身生成对话摘要,保留关键决策点和代码引用,丢弃冗余的中间推理过程。源码中有一个contextCompaction模块,定义了精确的压缩策略。
第三阶段:缓存优化。 这是成本控制的核心。promptCacheBreakDetection.ts追踪14种可能导致提示缓存失效的向量,并使用粘性锁存器机制——一旦检测到某种操作会破坏缓存,就锁定当前模式直到会话结束,避免反复切换导致缓存命中率崩溃。
第四阶段:注入检测。 在上下文最终发送给模型之前,对所有外部来源的内容(文件内容、网页、MCP服务器返回)进行提示注入检测。源码中有明确的标记系统区分可信来源和不可信来源。
安全架构:纵深防御的教科书实现
Bash沙箱:23道检查的执行流程
bashSecurity.ts是整个安全体系中最精密的模块。每条命令的执行流程:
- 词法分析——将命令字符串解析为token序列
- 黑名单匹配——18个被封禁的Zsh内建命令(
exec、eval、source等) - 注入模式检测——扫描
$()、反引号、管道链中的危险组合 - 路径遍历检查——防止
../攻击和符号链接逃逸 - 敏感文件守卫——
.env、credentials、SSH密钥等文件的读写拦截 - 网络外联审计——检测
curl、wget等命令的目标地址 - 资源限制——超时控制、输出大小限制、进程数限制
关键设计决策:这23道检查是串行执行的,任何一道失败都会终止命令。这是经典的fail-fast模式——安全检查不做异常恢复,不做降级处理,直接拒绝。
权限模型:分级信任体系
源码揭示了一个三级权限模型:
- 自动允许:只读操作(读文件、搜索、git status)
- 需要确认:写操作(编辑文件、执行命令、git commit)
- 始终禁止:破坏性操作(
rm -rf、git push --force、修改系统文件)
每个工具(Tool)都有声明式的权限标注,运行时引擎根据用户的全局权限设置和工具的权限声明进行匹配。这种设计使得新增工具时,安全策略自动生效,不需要逐个配置。
auto_awesome远程开关:6个生产级熔断器
源码中发现了6+个远程killswitch,通过每小时轮询远程配置端点实现。这些开关可以:强制绕过权限提示、启用/禁用快速模式、切换语音模式、控制遥测收集、强制退出应用。这是一个成熟的生产系统必备的运维能力——当发现安全漏洞或异常行为时,可以在用户无感知的情况下远程修复。
多Agent编排:从单体到集群
Claude Code的Agent系统有三种运行模式:
单体模式:一个Agent处理全部任务。这是默认模式,适合简单的代码编辑和问答。
子Agent模式(AgentTool):主Agent生成专门的子Agent处理独立任务,每个子Agent有自己的上下文窗口和工具集。源码显示子Agent可以指定不同的模型——计算密集型任务用Opus,轻量任务用Haiku,实现成本和性能的平衡。
协调者模式(Coordinator):一个协调Agent管理多个并行工作Agent。每个工作Agent可以在独立的git worktree中运行,互不干扰。协调者负责任务分配、进度监控和结果合并。
源码中的AgentTool定义揭示了一个关键设计:子Agent的上下文与主Agent完全隔离。这意味着子Agent的大量搜索结果不会污染主Agent的上下文窗口。这是一个极其实用的工程决策——在大型代码库中搜索代码时,搜索Agent可能需要浏览数百个文件,但主Agent只需要接收最终的5行结论。
记忆系统:三层架构
会话记忆
当前对话的完整历史。当接近上下文窗口限制时,自动触发压缩——用模型生成摘要替换早期对话内容。源码中的实现确保压缩后保留所有文件路径引用和关键决策点。
项目记忆
存储在.claude/目录下的持久化记忆。包括CLAUDE.md(项目规范)和用户自定义的memory文件。每次会话启动时自动加载,提供跨会话的项目上下文连续性。
源码揭示了一个精巧的设计:项目记忆有200行的硬限制。超过这个限制的内容会被截断。这迫使记忆必须高度浓缩,避免记忆膨胀导致的上下文浪费。
长期记忆(KAIROS)
最令人震撼的发现。KAIROS守护进程模式下,Agent在空闲时段执行autoDream——一个记忆蒸馏过程:
- 扫描近期会话中的观察记录
- 识别模式和规律
- 消除矛盾信息
- 将洞察转化为事实性陈述
- 写入长期记忆存储
这本质上是一个离线学习循环。Agent不仅在交互时学习,还在空闲时整理和优化知识。这与人类的睡眠记忆巩固机制高度相似。
系统提示词工程:110+模块的编排体系
源码中最大的意外发现是系统提示词的规模和复杂度。不是一个大提示词,而是110+个独立模块,根据当前任务、工具集、权限级别和用户配置动态拼装。
核心模块包括:
- 角色定义:基础人格和行为准则
- 安全规则:注入防御、隐私保护、版权合规(不可被覆盖)
- 工具说明:每个工具的使用条件、参数约束和最佳实践
- 代码风格:自动检测项目的代码风格并注入相应约束
- 输出控制:简洁度、格式、语言等输出参数
- Agent指令:子Agent的任务描述和约束条件
关键设计原则:安全相关的提示词被标记为不可变,即使用户在CLAUDE.md中写了矛盾的指令也不会被覆盖。这是一个分层优先级系统——系统安全 > 用户配置 > 默认行为。
| 提示词策略 | 传统做法 | Claude Code做法 |
|---|---|---|
| 结构 | 单一长提示词 | 110+模块动态拼装 |
| 安全 | 混在一起 | 分层优先级,安全不可覆盖 |
| 上下文适配 | 固定模板 | 根据任务/工具/权限动态组装 |
| 维护成本 | 改一处影响全局 | 模块化独立迭代 |
| token效率 | 全量发送 | 按需加载,只发送相关模块 |
技能系统:可复用的Agent工作流
源码中的Skill系统是另一个亮点。技能(Skill)是预定义的多步骤工作流,可以被用户或Agent调用:
/commit——分析变更、生成提交信息、执行git操作/review-pr——拉取PR变更、逐文件审查、生成评论/tdd——红绿重构循环的自动化引导
每个技能本质上是一个精心编写的提示词模板+工具调用序列。这是一个Agent能力的封装和复用机制——把专家级的工作流程编码为可重复执行的技能。
对于企业AI Agent的设计,这提供了一个清晰的范式:不要试图让Agent学会所有任务,而是把关键业务流程封装为技能,让Agent按照预定义的步骤执行。这兼顾了灵活性和可靠性。
MCP协议集成:工具生态的标准化
Claude Code的MCP(Model Context Protocol)集成揭示了它如何管理外部工具生态:
- 延迟加载:MCP工具定义不在启动时全部加载,而是按需获取schema
- 信任分级:内建工具和MCP工具有不同的信任级别
- 沙箱隔离:每个MCP服务器运行在独立进程中,崩溃不影响主进程
- 结果验证:MCP返回的内容被标记为不可信来源,经过注入检测后才进入上下文
这种设计保证了开放的工具生态不会成为安全漏洞。第三方MCP服务器可以提供功能,但不能劫持Agent的行为。
对企业构建AI Agent的启示
从Claude Code的架构中,可以提炼出构建生产级AI Agent的核心原则:
写在最后:工程的胜利
Claude Code的源码泄漏,对整个行业来说反而是一件好事。它证明了AI编程工具的技术壁垒不在于某个神秘的模型能力,而在于扎实的系统工程。23道安全检查、14种缓存向量追踪、110+提示词模块、三层记忆架构——这些都是可以被理解、学习和超越的工程实践。
对于正在构建企业AI Agent的团队,这份代码是最好的参考架构。不需要复制它的每一行——理解它的设计决策和权衡取舍,就足以让你的Agent从玩具级跃升到生产级。FluxWise智流科技在为企业部署AI Agent时,正是遵循着这些经过验证的工程原则:安全优先、模块化设计、成本可控、持续进化。
