










这是一个非常有意思的问题,因为它实际上涉及到 AI Agent 工具的工程哲学。
简单来说:
而且有趣的是,OpenAI 和 Anthropic 实际上走过了相反的路径:
| 产品 | 初始语言 | 当前语言 |
|---|---|---|
| Claude Code | TypeScript | 仍然是 TypeScript |
| Codex CLI | TypeScript | 后来重写为 Rust |
这并不是猜测,而是 OpenAI 官方明确公开过的。 (OpenAI)
Anthropic 没有专门写过《为什么选择 TypeScript》的博客,但从官方文档和泄露出来的大量源码可以推断出其设计目标。 (Claude API Docs)
Claude Code 的安装方式:
npm install -g @anthropic-ai/claude-code
要求:
Node.js 18+
从工程角度看,这意味着 Anthropic 把 Claude Code 当成:
一个大型 Node.js 应用,而不是系统软件。
它有几个明显优势:
Claude Code 团队本身大量使用:
TypeScript 对 AI Agent 特别友好:
Tool
Action
Permission
Message
Session
Context
这些都是结构化对象。
TypeScript 的类型系统已经足够表达:
interface ToolCall {
name: string;
args: object;
}
开发效率远高于 Rust。
Claude Code 是 MCP(Model Context Protocol)最积极的推动者之一。
MCP Server 大量是:
实现的。
TypeScript 做:
spawn()
stdio
json-rpc
非常方便。
Claude Code 的耗时主要在:
Claude API
网络请求
工具调用
文件系统
而不是:
CPU计算
内存拷贝
线程调度
因此:
TypeScript 慢一点
≈
无关紧要
对于 Agent 产品来说,
95% 时间都在等待模型返回结果。
Claude Code 几乎每周都有新能力上线:
这种高频迭代更符合:
Move fast
而不是:
Optimize everything
很多人不知道这一点。
2025 年 OpenAI 刚开源 Codex CLI 时:
TypeScript
Node.js
是主要实现语言。 (OpenAI Help Center)
后来 OpenAI 进行了重写。
官方工程师 Michael Bolin 在《Unrolling the Codex agent loop》中提到:
如果想了解更细节的设计决策,可以查看 GitHub Issues 和 PR。 (OpenAI)
而社区整理出的 OpenAI 官方讨论中,给出了重写 Rust 的主要原因。 (Reddit)
这是目前能找到最接近官方解释的总结。
官方讨论中最常提到的一点:
Node v22+
是额外依赖。
用户安装链路变成:
安装 Node
↓
安装 Codex
企业环境经常不喜欢这样。
Rust 可以做到:
一个二进制文件
直接运行。
(Reddit)
Codex 的安全模型很重。
需要:
而 OpenAI 的 Linux Sandbox 组件本来就已经是 Rust。 (Reddit)
于是出现:
CLI = TypeScript
Sandbox = Rust
维护成本较高。
统一到 Rust 更合理。
Agent 往往会:
扫描仓库
分析文件
维护上下文
运行工具
大型项目可能:
10万+
100万+ LOC
Rust:
无 GC
更少内存
更快启动
对于 CLI 工具有优势。
Rust 的价值不仅是性能。
更重要的是:
Memory Safety
Agent CLI 需要执行:
rm
git
npm
docker
这些都是高权限操作。
Rust 更符合 OpenAI 对长期基础设施的定位。
OpenAI 提到正在构建:
Wire Protocol
允许:
等多种扩展。 (Reddit)
所以 Codex CLI 的目标已经不是:
一个 Node 应用
而是:
一个 Agent Runtime
这就更接近:
这类基础设施软件。
如果把它们放在一起看,就会发现非常明显的风格差异:
| 维度 | Claude Code | Codex |
|---|---|---|
| 核心语言 | TypeScript | Rust |
| 优先级 | 产品迭代 | 基础设施 |
| 安装方式 | npm | 原生二进制 |
| 生态 | Node/MCP | 多语言 Runtime |
| 工程哲学 | Move Fast | Systems Engineering |
| 典型用户 | AI-first 开发者 | 工程团队/企业 |
Claude Code 更像:
Cursor 的终端版
而 Codex 越来越像:
Docker + AI Agent
我认为真正的决策依据其实不是 TypeScript 和 Rust 本身。
而是两家公司对 Agent 的定位不同:
认为 Agent 是:
一个不断进化的产品
所以:
优化开发速度
>
优化运行速度
选择 TypeScript 很自然。
越来越把 Codex 当成:
Agent Operating System
或者:
AI Runtime
这种东西最终会变成:
长期维护
跨平台
高安全
低资源占用
的基础设施。
于是 Rust 的优势开始压倒 TypeScript。
从结果来看,OpenAI 的路线甚至可以总结为:
第一阶段用 TypeScript 验证产品;第二阶段用 Rust 固化基础设施。
而 Anthropic 目前仍处于高速创新阶段,因此继续坚持 TypeScript。未来如果 Claude Code 的规模继续扩大,也不能排除像 Codex 一样逐步把底层核心模块迁移到 Rust 的可能性。 (Codex Knowledge Base)
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。