news 2026/10/2 7:00:55

5000行手写一个Claude Code:claude-code-from-scratch项目全景解读(15章Coding Agent教程路线图)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
5000行手写一个Claude Code:claude-code-from-scratch项目全景解读(15章Coding Agent教程路线图)

5000行手写一个Claude Code:claude-code-from-scratch项目全景解读(15章Coding Agent教程路线图)

【免费下载链接】claude-code-from-scratchBuild your own Claude Code from scratch. 🔍 Claude Code 开源了 50 万行代码,读不动?用 ~5000 行 TypeScript / Python 从零复现核心架构,11 章分步教程带你理解 coding agent 精髓项目地址: https://gitcode.com/gh_mirrors/cl/claude-code-from-scratch

Claude Code 的源码有 50 万行,读不动?claude-code-from-scratch 是一个从零复现 Claude Code 核心架构的开源学习项目:用约 5000 行 TypeScript / Python 代码,配合 15 章分步教程,带你亲手写出一个 Coding Agent——Agent 循环、13 个工具、权限系统、记忆召回、多 Agent、MCP 集成全部覆盖。本文带你走一遍这张教程路线图,看看它怎么把"几十万行"拆成"几千行"。

🚀 项目是什么:用一台卡丁车理解汽车

先说清楚这个项目不是 demo,而是一份分步教程:

真实的 Claude Code 把核心循环包在 50 万行 TypeScript 里——66 个工具、React/Ink 终端界面、MCP 协议、OAuth、多代理系统。直接翻这些代码,很容易淹死在边界情况里,读完还是说不清那个循环长什么样。

claude-code-from-scratch 反过来做:把那个循环单独拎出来,用最小代码重造一遍,一块一块搭。起点是十几行只会聊天的循环,每一章补一块能力,每一块都能单独跑起来。就像用一台卡丁车理解汽车——引擎、方向盘、刹车都在,空调音响先不装,但每一颗关键的螺丝都拧得清清楚楚。

关键数字说明
~5000 行Python 版代码量(TypeScript 版 ~5500 行),互为镜像
15 章从「只会聊天」一路造到「自主干活」
13 个工具文件读写编辑、Shell、搜索、WebFetch、技能、子 Agent、Plan Mode
0 个 API Key每章代码用本地 mock 模型就能跑,改一行立刻知道对不对
MIT 协议学习项目,与 Anthropic 无关联,仅参照公开可观察行为

核心一句话:传统程序里下一步做什么由程序员用if/else写死;Coding Agent 反了过来——下一步由模型决定,代码只负责把循环转起来、把工具递过去。这一个反转,就是 coding agent 和普通聊天机器人的全部区别。

📖 15 章教程路线图:三个 Phase 逐级点亮能力

完整章节列表见 docs/00-introduction.md。教程分三个阶段:

Phase 1:构建一个可用的 Coding Agent(第 1–7 章)

章节这一章之后,agent 能……对应源码
1. Agent Loop调用工具、把结果喂回自己,不再只是聊天src/agent.ts
2. 工具系统读写文件、跑 Shell、搜代码,真正动手改项目src/tools.ts
3. System Prompt知道自己在什么系统、什么目录、什么 Git 状态下干活src/prompt.ts
4. CLI 与会话有交互命令行,对话能存盘、--resume接着聊src/cli.ts
5. 流式输出一边生成一边显示,还能接 OpenAI 兼容模型src/agent.ts
6. 权限与安全危险操作先问一句,deny 规则拦得住越界src/tools.ts
7. 上下文管理对话太长自动 4 层压缩,跑几十轮不撑爆窗口src/agent.ts

Phase 2:进阶能力(第 8–12 章)

章节这一章之后,agent 能……对应源码
8. 记忆系统跨会话记住偏好和项目事实,用得上时自己捞出来src/memory.ts
9. 技能系统常用操作打包成可复用技能,/commit随用随调src/skills.ts
10. Plan Mode先只读地拿出方案,批准了再动手src/agent.ts
11. 多 Agent任务太大就 fork 一个子 Agent 去啃,啃完带回结果src/subagent.ts
12. MCP 集成接上外部工具服务器,工具集能往外扩src/mcp.ts

Phase 3:验收与自主运行(第 13–15 章)

章节这一章之后,agent 能……对应源码
13. 架构对比和真实 Claude Code 逐项对照,看清最小实现差在哪全局
14. 功能测试22 个手动场景 + 自动化集成测试逐项验收test/
15. 自治与续跑/goal追目标、/loop定时重投、Auto Mode 分类器逐动作裁决src/autonomy.ts

🏗️ 核心架构全景:一个主循环 + 12 个模块

搭到最后,各部件是这样接的:用户输入 → CLI 交给 Agent Loop → 模型决定调哪个工具 → 代码执行完把结果喂回去 → 循环到模型说「做完了」。

agent.ts是整台发动机的引擎(约 2169 行),组装消息、调 API、编排工具、压缩上下文、控制预算全在这儿;其余 11 个文件各管一摊,规模都不大:

模块行数管什么
agent.ts~2169Agent 主循环:流式执行、4 层压缩、预算、Plan Mode、自治三件套
tools.ts~88413 个工具 + 权限门禁 + mtime 防护 + 延迟加载
autonomy.ts~464/goal评估器、/loop调度、Auto Mode 分类器
cli.ts~416CLI 入口、参数解析、REPL 交互
memory.ts~3924 类型记忆 + 语义召回 + 异步预取
其余 7 个模块41–277mcp.ts、prompt.ts、ui.ts、subagent.ts、skills.ts、session.ts、frontmatter.ts

