跳到主要内容

技术栈

Claude Code 采用了一套现代化且高性能的技术栈,以下逐一剖析各技术选型的原因与作用。

运行时:Bun

选择 Bun 而非 Node.js 作为运行时,核心优势在于:

  • 启动速度快 — Bun 的冷启动时间远低于 Node.js,对 CLI 工具至关重要
  • 内置 TypeScript 支持 — 无需 ts-node 或预编译
  • 内置打包器 — 通过 bun:bundle 实现编译时特性标记
  • 兼容 Node.js API — 可以无缝使用 npm 生态

语言:TypeScript (Strict Mode)

全量使用 TypeScript 严格模式,确保类型安全:

// 工具定义的类型约束示例
type ToolInput = z.infer<typeof toolInputSchema>;

interface ToolResult {
output: string;
isError?: boolean;
}

终端 UI:React + Ink

Ink 是 React 的终端渲染器,让 Claude Code 可以用 React 组件模型构建复杂的终端 UI:

// 使用 JSX 构建终端界面
<Box flexDirection="column">
<Text bold color="green">Claude Code</Text>
<Box borderStyle="round" padding={1}>
<Text>{response}</Text>
</Box>
</Box>

为什么选择 Ink?

  • 组件化 — 144 个组件组成了完整的 UI 库
  • Hook 驱动 — 104 个 React Hook 管理状态和副作用
  • 声明式布局 — Flexbox 布局模型适配终端
  • 主题系统 — 支持自定义主题和样式
  • 热更新 — 开发体验接近 Web 前端

CLI 框架:Commander.js

Commander.js 用于解析 CLI 参数和子命令:

# Commander.js 处理的命令行参数
claude --model opus --verbose --resume session-id
claude "fix the bug in auth.ts"

Schema 校验:Zod v4

使用 Zod v4 进行运行时类型校验,主要用于:

  • 工具输入校验 — 确保 LLM 传入的工具参数合法
  • 配置校验 — 验证用户配置文件格式
  • API 响应校验 — 校验外部 API 返回数据
const bashToolInput = z.object({
command: z.string().describe("The command to execute"),
timeout: z.number().optional(),
});

代码搜索:ripgrep

内置 ripgrep (rg) 进行高性能代码搜索,支持:

  • 正则表达式搜索
  • 文件类型过滤
  • Glob 模式匹配
  • 多种输出模式(内容、文件名、计数)

协议

MCP (Model Context Protocol)

MCP 是 Anthropic 推出的开放协议,用于连接 AI 模型与外部工具和数据源:

  • 动态工具注册
  • 资源管理
  • 多服务器并发
  • 生命周期管理

LSP (Language Server Protocol)

集成 LSP 实现代码智能分析:

  • 语义搜索
  • 符号查找
  • 代码补全
  • 诊断信息

API 客户端:Anthropic SDK

使用官方 Anthropic SDK 与 Claude API 通信:

  • 流式消息传递
  • 工具使用(Tool Use)
  • 多模态输入(图片、PDF)
  • Token 计数与成本追踪

遥测:OpenTelemetry + gRPC

可选的遥测系统用于诊断和性能监控:

  • OpenTelemetry 标准化追踪
  • gRPC 高效数据传输
  • 本地优先,可选上报

特性管理:GrowthBook

通过 GrowthBook 实现 A/B 测试和特性管理:

  • 渐进式功能发布
  • 实验性功能开关
  • 用户分群配置

认证

方式用途
OAuth 2.0第三方服务授权
JWTIDE 桥接认证
macOS Keychain本地密钥存储
API KeyAnthropic API 认证

完整技术栈表

类别技术
运行时Bun
语言TypeScript (strict)
终端 UIReact + Ink
CLI 框架Commander.js
Schema 校验Zod v4
代码搜索ripgrep
AI 协议MCP, LSP
API 客户端Anthropic SDK
遥测OpenTelemetry + gRPC
特性管理GrowthBook
认证OAuth 2.0, JWT, Keychain