Claude Code 源码深度解读教程
基于
@anthropic-ai/claude-codenpm 包 source map 还原的 1,987 个 TypeScript 源文件,从零到精通的结构化学习路径。
📚 教程目录
本教程共分六个章节,由浅入深,三个维度递进:
功能维度(它能做什么)
↓
架构维度(它为什么这样设计)
↓
源码维度(它是怎么实现的)
📖 第一章:全局概览 — Claude Code 是什么?
适合人群:零基础,想先建立整体认知
🏗️ 第二章:架构设计 — 整体架构与分层
适合人群:理解了用途,想看懂全局设计
⚙️ 第三章:核心引擎 — Agent 对话循环
适合人群:想理解 AI Agent 是怎么"思考和行动"的
- 3.1 一次对话的完整生命周期
- 3.2 query.ts:主循环的源码精读
- 3.3 QueryEngine:会话状态管理器
- 3.4 System Prompt 的构建机制
- 3.5 Context 压缩:对话历史如何不爆炸
- 3.6 Hooks 系统:用户脚本介入 AI 决策流
🔧 第四章:工具系统 — 53 个工具的设计哲学
适合人群:想理解 AI 如何与真实世界交互
- 4.1 Tool 抽象:一个工具是什么
- 4.2 核心工具详解:Bash / FileEdit / Agent
- 4.3 权限系统:canUseTool 决策链
- 4.4 MCP 协议:工具的扩展边界
- 4.5 工具并发与编排
🚀 第五章:高级专题 — 隐藏功能深度解读
适合人群:想了解 Anthropic 内部正在做什么
- 5.1 KAIROS:永不关机的持久 AI 助手
- 5.2 Coordinator:多 Agent 编排模式
- 5.3 Bridge:从 claude.ai 远程控制本地 CLI
- 5.4 BUDDY:AI 电子宠物的确定性生成算法
- 5.5 Voice & Proactive:语音与主动模式
- 5.6 隐藏命令速查:斜杠命令 / CLI 参数 / 环境变量
🔒 第六章:工程实践 — 功能发布与质量管控
适合人群:对工程管理、产品发布感兴趣
- 6.1 三层门控:feature() / USER_TYPE / GrowthBook
- 6.2 完整编译开关速查表(50 个)
- 6.3 遥测与可观测性:OpenTelemetry 实践
- 6.4 会话持久化与历史记录
- 6.5 Services 层全景:26 个子服务的职责地图
- 6.6 完整环境变量参考手册(70+ 个)
🎓 第七章:总结
🧠 ClaudeCode 代码解读(新增)
🗺️ 快速导航
| 我想了解... | 跳转章节 |
|---|---|
| Claude Code 是什么,能做什么 | 第一章 |
| 整体代码结构怎么看 | 1.3 源码地图 |
| Vim 模式键位 | 1.4 Vim 模式 |
| AI Agent 主循环怎么工作 | 3.2 query.ts 精读 |
| 如何用脚本介入 Claude 决策 | 3.6 Hooks 系统 |
| 工具权限是怎么判断的 | 4.3 权限系统 |
| KAIROS 持久助手怎么实现 | 5.1 KAIROS |
| 多 Agent 编排怎么做到的 | 5.2 Coordinator |
| 隐藏命令/参数/环境变量速查 | 5.6 隐藏命令速查 |
| 功能开关是怎么控制的 | 6.1 三层门控 |
| services 层有哪些子服务 | 6.5 Services 全景 |
| 读完这套教程能做什么 | 教程总结 |
📌 说明
- 本教程基于还原的 TypeScript 源码,仅供研究学习
- 源码版权归 Anthropic 所有
- 所有源码引用标注了文件路径,可对照源码阅读
💡 建议阅读顺序:初学者按章节顺序读;有经验的开发者可直接跳到第三章的 query.ts 精读或第五章的高级专题;只想速查的直接看快速导航表。