Claude Code 源码学习 · 09 / 09
第九章:工程实践——值得学习的设计模式
第九章:工程实践——值得学习的设计模式 “好的代码不仅正确,还能让读它的人学到东西。” 9.1 快速路径分发(Fast Path Dispatch) 设计目标 CLI 工具对启动速度极其敏感。用户敲 claude --version 不应该等待 50 万行代码加载…
Quinn's Blog / since 2020
在这里记录技术、阅读,以及一些还没有答案的问题。
Claude Code 源码学习 · 09 / 09
第九章:工程实践——值得学习的设计模式 “好的代码不仅正确,还能让读它的人学到东西。” 9.1 快速路径分发(Fast Path Dispatch) 设计目标 CLI 工具对启动速度极其敏感。用户敲 claude --version 不应该等待 50 万行代码加载…
Claude Code 源码学习 · 08 / 09
第八章:扩展机制——Plugins、Skills与Multi-Agent “一个系统的生命力,取决于它允许别人在上面做什么。” 8.1 扩展机制全景 Claude Code 的扩展体系由三个递进层次组成: 插件(Plugins) :最重量级的扩展单元,可提供命令、…
Claude Code 源码学习 · 07 / 09
第七章:配置系统——灵活性的来源 “一个工具的边界,由它的配置系统决定。” 7.1 配置系统全景 Claude Code 的配置系统远比"读一个 JSON 文件"复杂。它是一个多层级、多来源、动态感知的配置框架,需要满足以下需求: 个人偏好、项目配置、企业策略三类…
Claude Code 源码学习 · 06 / 09
第六章:终端 UI——在命令行里做"前端" “命令行不是 UI 的终点,而是另一种 UI 的起点。” 6.1 反直觉的选型:在终端里用 React 当大多数人写 CLI 工具时,想到的是 console.log 、 process.stdout.write 、或者…
Claude Code 源码学习 · 05 / 09
第五章:权限与安全——信任的边界 “Agent 能做什么,不能做什么,由权限系统说了算。它是 Claude Code 最重要的安全护城河。” 5.1 为什么需要权限系统 Claude Code 是一个能够直接操作文件系统、执行 Shell 命令、访问网络的 AI …
Claude Code 源码学习 · 04 / 09
第四章:工具系统——Agent 的双手 Agent 循环是大脑,工具系统就是双手。LLM 只能"想",是工具让它能"做"。 本章深入 Tool.ts 、 tools.ts 、 toolExecution.ts 、 StreamingToolExecutor.ts …
Claude Code 源码学习 · 03 / 09
第三章:Agent 循环——大脑如何思考与行动 这是整个 Claude Code 项目 最核心 的部分。理解了 Agent 循环,就理解了 Coding Agent 的本质。 本章深入 query.ts 的 1729 行代码,拆解"思考→行动→观察"循环的每一个环…
Claude Code 源码学习 · 02 / 09
第二章:启动流程——从敲下命令到界面就绪 当用户在终端敲下 claude 并回车,到看到交互式提示符,中间经历了什么? 本章拆解 Claude Code 的完整启动链路,揭示其中蕴含的 性能优化 和 工程设计 思想。 目录 2.1 启动全景:8 个阶段 2.2 P…
Claude Code 源码学习 · 01 / 09
第一章:项目全景——目录结构与模块划分 本章从宏观视角俯瞰 Claude Code 项目的整体架构,帮助读者建立对 1900+ 文件、50 万行代码的"心智地图"。 同时预览本系列重点关注的三个方向:Agent 循环、斜杠命令(/resume、/clear、/co…
AI应用
Claude Code 源码学习指南 面向不熟悉 TypeScript 的开发者,聚焦架构设计与工程思想。 本文基于对 claude-code/src/ 目录的完整分析整理。 目录 前言:为什么用 TypeScript 开发 CLI 工具? 第一章:项目全景——目…