开发与工程 coding-agenttypescriptpythontutorialeducationagent-loopcontext-compression

Claude Code 从零实现

用约5000行代码从零手写Claude Code核心,13章分步教程带你理解Coding Agent的运作原理。

FollowAgents 评估 · FARS-2.1
谨慎使用
60/ 100 五分制 3.0 / 5
1 2 3 4 5 6
1信任安全14 / 29 · 2.4/5

证据显示有权限模式(5种模式+声明式规则+危险命令检测),但未提供最小权限原则的详细说明;有用户确认机制(--dont-ask、--accept-edits等),但未明确所有危险操作都需确认;数据流透明度不足,未说明API密钥和对话数据的流向;敏感数据处理未明确;依赖安全未审计;外部影响有控制(预算限制、轮次限制),但未说明回滚机制;来源归属有贡献者列表和声明,但未验证。

2可靠稳定9 / 14 · 3.2/5

自一致性较好,README与代码结构一致,有测试覆盖;依赖可用性有package.json和Python依赖说明,但未验证;失败消息有错误恢复机制(指数退避重试),但未详细说明。

3适用触发12 / 18 · 3.3/5

受众明确(学习Claude Code的开发者),场景清晰(分步教程);能力边界有对比表;触发精度有CLI参数和REPL命令;环境适配有跨平台说明。

4规范维护11 / 18 · 3.1/5

信息架构清晰(目录结构、架构图);安装说明详细;命名稳定(mini-claude等);有示例和FAQ(教程);已知限制有对比表;许可证MIT;版本号有package.json,但无CHANGELOG;维护责任有贡献者列表。

5有效结果9 / 13 · 3.5/5

输出可用性高(教程+可运行代码);边际价值高(学习项目);成本效益好(无需API key即可运行)。

6证据核验5 / 8 · 3.1/5

声明可追溯(教程与代码对应);跨来源佐证(TS和Python版本);事实与推断分离(声明不保证与Claude Code一致)。

证据充分度: 评估于 2026年8月9日 审查版本 0b4523608664
使用前请注意
  • 未验证依赖安全性,建议审计依赖。
  • 数据流透明度不足,需明确API密钥和对话数据的处理方式。
  • 回滚机制未说明,建议补充。
评估证据 [1][2][3][4][5][6]
查看完整评分方法 →

这个 Agent 能做什么,适合哪些场景?

这是一个学习型项目,用约5000行TypeScript或Python从零复现Claude Code的核心架构,而非完整替代品。项目包含13章分步教程,涵盖Agent Loop、13个工具(含并行执行与流式早期启动)、4层上下文压缩、语义记忆召回、技能系统、多Agent协作和MCP集成。每章代码均可独立运行,无需API key,通过本地mock模型驱动,『--diff』可查看章节间新增代码。项目提供TypeScript和Python两个功能一致的版本,支持Anthropic和OpenAI兼容API后端,并包含详细的架构对照和与Claude Code的功能对比。

该项目提供了一套从零构建Coding Agent的完整实现与教程。核心是Agent Loop:循环调用LLM、执行工具、处理结果直至任务完成。实现包括13个工具(如文件读写、Shell、WebFetch、ToolSearch等),支持只读工具并行执行和流式输出。包含4层上下文压缩、5种权限模式、4类记忆系统(语义召回+异步预取)、技能系统(inline/fork双模式)、Sub-Agent多Agent架构和MCP客户端。提供交互式REPL命令行界面,支持会话持久化、预算控制(--max-cost、--max-turns)、跨平台Shell自动检测和错误重试。每章配有可运行的最小实现,通过node steps/run.mjs <N>命令即可演示,无需真实API。

  1. 开发者想深入理解Claude Code的工作机制,但面对50万行源码无从下手,希望通过分步教程从零实现核心架构。
  2. 学习者希望动手实践Coding Agent,通过可运行的最小代码快速验证概念,而不需要配置API key。
  3. 技术讲师或博主需要一份结构清晰、可复现的教学材料,用于讲解Agent Loop、工具系统、上下文管理等主题。
  4. 开发者想在自己的项目中集成一个轻量级的Coding Agent核心,可作为参考实现或基础进行二次开发。
  5. 对多Agent协作、MCP集成等进阶功能感兴趣的研究者,参考该项目中的实现方式。

这个 Agent 有哪些优点和局限?

优点
  • 每章代码可运行且无需API key,通过本地mock模型驱动,便于学习和调试。
  • 提供TypeScript和Python两种版本,满足不同语言偏好。
  • 详细的架构对照表,清晰展示与Claude Code的功能差异。
局限
  • 教学性质,功能完整性和稳健性不如生产级Claude Code。
  • 默认模型claude-opus-4-6可能需配置有效API密钥,且未内置模型降级策略。
  • 上下文压缩等高级功能为简化实现,可能与原版行为存在差异。

如何安装或部署这个 Agent?

克隆仓库并安装依赖:git clone https://github.com/Windy3f3f3f3f/claude-code-from-scratch.git,然后cd claude-code-from-scratch,执行npm install && npm run build。Python版需要Python 3.11+,进入python目录,执行pip install -e .。配置API:设置环境变量ANTHROPIC_API_KEY(Anthropic格式)或OPENAI_API_KEYOPENAI_BASE_URL(OpenAI兼容格式)。

如何使用这个 Agent?

运行TypeScript版:npm start进入交互式REPL模式,支持--resume恢复会话、--yolo跳过安全确认、--plan计划模式、--max-cost费用限制等参数。Python版使用mini-claude-py命令进入REPL。会话中支持/clear/cost/compact/memory/skills等命令。运行教程章节:node steps/run.mjs <N>,其中N为章节号,可加--diff查看代码差异,--py切换到Python版,--live连接真实模型。

这个 Agent 与同类方案有什么区别?

与Claude Code相比,本项目定位为学习最小实现,工具数量仅13个(Claude Code有66+),代码量约5000行(Claude Code超50万),权限系统简化(5模式对比7层+AST),多Agent仅支持Sub-Agent(对比Coordinator+Swarm)。

常见问题

运行教程章节需要API key吗?
不需要,默认使用本地mock模型驱动,--live标志可连接真实API。
支持哪些模型后端?
支持Anthropic格式(ANTHROPIC_API_KEY)和OpenAI兼容格式(OPENAI_API_KEY/OPENAI_BASE_URL)。
项目是否与Anthropic官方相关?
无关,项目声明Claude Code是Anthropic商标,本项目仅是学习复现。
如何自定义模型?
通过环境变量MINI_CLAUDE_MODEL或命令行参数--model指定(命令行优先级更高)。
是否有Python版本?
有,功能与TypeScript版本一致,需Python 3.11+,安装后使用mini-claude-py命令。

对比同类 Agent

用同一套 FARS 评审,横向比较这个 Agent 所属的短名单。

相关 Agents