Charlie Marsh 加入 OpenAI 后,把 Codex CLI 启动快了 25 倍

AI资讯 2小时前 charles
710 0

2026 年 8 月 21 日,Charlie Marsh 在 X 上发了一条推文,附带一个终端录屏:

"在最新 Codex CLI 版本中,我重新设计了生命周期,让 codex 瞬间启动。现在启动速度大约快了 25 倍,且立即响应输入。"

视频里,敲完 codex 回车,一副 TUI 界面立刻弹出来,光标已经在输入框里闪了——没有任何等待,没有延迟,没有"正在加载……"。

这条推文获得了 70 万+ 次观看

而就在几个月前,同一款 CLI 还在被用户吐槽"启动慢到没法用"。

● ● ●

谁在改代码?

Charlie Marsh 不是一般的工程师。他是 Astral 的创始人,亲手打造了 Python 生态中最著名的几个工具:

  •  uv
     — 极速 Python 包管理器(89k GitHub ⭐)
  •  Ruff
     — 快得离谱的 Python linter 和 formatter(35k+ ⭐)
  •  ty
     — Python 类型安全工具

2026 年 3 月 19 日,OpenAI 宣布收购 Astral。Charlie Marsh 带着整个团队加入 Codex 团队。当时 Codex 已经有 200 万+ 周活用户,年初以来用户增长 3 倍、用量增长 5 倍。

收购公告里,Charlie Marsh 说了一句话:

"Astral 一直专注于构建改变开发者使用 Python 体验的工具。加入 Codex 后,我们会继续发展开源工具,推动软件开发的边界。"

但他没说的是——他加入后第一件事,不是开会、不是定战略,而是直接上手改 TUI 的启动代码

● ● ●

一个从 1 月拖到 8 月的 bug

2026 年 1 月 15 日,一位用户在 GitHub 上提交了 Issue #9290,标题是:

"Codex CLI 启动慢 / 严重输入延迟"

内容很详细:启动后要等很久 UI 才出现;键盘输入被接受但渲染延迟数百毫秒到数秒;延迟在启动完成后仍然持续,不会消失;macOS、Windows、Linux 上都有复现。用户尝试了所有方法——降级版本、禁用插件、换终端模拟器——全都无效。

这个 Issue 在几个月里不断收到新的 +1 回复。有人找到了一种缓解办法(禁用 paste-burst 启发式),有人建议换到 WSL 里跑(Windows 用户),但根本问题一直没有解决。

直到 Charlie Marsh 加入。

● ● ●

25 倍的秘密:重写生命周期

大多数人听说"启动快了 25 倍",第一反应是"换了个更快的算法"或者"用 Rust 重写了某段热点代码"。

但 Charlie Marsh 做的,跟这些完全无关。

他重写了 Codex CLI 的启动生命周期

优化前,Codex CLI 的启动流程是串行的:

  1. 01
    加载配置
  2. 02
    启动后端服务
  3. 03
    初始化认证连接
  4. 04
    发送网络请求获取账户信息
  5. 05
    以上全部完成后,才显示输入框

用户只能干等。在此期间敲的键要么丢失,要么被延迟渲染。

优化后,流程变成了并行 + 懒加载

  1. 01
    一个临时输入框立即出现,用户可以直接打字
  2. 02
    配置、服务、认证在后台并行加载
  3. 03
    输入框准备好后,文本、光标位置、附件无缝迁移到正式聊天界面
  4. 04
    启动期间敲的键不再丢失,而是回放到正式输入框

核心思想很简单:先让用户用上,后台慢慢准备。

这是架构级别的决策——微优化做不到这个量级。而且它只有 25 倍,因为以前是"几秒"等完才出输入框,现在是"零秒"出输入框——这个差距是架构设计带来的,不是语言或算法带来的。

● ● ●

三次迭代,越改越干净

这个优化不是一次性提交搞定的。Charlie Marsh 在 8 月 14 日到 8 月 20 日之间,连续迭代了三个版本:

版本
日期
改进
v0.148.0
8 月 18 日
首次生命周期重构 — 即时输入框 + 后台加载
v0.149.0
8 月 20 日
修复启动时按键被意外消费;移除启动时多余账户网络请求
v0.150.0-alpha
8 月 21 日起
持续迭代 alpha 版本

v0.149.0 的改进尤其值得注意:原来的启动流程里,有一个多余的账户信息网络请求,每次启动都发一次,阻塞 UI 渲染。去掉之后,启动路径更干净了。

另一个细节是按键回放:以前启动时敲的键会被终端吃掉,用户以为没敲上,结果启动完成后突然冒出一串字符。现在这些键被缓冲下来,等输入框就绪后按顺序回放进去——用户感知到的体验是"我一直在打字,界面早就准备好了"。

● ● ●

一个更大的启示

Charlie Marsh 这个优化,放在更大的背景里看,其实挺有意思。

他之前在 Astral 做的事(uv、Ruff)一直是用 Rust 的极致性能碾压 Python 原版工具。但到了 Codex CLI,他面对的是一个终端 UI 启动慢的问题——跟语言无关,跟架构有关。

他没有选择"把某个模块用 Rust 重写",而是选择了重写生命周期

这说明一件事:性能优化,首先是架构问题,其次是语言问题。

当架构(串行阻塞启动)决定了用户必须等好几秒才能看到输入框,这时候用 Rust 重写那个"加载配置"的函数,速度提升 10 倍,用户感知到的提升仍然是"从 3 秒变成 2.9 秒"——没啥区别。

但如果你把架构改成"先展示,再加载",用户感知到的提升就是"从 3 秒变成 0 秒"——25 倍就是这么来的。

"用户感知到的性能,比实际性能更重要。" 这不是什么新观点,但每次看到有人把它落地,都值得再写一遍。

● ● ●

参考来源

  1. 01
    Charlie Marsh 的 X 推文:https://x.com/charliermarsh/status/2090924566923067490
  2. 02
    OpenAI 收购 Astral 公告:https://openai.com/index/openai-to-acquire-astral/
  3. 03
    Astral 官方博客:https://astral.sh/blog/openai
  4. 04
    GitHub Issue #9290:https://github.com/openai/codex/issues/9290
  5. 05
    Codex CLI 发布页:https://github.com/openai/codex/releases
  6. 06
    俄语技术媒体报道(详细技术分析):https://vibecoding.ru/news/2026/08/22/codex-cli-instant-startup-25x

登录查看剩余 70% 内容

版权声明:charles 发表于 2026年8月24日 am11:46。
转载请注明:Charlie Marsh 加入 OpenAI 后,把 Codex CLI 启动快了 25 倍 | AI工具大全&导航

相关文章