今天出门拜访客户,就听闻 Anthropic 整了个大活。回到家了先用 Claude Code + Claude Opus 4.6 快速分析一把 :)
概况分析

思维导图
自顶向下,按功能内聚度划分。聚焦”是什么 / 怎么协作”,跳过基础概念。
mindmap
root((Claude Code<br/>CLI Agent))
入口与启动
main.tsx
Commander.js 解析参数
并行预取 (MDM / Keychain / GrowthBook)
Ink Renderer 启动
entrypoints/
初始化逻辑
bootstrap/
懒加载重模块 (OTel / gRPC)
setup.ts
核心循环 Agent Loop
QueryEngine.ts
Anthropic API 调用
流式响应处理
Tool-call 循环
Thinking mode
重试与限流
query/
tokenBudget
stopHooks
deps 注入
context.ts
系统/用户上下文采集
cost-tracker.ts
Token 计费
工具系统 tools/
文件与代码
FileRead / Write / Edit
Glob / Grep (ripgrep)
NotebookEdit
LSPTool
执行
BashTool / PowerShell
REPLTool
网络
WebFetch / WebSearch
Agent 编排
AgentTool 子代理
TeamCreate / Delete
SendMessage 跨代理通信
SkillTool
ToolSearchTool 延迟发现
任务与计划
TaskCreate/Get/List/Update/Output/Stop
EnterPlanMode / ExitPlanMode
EnterWorktree / ExitWorktree
TodoWriteTool
调度与远程
ScheduleCronTool
RemoteTriggerTool
SleepTool
MCP 集成
MCPTool
ListMcpResources / ReadMcpResource
McpAuthTool
交互
AskUserQuestionTool
SyntheticOutputTool
命令系统 commands/
会话管理
/resume /share /compact /context
Git 与代码
/commit /review /diff /pr_comments
配置与诊断
/config /doctor /theme /vim
认证与计费
/login /logout /cost
扩展能力
/mcp /skills /tasks /memory
跨设备
/desktop /mobile
服务层 services/
api/
Anthropic 客户端
File API
Bootstrap
mcp/
MCP server 连接管理
oauth/
OAuth 2.0 + Keychain
lsp/
Language Server 管理
compact/
上下文压缩
analytics/
GrowthBook 特性开关
extractMemories/
teamMemorySync/
remoteManagedSettings/
policyLimits/
tokenEstimation
UI 层 React + Ink
components/
~140 个 Ink 组件
screens/
Doctor / REPL / Resume
hooks/
toolPermission 权限钩子
ink/
Renderer 包装
outputStyles/
keybindings/ + vim/
扩展子系统
bridge/
IDE (VS Code / JetBrains)
bridgeMessaging 协议
JWT 认证
sessionRunner
coordinator/
多 Agent 协作模式
plugins/
插件加载器
skills/
可复用 workflow
memdir/
持久化记忆
tasks/ + state/
任务与状态机
remote/ + server/
远程会话与 server 模式
voice/
STT 与关键词
buddy/
Yardquill 彩蛋
底层基础
Tool.ts
Tool 接口与权限模型
commands.ts
命令注册表
tools.ts
工具注册表
Task.ts
schemas/
Zod v4 校验
migrations/
配置迁移
types/ + utils/
native-ts/
upstreamproxy/
构建与特性开关
Bun 运行时
bun:bundle feature\(\)
死代码消除
PROACTIVE / KAIROS
BRIDGE_MODE / DAEMON
VOICE_MODE / AGENT_TRIGGERS
关键设计要点
- Agent Loop 中心化:
QueryEngine.ts(~46K 行)为唯一的 LLM 调用枢纽,所有工具调用、思考、流式、重试逻辑都汇聚于此。 - 工具即模块:
tools/下每个工具是独立目录,自带 schema、权限、执行逻辑,便于注册表 (tools.ts) 动态装配。 - 权限三态:
hooks/toolPermission/在每次工具调用前介入,根据default / plan / bypass / auto模式决定是否需要用户确认。 - 延迟与并行启动:启动期 MDM、Keychain、GrowthBook 并行预取;OTel/gRPC 等大模块走动态
import()懒加载。 - 多 Agent 编排:
AgentTool+coordinator/+Team*Tool+SendMessageTool构成 sub-agent / swarm 体系。 - 跨进程能力:
bridge/(IDE)、remote/(远程会话)、server/(server 模式)为同一 Agent 内核提供不同宿主形态。 - 持久化分层:
memdir/(长期记忆)、tasks/(任务)、state/(运行态)、migrations/(配置升级)职责清晰分离。 - 构建期裁剪:
bun:bundle的feature()让PROACTIVE / VOICE_MODE / BRIDGE_MODE等实验特性在构建期完全消除,控制二进制体积。