第1章:欢迎来到 Claude Code 的世界

你有没有想过,AI 编程助手是怎么工作的?

你可能已经用过 ChatGPT、Claude 或其他 AI 来帮你写代码。你在对话框里输入"帮我写一个计算器程序",几秒钟后,一段完整的代码就出现在屏幕上。

但你有没有好奇过:这一切是怎么发生的?

当你在终端里输入一个问题,Claude Code 到底做了什么?它怎么知道要读哪个文件?它怎么安全地执行命令而不把你的电脑搞坏?它怎么记住你们之前的对话?

这本书要回答的,就是这些问题。

什么是 Claude Code?

Claude Code 是一个运行在终端(Terminal)里的 AI 编程助手。和你在网页上用的 ChatGPT 不同,它不是一个网页应用——它是一个命令行工具(CLI)

你在终端里这样启动它:


claude

然后你就进入了一个交互式的对话界面。你可以:

  • - 用自然语言描述你想做什么:"帮我修复这个 bug"
  • - 让它读文件:它会自动读取你项目中的代码
  • - 让它改文件:它可以直接修改你的代码
  • - 让它执行命令:它可以运行测试、安装依赖、提交代码
  • - 让它搜索代码:它可以在整个项目中搜索特定的模式

这一切都发生在你的终端里,不需要离开你的开发环境。

为什么要读源码?

你可能会问:"我只是一个高中生,为什么要读这么复杂的源码?"

这是一个好问题。答案有三个:

1. 理解"黑箱"

当你用一个工具时,它对你来说是一个"黑箱"——你知道输入什么、输出什么,但不知道里面发生了什么。读源码就是打开这个黑箱。

想象你有一台老式收音机。你可以拧旋钮换台,但你不知道为什么拧旋钮就能换台。直到有一天你把它拆开,看到了里面的电路板、电容、天线——突然间,"换台"这个动作从魔法变成了可以理解的物理过程。

读源码就是"拆开收音机"。

2. 学习真实世界的工程实践

学校里教的编程通常是:写一个函数,解决一个小问题。但真实世界的软件是几十万行代码协作完成的。Claude Code 有将近 50 万行 TypeScript 代码,分布在 1800 多个文件里。

通过阅读它,你会学到:

  • - 怎么组织大型项目
  • - 怎么设计系统架构
  • - 怎么处理安全问题
  • - 怎么做性能优化

这些是课本上学不到的。

3. 站在巨人的肩膀上

Claude Code 是由 Anthropic 的顶级工程师们写的。他们的代码体现了多年的工程经验。读他们的代码,就像跟着一位大师学画画——你不一定要画出一样的画,但你能学到很多技巧。

这本书的结构

这本书分为八个部分:

第一部分:起步篇——帮你建立必要的背景知识。我们会鸟瞰整个项目的结构,并快速复习一些你需要知道的 TypeScript 和 React 知识。

第二部分:核心架构篇——深入程序的骨架。我们会看程序是怎么启动的,终端界面是怎么画出来的,程序的状态是怎么管理的。

第三部分:对话引擎篇——这是最核心的部分。我们会看消息是怎么在你和 AI 之间流动的,AI 的回复是怎么一个字一个字地出现的。

第四部分:工具系统篇——Claude Code 最强大的能力来自它的"工具"。我们会逐一解剖每个工具的实现。

第五部分:安全与权限篇——AI 能执行命令,这很危险。我们会看 Claude Code 是怎么保护你的安全的。

第六部分:扩展与集成篇——Claude Code 不是孤立的。它可以和 VS Code、JetBrains 等编辑器集成,还支持插件扩展。

第七部分:高级话题篇——多个 AI 同时工作、性能优化、记忆系统等高级话题。

第八部分:总结篇——把所有知识串起来,提炼设计模式和工程实践。

你需要的预备知识

这本书假设你:

  • - 会基本的编程:知道什么是变量、函数、循环、条件判断
  • - 用过终端:知道怎么在终端里输入命令
  • - 听说过 JavaScript:不需要精通,但至少知道它是什么

不需要你:

  • - 精通 TypeScript(我们会在第3章做一个快速入门)
  • - 了解 React(同样在第3章介绍)
  • - 有大型项目经验(这本书就是帮你获得这个经验的)

一个小实验

在我们正式开始之前,让我们做一个小实验来建立直觉。

假设你要设计一个"AI 编程助手",你会怎么设计?拿一张纸,画一画你觉得它应该有哪些部分。

你可能会画出这样的东西:


用户输入 → [某种处理] → 发送给 AI → [AI 回复] → 显示给用户

这已经很好了!但实际上,Claude Code 的流程比这复杂得多:


用户输入
  → 解析命令(是斜杠命令吗?是普通对话吗?)
  → 执行钩子(有没有需要先运行的脚本?)
  → 构建系统提示词(告诉 AI 它是谁、能做什么)
  → 发送给 Claude API(带上对话历史和工具定义)
  → 接收流式响应(一个字一个字地显示)
  → 如果 AI 想用工具:
      → 检查权限(用户允许这个操作吗?)
      → 执行工具(运行命令、读文件等)
      → 把结果发回给 AI
      → AI 继续回复
  → 保存到历史记录
  → 显示给用户

看到了吗?一个简单的"问答"背后,有这么多步骤。而每一步都有它的设计考量、安全检查、和优化技巧。

这就是我们接下来要一步步探索的旅程。

本章小结

  • - Claude Code 是一个运行在终端里的 AI 编程助手
  • - 它有约 50 万行 TypeScript 代码,分布在 1800+ 个文件中
  • - 读源码可以帮你理解"黑箱"、学习真实工程实践、从顶级工程师那里学习
  • - 一个看似简单的对话背后,有命令解析、权限检查、工具执行等复杂流程

延伸阅读

如果你对 AI 编程助手的历史感兴趣,可以了解一下这些里程碑:

  • - 2021 年:GitHub Copilot 发布,AI 第一次大规模用于代码补全
  • - 2022 年:ChatGPT 发布,人们开始用对话式 AI 写代码
  • - 2023 年:Cursor、Aider 等 AI 编程工具兴起
  • - 2024-2025 年:Claude Code、GitHub Copilot Workspace 等"智能体式"工具出现——AI 不只给建议,还能直接执行操作

Claude Code 代表了 AI 编程工具的最新一代——从"建议代码"进化到"执行操作"。这也是为什么它的源码如此值得研究:它展示了一个 AI Agent(智能体)的完整实现。

准备好了吗?让我们开始这段旅程。下一章,我们将鸟瞰整个项目的全貌。


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