面试官:“你这么厉害咋不手撸个Claude Code?” 我笑着说:“就这!”
为什么推荐这个网站?渐进式学习:从 84 行到 694 行,每一步都清晰可见。问题驱动:先戳痛点再给解药,让你明白为什么需要这个机制。可视化强:任务看板、进度条、状态流转,抽象概念具象化。代码透明:每课改动列得明明白白,拒绝黑箱。即刻上手:命令和测试用例直接给,看完就能跑。原理通用:Python 示例但思想语言无关,Java/Go/TS 都能复刻。学完这 12 课,你能理解 Claude Code
最近刷到一个宝藏网站,叫 Learn Claude Code。名字看着挺像学习使用 Claude Code 的指南,但干的事却远比这要硬核——它要带你从零开始,手撸一个类似 Claude Code 的 AI 编程智能体。
别一听"智能体"就头大,这网站最骚的操作是:把复杂的 Agent 架构拆成了 12 个版本,代码从 84 行一路干到 694 行,每次只加一个机制,让你清清楚看到每一步解决了什么问题。

所有 Agent 的底层逻辑
网站上来就很直白地表示:所有 AI 编程 Agent,底层都是同一个循环。
while True:
response = client.messages.create(messages=messages, tools=tools)
if response.stop_reason != "tool_use":
break
for tool_call in response.content:
result = execute_tool(tool_call.name, tool_call.input)
messages.append(result)
翻译成人话就是:
-
调模型(给指令)
-
执行工具(读写文件、跑命令)
-
回传结果(告诉模型干了啥)
-
继续迭代(直到任务干完)
就这?就这。剩下的全是围绕这个循环的各种优化和补丁。
重要提醒:虽然网站用的是 Python 示例,但底层原理是语言无关的。你完全可以用 Java、Go、TypeScript 等任何语言复刻。
用 Java 来写,核心循环大概是这样:
while (true) {
MessageResponse response = client.messagesCreate(messages, tools);
if (!"tool_use".equals(response.getStopReason())) {
break;
}
for (ToolCall toolCall : response.getContent()) {
ToolResult result = executeTool(toolCall.getName(), toolCall.getInput());
messages.add(result);
}
}
看,逻辑一模一样。Python、Java、Go……语言只是工具,Agent 的核心设计模式才是精髓。
渐进式学习路径

网站将这 12 个阶段(s01-s12)归纳为五个核心能力的进阶,看看一个成熟的 Agent 系统是如何一步步被做出来的:
L1 工具与执行(s01-s02)
Agent 能做什么?基础层:工具赋予模型与外部世界交互的能力。
s01 The Agent Loop(84 行)
最小可用的 Agent 内核仅仅需要:一个 while 循环 + 一个工具。
核心思想:只要给 Agent 一个 Bash 工具,它就能读写文件、跑命令、操作 Git。
s02 Tools(120 行)
循环不变,通过一套规范的注册机制,你可以像搭积木一样给 Agent 塞入各种工具函数,让它的能力边界随插件无限延伸。
核心思想:每个工具一个处理函数,干净的注册机制。

L2 规划与协调(s03-s05,s07)
如何组织工作?从简单的待办列表到跨 Agent 共享的依赖感知任务板。
s03 TodoWrite(176 行)
发现问题了——Agent 干着干着就不知道自己在干啥。
核心思想:先列步骤,再执行。没有计划的 Agent 就像无头苍蝇。
s04 Subagents(151 行)
子任务污染主对话上下文怎么办?
核心思想:子 Agent 用独立的 messages[],保持主对话干净。
s05 Skills(187 行)
不要把所有规则都塞进 System Prompt,会撑饱上下文。
核心思想:按需加载,只有在特定场景下才通过工具返回(tool_result)喂入知识。

s07 Tasks(207 行)
多个任务之间有依赖关系怎么搞?
核心思想:利用基于文件的任务图,Agent 开始理解任务间的先后顺序与并行逻辑,成为真正的项目协调者。

L3 内存管理(s06)
在上下文限制内保持记忆。压缩策略让 Agent 可以无限工作而不失去连贯性。
s06 Compact(205 行)
对话一长,Token 烧得肉疼。
核心思想:三层压缩策略让无限会话成为可能:
-
滑动窗口:丢弃最早的消息
-
摘要压缩:把历史对话压缩成摘要
-
选择性保留:只保留关键信息

L4 并发(s08)
非阻塞执行。后台线程和通知总线实现并行工作。
s08 Background Tasks(198 行)
有些操作很慢,Agent 不能干等着。
核心思想:后台线程 + 通知。后台运行慢操作,Agent 继续思考下一步。

L5 协作(s09-s12)
多 Agent 协作。团队、消息传递和能独立思考的自主队友。
s09 Agent Teams(348 行)
一个 Agent 干不完怎么办?
核心思想:持久队友 + 异步邮箱。
什么是持久队友(Persistent Teammates)?它们是长期存活、有身份意识的 Agent,通过基于文件的邮箱(JSONL 格式)异步通信,能够处理跨越单个执行周期的复杂任务委托。
s10 Team Protocols(419 行)
多个 Agent 怎么协商?
核心思想:共享通信规则。一套请求-响应模式驱动所有团队协商。
s11 Autonomous Agents(499 行)
每次都要主 Agent 分配任务太累。
核心思想:扫描看板,认领任务。队友自己扫描任务板并认领任务,无需主 Agent 逐个分配。
s12 Worktree + Task Isolation(694 行)
多个 Agent 在同一目录干活会打架。
核心思想:按目录隔离。每个 Agent 在自己的目录工作;任务管理目标,工作树管理目录,通过 ID 绑定。


总结
为什么推荐这个网站?
-
渐进式学习:从 84 行到 694 行,每一步都清晰可见。
-
问题驱动:先戳痛点再给解药,让你明白为什么需要这个机制。
-
可视化强:任务看板、进度条、状态流转,抽象概念具象化。
-
代码透明:每课改动列得明明白白,拒绝黑箱。
-
即刻上手:命令和测试用例直接给,看完就能跑。
-
原理通用:Python 示例但思想语言无关,Java/Go/TS 都能复刻。
学完这 12 课,你能理解 Claude Code 的设计思路,用任何语言自己动手写一个 AI 编程 Agent。
Spring Boot + LangChain4j 写 Java 版,或者 Go 写一个轻量版,核心模式都是一样的。
建议搭配 Guide 写的这几篇文章,对上面涉及到的很多概念有更详细的解读:
再推荐一个开源大模型项目: 《SpringAI 智能面试平台+RAG 知识库》 。

地址: https://learn.shareai.run/zh/ 。
最后
从0到1!大模型(LLM)最全学习路线图,建议收藏!
想入门大模型(LLM)却不知道从哪开始? 我根据最新的技术栈和我自己的经历&理解,帮大家整理了一份LLM学习路线图,涵盖从理论基础到落地应用的全流程!拒绝焦虑,按图索骥~~
因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取