跳到主要内容

OpenAI Codex v0.137.0 发布 —— 企业账单看不清、TUI 快捷键不够用、Multi-Agent 一团乱麻,一次全修了

· 阅读需 6 分钟

换句话说,如果你是 DevTools 团队同时修四条产品的债,三个月后合一次发布,就是 Codex v0.137.0 的样子。

OpenAI Codex v0.137.0 封面

企业管理者终于能看到账单了

Codex 在 enterprise 场景里一直有个尴尬:团队买了企业版,但 Codex 里看不到信用额度还剩多少。管理员在 ChatGPT 后台配了,用户这边没反馈——每个月被限额弹窗打蒙了才发现。

#24812 解决了这个问题:状态栏直接显示月度信用额度和余额。如果你是企业管理员,不用切页面就能看见今天的预算还剩多少。

配套的还有一组 Cloud Config Bundle 改动(#24617/24619/24620/24622/#25963)——允许管理员推送统一配置到所有企业终端,包括 EDU 工作区。不是「把配置打包发下去」那种粗颗粒策略,是分层 compose 的结构:基础配置层 + 需求覆盖层 + 工作区特定层。排除了老方案里「改了一个人的配置文件,全公司跟着崩」的连锁错误。

远程控制从零到一

Codex 之前没有开箱的远程控制方案。如果你在服务器上跑 codex agent、在笔记本上操作,全靠 SSH 加 vim 终端,体验跟 agent 这个词毫不沾边。

#25675 和 #25785 引入了 app-server 层面的远程控制:pairing start(扫码配对)、controller grants 的列表和撤销。架构放在 app-server v2 的 RPC 层面,没有 hack CLI 的标准 I/O。

配合 #25850/25858/25862 的一组权限环境标识改动,远程操作时每个 approval 请求都携带了发起方的环境 ID——agent 在服务器上执行的代码是你笔记本上批准的,不是凭一个「allow all」token 糊弄。

TUI 多了些开发者最常摸的按键

终端 TUI 工具的一个尴尬在于:快捷键多数只有 Cmd/Ctrl + 字母,但很多开发者日常用 F 功能键做补全和切换。Codex 这次把 F13 到 F24 全部放进了 keymap(#25329)。对普通用户没用,但如果你用 HHKB 或者定制键盘的时候,这些键位刚好是缺的那一排。

另外两个小但明显的 TUI 改动:

  • 搜索菜单支持粘贴(#25400):之前 codex 的搜索选单(查找文件、切 session)不能粘贴路径,每次手动敲
  • 纯推理状态显示(#25504):model 只在 reasoning 时不占用标题栏的空间,只显示一个紧凑的 reasoning · 3.2s 标签

插件系统的工程债还了四笔

Codex 的 plugin system 功能不少,但用户经常遇到装了插件找不到、装重了、加载顺序乱的问题。这次一块修了:

  • codex plugin list --json(#25330):机器可读的输出格式。如果你想写个脚本统计已装插件,不用 parse colorized table 了
  • 远程 plugin catalog 缓存(#25457):每次打开 codex 都去 GitHub 拉插件列表很慢,现在走本地缓存,只爬 diff
  • 插件加载顺序持久化(#25491):重启 codex 后插件乱序的问题
  • 去重本地和远程安装(#25681):同一个插件既装了本地版又装了线上版,不再重复初始化

Multi-Agent v2 从半成到勉强成形

上一版(v0.136.0)启用了 Multi-Agent v2 的实验性开关,但模式切换要重启 session,metadata 也不透传。v0.137.0 补了三步:

  • 每个 thread 独立保存运行时选择(#25266/#25720/#25721/#25722):不是全局一个 agent mode,是每个对话保持自己的 agent 类型
  • followup_task 替代 assign_task(#25636):子 agent 返回后的后续任务不再是重新 assign,而是带上上下文的 followup
  • 默认隐藏 spawn agent metadata(#26114):之前每次 spawn agent 时终端会输出一长串 agent 元数据,现在默认折叠了

修复比新功能多

选了 6 条值得展开的:

取消已提交的 prompt 后恢复草稿(#25316)。如果在 codex 输入框里打了半天的 prompt,点提交还没看清输出就 cancel——之前草稿丢了。现在没输出之前 cancel,恢复到编辑状态,附件和协作模式都在。

压缩的本地 session 回放(#25087/#25814)。Codex 在 v0.135.0 之后开始压缩旧 session 以节省磁盘,但读取时没有解压,导致历史对话打不开。这次加了 materialize-on-append 逻辑,读压缩 rollout 和写新条目不再冲突。

Windows 稳定性三连。SQLite intrinsics 关掉(#25490)、线程 resumption 路径标准化(#25509)、sandbox setup 刷新(#25949)。三个问题文件都开在 issue 上,原因各不相同,但都是 Windows x64 平台特有的 C-runtime 差异导致的——codex 主力跑在 macOS/Linux 开发者机器上,Windows CI 覆盖率不足。

权限请求携带环境 ID(#25850/#25858/#25862)。以前 permissions approval 没有绑定执行环境。现在加了 environment identity,批准时知道这个请求来自哪个 workspace/project,不是笼统的「codex 想执行这个命令」。

plugin skills manifest 容错(#25717/#25782)。如果社区插件写了不合法的 skills 字段,以前 codex 直接崩溃,现在打印 warning 跳过,并做了 base name 校验防止路径遍历。

Python SDK 发布运行时 wheels(#25906/#25907)。上一条文章我说过 Python SDK 的发布管线和主 Rust 发布分离了——这次正式合上了,glibc 兼容性也做了约束。

一点疑惑

这个 release 的 PR 里面,有一条叫「Add build_unsigned_archive release mode」(#25435),然后紧跟着就被 revert 了(#25462),再然后又被用别的方式重新引入。release 发布流程在反复调试。这不是用户的 bug,是 Codex 团队自己还在和 CI 斗智斗勇——跟开源项目的常见困境一样,只是 OpenAI 的 CI 有更多 Azure 签名和 BuildBuddy 基础设施要踩。

升级

# macOS
brew install --cask codex

# Linux
curl -fsSL https://chatgpt.com/codex/install.sh | sh

# npm
npm install -g @openai/codex

# 或直接下载二进制
# https://github.com/openai/codex/releases/latest

完整更新日志:Codex v0.137.0 Release

📢 关注我,获取最新开源更新日志和开发者工具动态。

#OpenAI #Codex #AI编程 #企业版 #远程控制