Skip to content

核心引擎概览

核心引擎层是 Claude Code 最关键的中枢,由 src/ 根目录下的多个核心文件构成,负责工具抽象、AI 查询循环、命令路由、状态管理、权限安全和提示词构建。

核心文件清单

文件行数核心职责
Tool.ts~792工具基础接口定义(~55 成员)
tools.ts~388工具注册表、工具池构建
QueryEngine.ts~1000+查询引擎类,会话生命周期管理
query.ts~1200+queryLoop — 核心查询循环
commands.ts~754~73 个基础命令导入、路由、过滤
context.ts~300系统上下文构建(Git + CLAUDE.md)
history.ts~200历史记录异步读写
cost-tracker.ts~150实时成本追踪
costHook.ts~100成本相关 React Hook
setup.ts~200首次运行引导
main.tsx~1300Commander.js + 启动逻辑
Task.ts~100任务接口定义
tasks.ts~200任务注册/管理
ink.ts~50Ink 引擎导出桥接
projectOnboardingState.ts~80项目首次使用状态

核心模块交互图

                    ┌──────────────┐
                    │  commands.ts │ ← 70+ 斜杠命令
                    │  命令路由器   │
                    └───────┬──────┘

         ┌──────────────────▼──────────────────┐
         │          QueryEngine.ts              │
         │  submitMessage() → 异步生成器        │
         │  管理: messages, usage, fileState    │
         └──────────────────┬──────────────────┘

         ┌──────────────────▼──────────────────┐
         │            query.ts                  │
         │  queryLoop() — 12 步无限循环         │
         │  预算 → 压缩 → API → 工具 → 恢复    │
         └──┬───────────────┬──────────────┬───┘
            │               │              │
     ┌──────▼──────┐ ┌──────▼──────┐ ┌─────▼──────┐
     │   Tool.ts   │ │ context.ts  │ │ history.ts │
     │  工具接口   │ │ 上下文构建  │ │ 历史记录   │
     └──────┬──────┘ └─────────────┘ └────────────┘

     ┌──────▼──────┐
     │  tools.ts   │
     │  工具注册表  │ ← 23 直接导入 + 11 懒加载 + feature-gated
     └─────────────┘

本章内容导航

文档核心内容
工具系统Tool 接口 ~55 成员详解、ToolUseContext、buildTool 工厂、工具注册与过滤
查询引擎QueryEngine 类、queryLoop 管线、Token 预算、错误恢复
命令路由3 种命令类型、~73 命令导入、过滤系统、技能集成
状态管理AppState 80+ 字段、Store 模式、DeepImmutable、SpeculationState
上下文系统Git 上下文、CLAUDE.md 记忆、系统提示词组合
历史记录异步生成器读取、粘贴内容管理、去重
成本追踪实时成本计算、多模型定价、会话累计
权限安全7 种权限模式、权限规则、YOLO 分类器
提示词系统~1000 行系统提示词、静态/动态分区、Section 注册