Claude Code 不只是编码工具,更是理解成熟 Agent 架构的关键样本。
原文标题:三个月,我把 Claude Code 拆了个遍
原文作者:图灵编辑部
冷月清谈:
怜星夜思:
2、Prompt 真的能算一种“新型代码”吗,还是只是把提示词说得更高级?
3、学习 Claude Code 的源码架构,对普通开发者到底有什么实际价值?
4、Agent 系统里,模型能力和工程架构哪个更重要?
原文内容
最近,我写了一本关于 Claude Code 的新书:《Claude Code 源码架构:核心解析》。非常荣幸得到了很多朋友的认可与关注。因此,我专门针对大家提出的共性问题写一篇文章与大家交流。
如果有更多想讨论的内容,欢迎 6.23 晚上 20:00 来到图灵社区直播间与我一起探讨~
01
为什么是 Claude Code
很多朋友看到这个题目,第一反应可能是:这是不是又一本 Claude Code 的“使用说明书”?
当然不是,这是一本解构 Claude Code 本身的书。
我写这本书的动机,从一开始就不是单纯介绍又一个 AI 编码工具,而是想借 Claude Code 这样一个足够成熟、足够完整的样本,去回答一个我自己也持续在思考的问题:今天我们到底该怎样理解一个足够强大的 Agent 系统?
这两年,关于 AI 编程、Agent、智能体工作流的讨论非常多。大家都在谈“让大模型自己做事”,或是谈“下一代软件形态”,由此衍生出了 Prompt Engineering、Context Engineering、Harness Engineering、Loop Engineering 等等层出不穷的概念。
然而无论 Agent 概念如何推陈出新,目的从来都只有一个:让 AI 尽可能多地代替人完成工作。
如果你真的去看一个成熟的 Agent 系统是怎么搭起来的,就会发现,难点从来不局限在任何一个具象的方面,而在于:
-
它是怎么启动的;
-
它怎么和人稳定交互的;
-
它怎么调用工具、管理上下文、保存记忆;
-
它怎么约束自己不过度发挥;
-
它又怎么通过一整套 Prompt 机制,把“会回答”变成“会协作、会执行、会治理”。
这一切问题,都不是优化某个 Agent 能力能解决的,试出好用的 Prompt、做一个新的记忆模块、给 RAG 加加速。无论哪种解法,都只是一时之计,绝非软件工程师一贯追求的“一劳永逸”。而 Claude Code 在这个契机恰好提供了一个非常值得研究的样本。
先不谈它是否已解决了所有问题,至少它已经完美的覆盖了以上我们提出的所有问题。Claude Code 表面上是一个 AI 编码产品,但从更深一层看,它其实已经非常接近一套完整的 Agent 操作系统的实现:从启动入口、REPL 交互、命令与工具系统,到上下文压缩、基于文件的持久化记忆、扩展治理,再到 Prompt 工程和多 Agent 协作,它几乎把今天 Agent 系统里最关键的几个问题,都走通了一遍。
如果你是 Linux 时代的原住民或今天也常在 Linux 上做开发,我想你会对以上说法感触更深。Claude Code 的 REPL 从应用层面来看,就好像我们初次体验 bash 时感受:有些别扭,但习惯了以后真的离不开。也许与操作系统的区别只在于 Claude Code 类的本地 Agent 目前仍只是个应用层产品,并没有实现一套真正 AI Native 的内核。
这其实就是我关于“为什么是 Claude Code”的回答:理解本地 Agent 产品,我认为是窥见下一代 AI Native 系统发展趋势的捷径,而这类产品中,Claude Code 是绝对的领头者。
02
为什么要写“源码架构”
所以这本书虽然写的是 Claude Code,但正如我在书本的开篇所说,我真正想讨论的并不是“Claude Code 有哪些功能”或“Claude Code 的哪行代码如何惊为天人”,因为从工程师的角度,这些都不重要,任何实现层面的东西都是可替代的。
对学习技术来说真正重要的是:一个成熟 Agent 为什么会这样设计,它的系统边界是如何划分的,它的工程哲学又是什么。这也是我所认为的工程师应当具备的学习优秀项目的基本原则:先理清项目的脉络,不要陷入零散的代码细节。恒定优秀的思想可以由不恒定的过程产生恒定优秀的结果,过于关注代码本身,实际上关注的是中间那段“不恒定的过程”。
我个人阅读技术文章或技术书籍最怕两种极端:一是太“轻”,只讲结论和概念,读完感觉都懂了,但一到真正做系统的时候,还是无从下手;二是“重”,一头扎进文件和函数,把读者拖进局部实现,却忘了先交代整套系统为什么这么组织。
所以本书尽量避开了这两个问题。我尝试把 Claude Code 还原成对一个工程对象的结构剖析。你可以通过我为你梳理的各种架构图、程序流图梳理出这款工具的入口分流逻辑、理解 REPL 为什么不是一个简单的聊天框,可以看清记忆系统和上下文窗口管理为什么会成为 Agent 可用性的关键。
这使得你在了解这款优秀工具的工程中,不会因复杂的代码倍感头疼,同时又不会只是停留在非常粗浅的文字及思路介绍上,略微花些时间顺着我的箭头走,无论你的基础如何,我想都会有所收获。
Claude Code 的任务推进主线
同样本书也详尽地为大家分析了 Claude Code 中最为重要的一些 Prompt 工程设计思路。在你了解了复杂度适中的源码架构后,也可以进一步看到架构之下的大量与大模型交互的 Prompt 设计。
在 Claude Code 中,Prompt 并不是锦上添花的提示词技巧,而是实实在在参与系统行为塑造的一层“可编程机制”,与前文介绍的工程架构相辅相成,各自为 Claude Code 最终效果贡献了 50% 的助力。
如果要说这本书在 Prompt 工程方面最想传达的一个判断,我会把它概括成一句话:Prompt 不再只是与大模型的沟通技巧,它正在成为 Agent 时代的一种新型工程接口,成为一种“新型代码”。
这也是为什么书里会专门花不少篇幅去讨论负向指令、元 Prompt、验证 Agent、工具级 Prompt、角色 Prompt 这些看起来“像提示词”,但本质上已经属于系统设计的问题。很多人理解 Prompt,仍然停留在“怎么把一句话写得更像人话”;但在一个成熟 Agent 系统里,Prompt 其实承担的是边界设定、行为约束、协作分工、风险控制,甚至认知纠偏的职责。
换句话说,Claude Code 的 Prompt 已经不是表达层,它就属于架构的一部分。
在我看来,我觉得至少三类读者一定要学习 Claude Code 的架构设计:
第一类:已经在使用 Claude Code 或同类 AI Coding 工具的开发者,或者对 AI 编程工具高度关注的人。你会更清楚它为什么有时表现得如此强大,也会更明白它的能力并不完全来自大模型本身。
第二类:正在做 Agent、做 AI 应用、做新一代开发工具的工程师或技术负责人。对这类读者来说,这本书更像是一份架构拆解笔记,帮助你判断“哪些设计是可以迁移的”。
第三类:是对下一代软件形态感兴趣的人。你会看到,所谓 Agent,并不是在聊天界面外面随便接几个工具,而是正在逐步长成一种兼具交互、执行、记忆、治理和扩展能力的新系统形态。
我也很希望这本书能帮大家建立一种更稳的技术观察方式:当我们看一个 AI 产品时,逐渐从小白用户的视角向更专业的视角转变,不只看它会不会写代码、能不能跑任务,而是进一步问自己:
-
它的模块职责是怎么划分的?
-
它的输入输出边界在哪里?
-
它的主链路是什么?
-
它又刻意把哪些复杂度收进了系统内部?
因为在不远的未来,也许工程师和“普通用户”的界限会越来越模糊。在大家都精通 Claude Code 编程的时代下,同质化的产品很快会失去竞争力,那届时又如何让你的作品能继续脱颖而出,也许就取决于今天你看完这篇文章后对你的角色是否有新的思考。
最后,如果你对我的书感兴趣,千万别忘了今晚的直播~希望大家在 AI 时代,一直保持学习状态~





