附录 C:全书知识地图

本附录用图表形式串联全书的核心知识点,帮助你建立系统化的认识。

架构全景图


用户输入 "帮我修复 src/app.ts 中的 bug"
│
│ ┌─────────────── 第4章:入口 ────────────────┐
│ │                                              │
▼ │  main.tsx → 解析参数 → 初始化 → 启动 REPL    │
  │                                              │
  └──────────────────┬───────────────────────────┘
                     │
  ┌──────────────────▼───────────────────────────┐
  │           第7章:命令解析                      │
  │  是 /command 吗?→ 否 → 继续                  │
  │  是 → 执行命令 → 结束                         │
  └──────────────────┬───────────────────────────┘
                     │
  ┌──────────────────▼───────────────────────────┐
  │           第8章:消息处理                      │
  │  processUserInput() → 标准化 → 构建请求        │
  │  系统提示词 + 对话历史 + 工具定义               │
  └──────────────────┬───────────────────────────┘
                     │
  ┌──────────────────▼───────────────────────────┐
  │      第9章:查询引擎(Agent Loop)             │
  │  ┌──────────────────────────────────────┐    │
  │  │  发送 API 请求 ← 第10章:流式响应     │    │
  │  │       │                              │    │
  │  │       ▼                              │    │
  │  │  AI 回复:使用 FileRead 工具          │    │
  │  │       │                              │    │
  │  │       ▼                              │    │
  │  │  第17章:权限检查 → 允许              │    │
  │  │       │                              │    │
  │  │       ▼                              │    │
  │  │  第14章:FileRead 执行               │    │
  │  │       │                              │    │
  │  │       ▼                              │    │
  │  │  结果返回 AI → AI 发现 bug           │    │
  │  │       │                              │    │
  │  │       ▼                              │    │
  │  │  AI 回复:使用 FileEdit 修复         │    │
  │  │       │                              │    │
  │  │       ▼                              │    │
  │  │  第17章:权限检查 → 询问用户          │    │
  │  │       │                              │    │
  │  │       ▼                              │    │
  │  │  用户允许 → FileEdit 执行            │    │
  │  │       │                              │    │
  │  │       ▼                              │    │
  │  │  AI:修复完成 (stop_reason=end_turn) │    │
  │  └──────────────────────────────────────┘    │
  └──────────────────┬───────────────────────────┘
                     │
  ┌──────────────────▼───────────────────────────┐
  │           第5章:界面渲染                      │
  │  React/Ink → 显示差异 → 显示回复               │
  └──────────────────┬───────────────────────────┘
                     │
  ┌──────────────────▼───────────────────────────┐
  │           第26章:持久化                       │
  │  保存会话记录 → 更新记忆                       │
  └──────────────────────────────────────────────┘

知识依赖图

以下展示了各章之间的知识依赖关系。箭头 A → B 表示"先读 A 有助于理解 B":


第1章(入门)
  ↓
第2章(全景)→ 第3章(语言基础)
  ↓                ↓
第4章(入口)→ 第5章(UI)→ 第6章(状态)
  ↓                           ↓
第7章(命令)              第8章(消息)
                              ↓
                    第9章(查询引擎)
                     ↓          ↓
              第10章(流式)  第11章(上下文)
                              ↓
                    第12章(工具概述)
                   ↓    ↓    ↓    ↓
           第13章  第14章 第15章 第16章
           (Bash) (文件) (搜索) (Agent)
                   ↓
          第17章(权限)→ 第18章(安全)→ 第19章(沙箱)
                              ↓
                    第20章(MCP)→ 第21章(Hook)
                              ↓
                    第22章(IDE)→ 第23章(扩展)
                              ↓
          第24章(多智能体)→ 第25章(性能)
                              ↓
          第26章(记忆)→ 第27章(配置)
                              ↓
          第28章(模式)→ 第29章(实践)→ 第30章(展望)

核心概念关系图


┌─────────────────────────────────────────────────────────┐
│                                                          │
│                    Claude Code                           │
│                                                          │
│   ┌───────────┐   ┌───────────┐   ┌───────────┐        │
│   │  用户界面   │   │   工具    │   │   安全    │        │
│   │           │   │           │   │           │        │
│   │  Ink/React│←→│  40+ 工具  │←→│  6 层防御  │        │
│   │  组件     │   │  统一接口  │   │  权限规则  │        │
│   │  状态管理  │   │  并行执行  │   │  沙箱隔离  │        │
│   └───────────┘   └─────┬─────┘   └───────────┘        │
│         ↕               ↕               ↕               │
│   ┌─────────────────────────────────────────────┐       │
│   │              查询引擎                        │       │
│   │                                              │       │
│   │  Agent Loop · 流式响应 · Token 管理           │       │
│   │  消息标准化 · 提示缓存 · 自动压缩             │       │
│   └─────────────────────────────────────────────┘       │
│         ↕               ↕               ↕               │
│   ┌───────────┐   ┌───────────┐   ┌───────────┐        │
│   │   扩展    │   │   记忆    │   │   配置    │        │
│   │           │   │           │   │           │        │
│   │  MCP 协议 │   │ CLAUDE.md │   │ settings  │        │
│   │  插件     │   │  会话存储  │   │  功能开关  │        │
│   │  技能     │   │  自动提取  │   │  管理策略  │        │
│   └───────────┘   └───────────┘   └───────────┘        │
│                                                          │
└─────────────────────────────────────────────────────────┘

设计模式速查

你在设计什么可以用什么模式Claude Code 中的例子
多种实现,统一调用统一接口Tool 接口
大型系统的组织分层架构7 层架构
安全关键系统故障安全 + 纵深防御6 层安全
需要实时反馈生产者-消费者流式响应
可选择的算法策略模式权限模式
不修改源码加功能事件驱动Hook 系统
避免重复计算缓存策略提示缓存、LRU
按需加载功能渐进增强功能开关
连接外部系统适配器模式MCP、消息标准化
多模块协作关注点分离整体架构

本书由 everettjf 使用 Claude Code 分析泄露源码编写 | 保留出处即可自由转载