v0.2.29 源码解析已更新

拆解 Claude Code 源码

深入探索 Anthropic 官方 CLI 工具的内部机制。从架构设计、Agent 循环到终端渲染,全面解析 1,902+ 个文件、514k+ 行 TypeScript 代码。

1,902+源文件
514k+代码行数
35核心模块
agent-loop.ts
1async function runAgentLoop(ctx: Context) {
2 while (true) {
3 // 1. 收集上下文与工具
4 const tools = await getAvailableTools(ctx);
5
6 // 2. 调用 Claude API
7 const response = await callClaude(ctx, tools);
8
9 // 3. 处理工具调用或返回结果
10 if (response.type === 'tool_calls') {
11 await executeTools(ctx, response.calls);
12 } else {
13 return response.text;
14 }
15 }
16}
Architecture

核心模块拆解

查看完整架构图
Deep Dives

深度解析文章

浏览所有文章

查询引擎:一次对话的完整生命周期

深入 QueryEngine.ts 和 query.ts,追踪一次对话从用户输入到最终响应的完整旅程,理解异步生成器驱动的流式查询循环

工具系统:AI 如何安全地与外部世界交互

深入 Claude Code 的 40+ 工具系统——从类型定义到并发执行到六层权限评估,理解 AI 如何安全地操作外部世界

Roadmap

解析计划

01
基础架构与启动
CLI 入口、配置加载、鉴权流程
02
Agent 核心循环
Prompt 构建、API 交互、工具调度
03
工具库实现
文件操作、Bash 执行、AST 分析
04
终端 UI 渲染
Ink 组件树、流式输出、交互处理