Claude Code Agent 工程深度教学手册

基于 Claude Code 泄露源码(2026-03-31),约 1,915 个 TypeScript 文件、51.2 万行代码的逐模块拆解。 本文档面向想要理解「一个工业级 AI Agent 系统到底是怎么设计的」的工程师和研究者。 第一章 全局架构:一个 Agent 系统的骨架 1.1 技术选型 层面 选择 为什么这么选 运行时 Bun 比 Node.js 快 3-5 倍的启动速度,内置 bundler,支持编译时 feature flag 语言 TypeScript (strict) 类型安全在大型 Agent 系统中至关重要—

phase 8: 记忆流式与API

Phase 8:记忆、流式与 API 本阶段目标:为对话增加记忆(多轮上下文)、对图或链做流式输出、并通过 FastAPI 或 LangServe 暴露 HTTP API,形成可用的服务形态。 1. 设计指导 1.1 记忆(Memory) * 问题:多轮对话时,上一轮的问题与答案要作为上下文传给 LLM,否则无法理解「它」「这段代码」等指代。 * 常见做法: * 短期:保留最近 N 轮 HumanMessage/AIMessage,拼进当前 prompt。 * 中期:用 LLM 对历史做摘要,节省 token。 * 长期:把重要信息向量化存检索(本项目可选)。 * 本阶段先做短期记忆:

phase7: 多Agent协作

Phase 7:多 Agent 协作 本阶段目标:在 Phase 6 的图上扩展为 Orchestrator + 多个专家 Agent(至少 Retrieval、Analysis),实现意图路由、多节点协作与结果聚合。 1. 设计指导 1.1 多 Agent 模式 * Orchestrator(编排者):唯一入口,负责「意图分类 + 任务分解 + 路由」。不直接做检索或写代码,只决定「下一步调用哪个 Agent」。 * 专家 Agent:每个负责一类能力(检索、分析、代码生成、搜索等),有独立工具集或逻辑,通过 State 与 Orchestrator 通信。 * 状态汇聚:

phase 6: LangGraph与编排

Phase 6:LangGraph 与编排 本阶段目标:理解 LangGraph 的 StateGraph、节点、边(普通边与条件边),能实现一个「意图分类 → 单一路由」的小图,为 Phase 7 多 Agent 协作打基础。 1. 设计指导 1.1 为什么用图而不是手写循环 * 显式状态:图有一个统一的 State(TypedDict),每个节点读/写 State 的若干字段,数据流清晰。 * 条件路由:可以根据 State 中某字段(如 intent)决定下一步走哪个节点,无需在代码里写一堆 if/else。 * 可观测与断点:LangSmith 等能按「节点」

phase 5: 工具与单Agent

Phase 5:工具与单 Agent 本阶段目标:学会用 LangChain 定义工具(@tool、StructuredTool)、绑定到 LLM,并实现「单 Agent」的 ReAct 循环(推理 → 选工具 → 执行 → 再推理),为多 Agent 打基础。 1. 设计指导 1.1 工具(Tool)在 LangChain 中的角色 * Tool:可被 LLM 调用的函数,有名称、描述、参数 Schema(常用 Pydantic)。LLM 根据描述决定是否调用以及传什么参数。 * bind_tools:把 Tool