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 的启动流程是串行的:
- 01
加载配置 - 02
启动后端服务 - 03
初始化认证连接 - 04
发送网络请求获取账户信息 - 05
以上全部完成后,才显示输入框
用户只能干等。在此期间敲的键要么丢失,要么被延迟渲染。
优化后,流程变成了并行 + 懒加载:
- 01
一个临时输入框立即出现,用户可以直接打字 - 02
配置、服务、认证在后台并行加载 - 03
输入框准备好后,文本、光标位置、附件无缝迁移到正式聊天界面 - 04
启动期间敲的键不再丢失,而是回放到正式输入框
核心思想很简单:先让用户用上,后台慢慢准备。
这是架构级别的决策——微优化做不到这个量级。而且它只有 25 倍,因为以前是"几秒"等完才出输入框,现在是"零秒"出输入框——这个差距是架构设计带来的,不是语言或算法带来的。
● ● ●
三次迭代,越改越干净
这个优化不是一次性提交搞定的。Charlie Marsh 在 8 月 14 日到 8 月 20 日之间,连续迭代了三个版本:
v0.149.0 的改进尤其值得注意:原来的启动流程里,有一个多余的账户信息网络请求,每次启动都发一次,阻塞 UI 渲染。去掉之后,启动路径更干净了。
另一个细节是按键回放:以前启动时敲的键会被终端吃掉,用户以为没敲上,结果启动完成后突然冒出一串字符。现在这些键被缓冲下来,等输入框就绪后按顺序回放进去——用户感知到的体验是"我一直在打字,界面早就准备好了"。
● ● ●
一个更大的启示
Charlie Marsh 这个优化,放在更大的背景里看,其实挺有意思。
他之前在 Astral 做的事(uv、Ruff)一直是用 Rust 的极致性能碾压 Python 原版工具。但到了 Codex CLI,他面对的是一个终端 UI 启动慢的问题——跟语言无关,跟架构有关。
他没有选择"把某个模块用 Rust 重写",而是选择了重写生命周期。
这说明一件事:性能优化,首先是架构问题,其次是语言问题。
当架构(串行阻塞启动)决定了用户必须等好几秒才能看到输入框,这时候用 Rust 重写那个"加载配置"的函数,速度提升 10 倍,用户感知到的提升仍然是"从 3 秒变成 2.9 秒"——没啥区别。
但如果你把架构改成"先展示,再加载",用户感知到的提升就是"从 3 秒变成 0 秒"——25 倍就是这么来的。
"用户感知到的性能,比实际性能更重要。" 这不是什么新观点,但每次看到有人把它落地,都值得再写一遍。
● ● ●
参考来源
- 01
Charlie Marsh 的 X 推文:https://x.com/charliermarsh/status/2090924566923067490 - 02
OpenAI 收购 Astral 公告:https://openai.com/index/openai-to-acquire-astral/ - 03
Astral 官方博客:https://astral.sh/blog/openai - 04
GitHub Issue #9290:https://github.com/openai/codex/issues/9290 - 05
Codex CLI 发布页:https://github.com/openai/codex/releases - 06
俄语技术媒体报道(详细技术分析):https://vibecoding.ru/news/2026/08/22/codex-cli-instant-startup-25x
转载请注明:Charlie Marsh 加入 OpenAI 后,把 Codex CLI 启动快了 25 倍 | AI工具大全&导航