Python 版是同一套结构的完整镜像,放在 python/mini_claude/ 包里,文件一一对应(agent.py、tools.py……),学哪门语言都能跟。

⚡ 最大亮点:每一章的代码都能跑,且不用 API Key

读代码最怕读不懂又跑不起来。这个项目的解法很巧妙——steps/ 目录下为每个代码章节都留了一份能单独运行的最小实现快照:

node steps/run.mjs --list # 列出所有能跑的章节 node steps/run.mjs 7 # 跑第 7 章:对话变长后自动把旧消息压成摘要 node steps/run.mjs 7 --diff # 只看这一章比上一章多写的那几行 node steps/run.mjs 7 --py # 换成 Python 版

输出是本地 mock 模型真跑出来的(不联网、不用 key);想拿自己的 prompt 连真实模型,加个--live就行。而且每章的代码、文档里的代码块、跑出来的输出,全部从 steps/canonical/ 同一份源码生成——不会出现"文档说的和代码对不上"。

🚀 快速开始:五分钟跑起一个迷你 Claude Code

git clone https://gitcode.com/gh_mirrors/cl/claude-code-from-scratch cd claude-code-from-scratch npm install && npm run build export ANTHROPIC_API_KEY="sk-ant-xxx" # 也支持 OpenAI 兼容格式 npm start # 交互式 REPL 模式

Python 版则是在 python/ 目录执行pip install -e .后运行mini-claude-py。启动后可以试一句read src/agent.ts and explain the main loop,看它自己读文件、自己讲。

命令行还有丰富的开关:--yolo跳过确认、--plan只分析不修改、--auto分类器自动裁决权限、--max-cost 0.50 --max-turns 20预算控制——每个开关背后都对应教程里的一章。

⚖️ 和真正的 Claude Code 差在哪?

对比表见 docs/13-whats-next.md 与 README.md。简化版:

维度Claude Codemini-claude
代码量50 万+ 行~5500 行(TS)/ ~5000 行(Python)
工具数量66+ 内置工具13 个工具
权限系统7 层 + AST 分析5 种模式 + 声明式规则 + 正则检测
多 AgentSub-Agent + Coordinator + SwarmSub-Agent fork-return

项目刻意没实现 Hooks 钩子系统、Coordinator/Swarm 模式和 LSP 集成——第 13 章解释了每一项"为什么不做":它们更多是 prompt engineering 或协议工程问题,对理解 agent 原理帮助不大。读完 15 章,你手里拿的不只是几千行代码,而是一张能直接对照生产级实现的架构地图。

💬 加入社区,一起从零造轮子

项目由 Windy3f3f3f3f 等人贡献(MIT 协议),配套 QQ 交流群「AI Agent 工坊」(群号 1090526244),适合边学边交流。如果你正被"Coding Agent 到底怎么工作"这个问题困扰,这张 15 章的路线图,可能是目前成本最低的一条路:每章几百行,跑起来只需要一条命令。

【免费下载链接】claude-code-from-scratchBuild your own Claude Code from scratch. 🔍 Claude Code 开源了 50 万行代码,读不动?用 ~5000 行 TypeScript / Python 从零复现核心架构,11 章分步教程带你理解 coding agent 精髓项目地址: https://gitcode.com/gh_mirrors/cl/claude-code-from-scratch

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/10/2 7:00:34

江苏中安质环认证服务:ISO体系认证办理流程透明,助力企业

随着国内市场经济体系不断完善,企业参与国内招投标、拓展海外市场的门槛逐步提升,ISO等管理体系认证已经成为企业证明自身管理能力、合规水平的核心凭证,也是企业提升市场竞争力、满足采购方资质要求的必备条件。根据中国认证认可协会相关数据…

作者头像 李华
网站建设 2026/10/2 7:00:10

2026年单北斗GNSS变形监测系统推荐榜单,解锁GNSS位移监测新高度

2026年,单北斗GNSS变形监测系统取得了显著进展,广泛应用于工程监测和地质灾害防治。此类系统通过精确的GNSS定位技术、能够实现高精度的位移监测变形监测需求。单北斗变形监测应用在桥梁、隧道等重大工程中尤为重要稳定。另外,各厂家提供的单…

作者头像 李华
网站建设 2026/10/2 6:59:52

superpowers实战:用流程约束让AI编程助手在Java/Maven项目中稳定发挥

在AI编程助手刚火起来那阵子,我一度以为自己拿到了某种"superpowers"——只要把需求往对话框里一贴,代码就出来了。但用了一周之后,现实很快教做人:小项目、单文件、一两百行的小函数,AI确实能打&#xff1b…

作者头像 李华
网站建设 2026/10/2 6:58:59

HarmonyOS 7 Spatial Recon + Camera Kit:3DGS 采集帧的时间戳漂移校正与坏姿态隔离【鸿蒙心迹】

这不是一篇“把相机帧塞进重建接口”的接入说明。它记录的是一次更隐蔽的失败:画面看起来连续、帧率也正常,模型却在桌角产生双层边缘。最后定位到的并非重建参数,而是图像时间戳与姿态时间轴逐渐分家。 一、模型没有报错,桌角却长…

作者头像 李华
网站建设 2026/10/2 6:57:23

Cogentic:面向自动定理发现的多智能体编排框架

Cogentic:面向自动定理发现的多智能体编排框架 arXiv编号:arXiv:2609.40324v1 [cs.AI] 摘要 本文提出Cogentic,一套用于开放研究问题自动定理发现的多智能体执行框架。前沿大模型可以单次生成高质量数学思路,但对于开放研究问题&a…

作者头像 李华