## 新功能
- TUI 控件现在支持 F13-F24 键绑定、可搜索菜单中的粘贴功能,以及紧凑的仅推理状态/标题项(#25329, #25400, #25504)。
- 企业/管理流程现可显示月度信用额度,并能应用云管理配置包,包括 EDU 工作区(#24812, #24617, #24619, #24620, #24622, #25963)。
- 远程控制客户端可通过应用服务器 v2 RPC 启动配对、列出或撤销控制器授权(#25675, #25785)。
- 插件工作流新增机器可读的 `codex plugin list --json` 输出,并缓存远程目录建议(#25330, #25457)。
- 托管 Web 和图像工具在更多代码模式流程中可用,独立 Web 搜索可并行运行(#25176, #25702, #25890, #25923)。
- 多智能体 v2 保留每个线程的运行时选择,并为生成的智能体提供更清晰的后续操作和元数据默认值(#25266, #25636, #25720, #25721, #25722, #25841, #26114)。
## 错误修复
- 在可见输出前取消已提交的提示,现可恢复草稿、附件和协作模式进行编辑(#25316)。
- 斜杠命令过滤和页脚快捷提示现根据当前 UI 状态重置或渲染(#25492, #25625)。
- 提高了 macOS 应用启动和 Windows SQLite 启动、线程恢复及沙箱设置刷新的平台可靠性(#25485, #25490, #25509, #25949)。
- 插件加载保留应用清单顺序,去重本地/远程策划安装,并将格式错误的 `skills` 字段视为警告(#25491, #25681, #25717, #25782)。
- 权限请求和审批现携带环境标识,托管的 MITM 代理将可读的 CA 包导出到子命令(#25850, #25858, #25862, #22668)。
- 本地会话历史在压缩回滚、重命名标题、无路径侧聊天重载以及高堆栈启动/配置重建时更安全(#25087, #25624, #25661, #25814, #25844, #25847)。
## 文档
- 新增应用服务器文档,并更新了月度信用额度、远程控制 RPC 和环境范围权限审批的生成模式(#24812, #25675, #25785, #25862)。
- 将仓库审查规则和贡献者约定移至 `AGENTS.md`,包括 Rust 测试模块布局和 Python 3 兼容性指南(#25682, #25690, #25738)。
## 杂项
- 根格式化和 Justfile 工作流更加完整且兼容 Windows(#24983, #25165, #25683)。
- Rust CI 和发布工作流使用 git CLI 进行 Cargo 获取,以避免间歇性的 libgit2/子模块故障(#25644, #25775)。
- Python SDK 发布现从 SDK 工作流发布运行时轮子,并固定到与 glibc 兼容的运行时包(#25906, #25907)。
- Bazel CI 的 BuildBuddy 包装器重新引入,采用 Windows 安全的进程处理和验证(#25915)。
- 共享提示、上下文片段和技能管道移至专用 crate/扩展路径,以减少 `codex-core` 耦合(#25151, #25953, #25959, #26106, #26122, #26167)。
## 更新日志
完整更新日志:https://github.com/openai/codex/compare/rust-v0.136.0...rust-v0.137.0
- #25329 feat(tui): 允许按键映射中使用 f24 功能键 @fcoury-oai
- #24617 添加配置包传输类型 @joeflorencio-openai
- #25435 添加 build_unsigned_archive 发布模式 @shijie-oai
- #24619 组合需求层 @joeflorencio-openai
- #24620 添加云管理配置层支持 @joeflorencio-openai
- #25462 回退“添加 build_unsigned_archive 发布模式” @shijie-oai
- #25113 在 Threads 上存储并暴露 parent_thread_id @owenlin0
- #25266 设置多智能体 v2 内部测试默认值 @jif-oai
- #25060 添加目标扩展的空闲延续 @jif-oai
- #25576 使用模板生成目标指导提示 @jif-oai
- #25577 从空闲回合注入中移除计划模式门控 @jif-oai
- #25096 添加目标扩展 GoalApi @jif-oai
- #25087 在追加前读取压缩回滚并物化 @jif-oai
- #25628 [codex] 修复压缩回滚固定装置 SessionMeta 初始化 @fcoury-oai
- #25316 feat(tui): 恢复无输出取消提示 @fcoury-oai
- #23763 在 codex exec 中保留自动审查批准策略 @won-openai
- #25400 允许在可搜索的选择菜单中粘贴 @charliemarsh-oai
- #25485 使用深度链接打开 macOS codex 应用路径 @etraut-openai
- #25492 过滤器更改时重置斜杠弹出选择 @etraut-openai
- #25504 添加仅推理状态表面项 @etraut-openai
- #25624 在协调过程中保留重命名的线程标题 @jif-oai
- #25089 压缩冷本地回滚 @jif-oai
- #25490 为 Windows x64 版本禁用 SQLite 内建函数 @etraut-openai
- #25603 [codex] 继承生成子监听器的原始事件 @vivi
- #25644 [codex] 对发布版 Cargo 获取使用 git CLI @shijie-oai
- #25655 nit: 删除 todo @jif-oai
- #25654 并行化冷回滚压缩 @jif-oai
- #25121 exec-server: 添加环境路径引用 @starr-openai
- #25636 [codex] 将多智能体 v2 的 assign_task 重命名为 followup_task @jif-oai
- #25491 保留插件应用清单顺序 @charlesgong-openai
- #24983 [codex] 使 justfile 配方兼容 Windows @iceweasel-oai
- #25151 [codex] 在 codex-prompts 中整合共享提示 @anp-oai
- #25659 限制重复回滚压缩运行 @jif-oai
- #25165 在 CI 中检查根 Python 脚本格式 @anp-oai
- #23767 [codex-rs] 自动审查模型覆盖 @won-openai
- #25149 exec-server: 规范化绑定的文件系统路径 @starr-openai
- #25669 修复:消除 zsh-fork 审批测试的不稳定性 @jif-oai
- #24979 feat: 门控统一 exec zsh fork 组合 @bolinfest
- #24980 refactor: 为 zsh fork 统一 exec 隐藏 shell 覆盖 @bolinfest
- #25679 添加回滚压缩计数器 @jif-oai
- #25682 [codex] 记录行外测试模块约定 @anp-oai
- #25680 添加回滚压缩直方图 @jif-oai
- #25689 [codex] 泛化延迟嵌套工具指导 @sayan-oai
- #25690 添加 Python 版本兼容性指南 @anp-oai
- #25681 修复:去重已安装的本地和远程策划插件 @xl-openai
- #25701 修复:将 McpServer 重命名为 TestAppServer @bolinfest
- #25702 [codex] 启用并行独立 Web 搜索调用 @sayan-oai
- #25705 修复 plugin_list 测试中过时的 TestAppServer 重命名 @bolinfest
- #25684 将工具搜索元数据移动到 ToolExecutor @jif-oai
- #25625 fix(tui): 澄清页脚快捷覆盖提示 @fcoury-oai
- #25649 [codex] 发布版本符号制品 @nornagon-openai
- #25661 拒绝无路径侧聊的目录回滚路径 @bolinfest
- #22668 将托管的 MITM CA 信任传递到子环境 @winston-openai
- #25712 app-server: 移除实验性的 persist_extended_history 布尔标志 @owenlin0
- #24621 将云需求 crate 移到云配置 @joeflorencio-openai
- #25717 处理无效的插件 skills 清单字段 @xli-oai
- #25675 feat(remote-control): 添加配对启动 @apanasenko-oai
- #25683 [codex] 添加全面的根格式化检查 @anp-oai
- #25738 将代码审查规则移到 AGENTS @pakrym-oai
- #24812 feat: 在状态中显示企业月度信用额度 @efrazer-oai
- #25330 [codex] 添加插件列表 JSON 输出 @xl-openai
- #25457 [codex] 缓存远程插件目录以提供建议 @xl-openai
- #25783 [codex] 将插件可发现逻辑移到 core-plugins @xl-openai
- #25782 [codex] 验证插件技能基础名称 @xl-openai
- #25814 feat: 重用压缩回滚搜索片段 @jif-oai
- #25720 添加多智能体运行时元数据类型 @jif-oai
- #25721 持久化多智能体运行时元数据 @jif-oai
- #25722 解析每线程多智能体运行时 @jif-oai
- #25841 session: 使启动预热与已解析的多智能体运行时对齐 @jif-oai
- #25840 修复:主分支错误 @jif-oai
- #25723 测试远程多智能体运行时选择器覆盖 @jif-oai
- #25724 在首次回合前测试运行时选择器 @jif-oai
- #25844 减少会话启动和配置重建中的堆栈压力 @jif-oai
- #25857 不稳定:保持插件测试 home 存活 @jif-oai
- #25847 在指定大小的堆栈上运行 Codex 异步主函数 @jif-oai
- #25775 [codex] 在 Rust 工作流中对 Cargo 获取使用 git CLI @anp-oai
- #25167 [app-server][core] 添加连接器级别的 Guardian 审查者覆盖 @zamoshchin-openai
- #25868 在 WebSocket 禁用时跳过启动预热 @jif-oai
- #25156 通过共享的 BuildBuddy 远程配置包装器路由 Bazel CI @anp-oai
- #25739 core: 从原始策略派生内建权限配置文件 @bolinfest
- #25909 [codex] 回退共享的 BuildBuddy Bazel 包装器 @anp-oai
- #25850 按环境键控请求权限授权 @jif-oai
- #25707 [codex-analytics] 在回合分析中追踪 CodexErr 详情 @rhan-oai
- #25858 为 request_permissions 添加 environmentId @jif-oai
- #25176 通过主机最终化 md 路由独立图像生成 @won-openai
- #25916 修复 Windows 发布 PDB 暂存 @shijie-oai
- #25862 传播权限审批环境 id @jif-oai
- #25907 [codex] 将 Python SDK 固定到 glibc 兼容运行时 @aibrahim-oai
- #24859 使用环境密钥进行 Azure 签名 @shijie-oai
- #25509 修复 Windows 运行线程恢复路径规范化 @etraut-openai
- #25135 在 Codex 回合事件中填充工作区类型 @knittel-openai
- #24622 将运行时切换到云配置包 @joeflorencio-openai
- #25938 修复:更新图像生成测试助手重命名 @joeflorencio-openai
- #25911 core: 停止向 Guardian 审查传递遗留 SandboxPolicy @bolinfest
- #25668 拆分云配置包服务模块 @joeflorencio-openai
- #25890 [codex] 在纯代码模式中保持托管工具可见 @aibrahim-oai
- #25867 添加远程请求权限集成覆盖 @jif-oai
- #25943 config: 移除死配置文件沙箱回退 @bolinfest
- #25948 回退"使用环境密钥进行 Azure 签名" @shijie-oai
- #25923 在代码模式中暴露独立图像生成 @won-openai
- #25906 [codex] 随 Python SDK 发布发布 Python 运行时轮子 @aibrahim-oai
- #25953 feat: 添加技能扩展支架 @jif-oai
- #25915 [codex] 修复 Windows BuildBuddy Bazel 包装器执行 @anp-oai
- #25926 config: 将隐式沙箱默认值表达为权限配置文件 @bolinfest
- #25959 feat: 添加扩展回合输入贡献者 @jif-oai
- #25963 允许 EDU 账户获取云配置包 @joeflorencio-openai
- #25785 feat(app-server): 添加远程控制客户端管理 RPC @apanasenko-oai
- #25988 回退:发布版本符号制品 @shijie-oai
- #26114 feat: 默认将 hide_spawn_agent_metadata 设为 true @jif-oai
- #26122 chore: 将上下文片段提取到专用 crate @jif-oai
- #26144 拒绝 MAv2 close_agent 自目标 @jif-oai
- #26106 skills: 从回合输入上下文解析每回合目录 @jif-oai
- #26155 修复:序列化目标进度核算 @jif-oai
- #26156 chore: 机械重命名 @jif-oai
- #26167 实现 v1 skills 扩展提示注入 @jif-oai
- #26176 修复:主分支 @jif-oai
- #25949 [codex] 恢复设置助手 UAC 清单 @iceweasel-oai
## New Features
- TUI controls now support F13-F24 keybindings, paste in searchable menus, and a compact reasoning-only status/title item (#25329, #25400, #25504).
- Enterprise/admin flows now show monthly credit limits and can apply cloud-managed config bundles, including EDU workspaces (#24812, #24617, #24619, #24620, #24622, #25963).
- Remote-control clients can start pairing and list or revoke controller grants through app-server v2 RPCs (#25675, #25785).
- Plugin workflows gained machine-readable `codex plugin list --json` output and cached remote catalog suggestions (#25330, #25457).
- Hosted web and image tools are available in more code-mode flows, with standalone web searches able to run in parallel (#25176, #25702, #25890, #25923).
- Multi-agent v2 keeps runtime choice with each thread and exposes cleaner follow-up and metadata defaults for spawned agents (#25266, #25636, #25720, #25721, #25722, #25841, #26114).
## Bug Fixes
- Cancelling a submitted prompt before visible output now restores the draft, attachments, and collaboration mode for editing (#25316).
- Slash-command filtering and footer shortcut hints now reset or render according to the current UI state (#25492, #25625).
- Platform reliability improved for macOS app launches and Windows SQLite startup, thread resume, and sandbox setup refreshes (#25485, #25490, #25509, #25949).
- Plugin loading preserves app manifest order, deduplicates local/remote curated installs, and treats malformed `skills` fields as warnings (#25491, #25681, #25717, #25782).
- Permission requests and approvals now carry environment identity, and managed MITM proxying exports readable CA bundles to child commands (#25850, #25858, #25862, #22668).
- Local session history is safer for compressed rollouts, renamed titles, pathless side-chat reloads, and stack-heavy startup/config rebuilds (#25087, #25624, #25661, #25814, #25844, #25847).
## Documentation
- Added app-server docs and generated schema updates for monthly credit limits, remote-control RPCs, and environment-scoped permission approvals (#24812, #25675, #25785, #25862).
- Moved repo review rules and contributor conventions into `AGENTS.md`, including Rust test-module layout and Python 3 compatibility guidance (#25682, #25690, #25738).
## Chores
- Root formatting and Justfile workflows are more complete and Windows-aware (#24983, #25165, #25683).
- Rust CI and release workflows use the git CLI for Cargo fetches to avoid intermittent libgit2/submodule failures (#25644, #25775).
- Python SDK releases now publish runtime wheels from the SDK workflow and pin to a glibc-compatible runtime package (#25906, #25907).
- Bazel CI’s BuildBuddy wrapper was reintroduced with Windows-safe process handling and validation (#25915).
- Shared prompts, context fragments, and skills plumbing moved into dedicated crates/extension paths to reduce `codex-core` coupling (#25151, #25953, #25959, #26106, #26122, #26167).
## Changelog
Full Changelog: https://github.com/openai/codex/compare/rust-v0.136.0...rust-v0.137.0
- #25329 feat(tui): allow function keys through f24 in keymaps @fcoury-oai
- #24617 Add config bundle transport types @joeflorencio-openai
- #25435 Add build_unsigned_archive release mode @shijie-oai
- #24619 Compose requirements layers @joeflorencio-openai
- #24620 Add cloud-managed config layer support @joeflorencio-openai
- #25462 Revert "Add build_unsigned_archive release mode" @shijie-oai
- #25113 store and expose parent_thread_id on Threads @owenlin0
- #25266 Set multi-agent v2 dogfood defaults @jif-oai
- #25060 Add goal extension idle continuation @jif-oai
- #25576 Use templates for goal steering prompts @jif-oai
- #25577 Remove Plan-mode gate from idle turn injection @jif-oai
- #25096 Add goal extension GoalApi @jif-oai
- #25087 Read compressed rollouts and materialize before append @jif-oai
- #25628 [codex] fix compressed rollout fixture SessionMeta initialization @fcoury-oai
- #25316 feat(tui): restore output-free cancelled prompts @fcoury-oai
- #23763 Preserve auto-review approval policy in codex exec @won-openai
- #25400 Allow paste in searchable selection menus @charliemarsh-oai
- #25485 Use deep links for macOS codex app paths @etraut-openai
- #25492 Reset slash popup selection when filter changes @etraut-openai
- #25504 Add reasoning-only status surface item @etraut-openai
- #25624 Preserve renamed thread titles during reconciliation @jif-oai
- #25089 Compress cold local rollouts @jif-oai
- #25490 Disable SQLite intrinsics for Windows x64 releases @etraut-openai
- #25603 [codex] Inherit raw events for spawned child listeners @vivi
- #25644 [codex] Use git CLI for release Cargo fetches @shijie-oai
- #25655 nit: drop todo @jif-oai
- #25654 Parallelize cold rollout compression @jif-oai
- #25121 exec-server: add environment path refs @starr-openai
- #25636 [codex] Rename multi-agent v2 assign_task to followup_task @jif-oai
- #25491 Preserve plugin app manifest order @charlesgong-openai
- #24983 [codex] Make justfile recipes Windows-aware @iceweasel-oai
- #25151 [codex] Consolidate shared prompts in codex-prompts @anp-oai
- #25659 Throttle repeated rollout compression runs @jif-oai
- #25165 Check root Python script formatting in CI @anp-oai
- #23767 [codex-rs] auto-review model override @won-openai
- #25149 exec-server: canonicalize bound filesystem paths @starr-openai
- #25669 fix: deflake zsh-fork approval test @jif-oai
- #24979 feat: gate unified exec zsh fork composition @bolinfest
- #24980 refactor: hide shell override for zsh fork unified exec @bolinfest
- #25679 Add rollout compression counters @jif-oai
- #25682 [codex] document out-of-line test module convention @anp-oai
- #25680 Add rollout compression histograms @jif-oai
- #25689 [codex] Generalize deferred nested tool guidance @sayan-oai
- #25690 Add Python version compatibility guidance @anp-oai
- #25681 fix: Deduplicate installed local and remote curated plugins @xl-openai
- #25701 fix: rename McpServer to TestAppServer @bolinfest
- #25702 [codex] enable parallel standalone web search calls @sayan-oai
- #25705 Fix stale TestAppServer rename in plugin_list test @bolinfest
- #25684 Move tool search metadata onto ToolExecutor @jif-oai
- #25625 fix(tui): clarify footer shortcut overlay hints @fcoury-oai
- #25649 [codex] Publish release symbol artifacts @nornagon-openai
- #25661 Reject directory rollout paths for pathless side chats @bolinfest
- #22668 Wire managed MITM CA trust into child env @winston-openai
- #25712 app-server: remove experimental persist_extended_history bool flag @owenlin0
- #24621 Move cloud requirements crate to cloud config @joeflorencio-openai
- #25717 Handle invalid plugin skills manifest field @xli-oai
- #25675 feat(remote-control): add pairing start @apanasenko-oai
- #25683 [codex] Add comprehensive root formatting check @anp-oai
- #25738 Move code review rules into AGENTS @pakrym-oai
- #24812 feat: show enterprise monthly credit limits in status @efrazer-oai
- #25330 [codex] Add plugin list JSON output @xl-openai
- #25457 [codex] Cache remote plugin catalog for suggestions @xl-openai
- #25783 [codex] Move plugin discoverable logic into core-plugins @xl-openai
- #25782 [codex] Validate plugin skill base names @xl-openai
- #25814 feat: reuse compressed rollout search snippets @jif-oai
- #25720 Add multi-agent runtime metadata types @jif-oai
- #25721 Persist multi-agent runtime metadata @jif-oai
- #25722 Resolve per-thread multi-agent runtime @jif-oai
- #25841 session: keep startup prewarm aligned with resolved multi-agent runtime @jif-oai
- #25840 fix: main oops @jif-oai
- #25723 Test remote multi-agent runtime selector override @jif-oai
- #25724 Test runtime selector before first turn @jif-oai
- #25844 Reduce stack pressure in session startup and config rebuilds @jif-oai
- #25857 flake: Keep plugin test homes alive @jif-oai
- #25847 Run Codex async main on a sized stack @jif-oai
- #25775 [codex] Use git CLI for Cargo fetches across Rust workflows @anp-oai
- #25167 [app-server][core] Add connector-level Guardian reviewer overrides @zamoshchin-openai
- #25868 Skip startup prewarm when websockets are disabled @jif-oai
- #25156 Route Bazel CI through shared BuildBuddy remote config wrapper @anp-oai
- #25739 core: derive built-in permission profiles from raw policies @bolinfest
- #25909 [codex] Revert shared BuildBuddy Bazel wrapper @anp-oai
- #25850 Key request-permission grants by environment @jif-oai
- #25707 [codex-analytics] Track CodexErr details in turn analytics @rhan-oai
- #25858 Add environmentId to request_permissions @jif-oai
- #25176 Route standalone image generation through host finalization md @won-openai
- #25916 Fix Windows release PDB staging @shijie-oai
- #25862 Propagate permission approval environment id @jif-oai
- #25907 [codex] Pin Python SDK to glibc-compatible runtime @aibrahim-oai
- #24859 Use environment secrets for Azure signing @shijie-oai
- #25509 Fix Windows running thread resume path normalization @etraut-openai
- #25135 Populate workspace kind on Codex turn events @knittel-openai
- #24622 Switch runtime to cloud config bundle @joeflorencio-openai
- #25938 fix: update image generation test helper rename @joeflorencio-openai
- #25911 core: stop passing legacy SandboxPolicy to guardian reviews @bolinfest
- #25668 Split cloud config bundle service modules @joeflorencio-openai
- #25890 [codex] Keep hosted tools visible in code-only mode @aibrahim-oai
- #25867 Add remote request permissions integration coverage @jif-oai
- #25943 config: remove dead profile sandbox fallback @bolinfest
- #25948 Revert "Use environment secrets for Azure signing" @shijie-oai
- #25923 Expose standalone image generation in code mode @won-openai
- #25906 [codex] Publish Python runtime wheels with Python SDK releases @aibrahim-oai
- #25953 feat: add skills extension scaffold @jif-oai
- #25915 [codex] Fix Windows BuildBuddy Bazel wrapper execution @anp-oai
- #25926 config: express implicit sandbox defaults as permission profiles @bolinfest
- #25959 feat: add extension turn-input contributors @jif-oai
- #25963 Allow EDU accounts to fetch cloud config bundles @joeflorencio-openai
- #25785 feat(app-server): add remote control client management RPCs @apanasenko-oai
- #25988 revert: publish release symbol artifacts @shijie-oai
- #26114 feat: default hide_spawn_agent_metadata to true @jif-oai
- #26122 chore: extract context fragments into dedicated crate @jif-oai
- #26144 Reject MAv2 close_agent self-targets @jif-oai
- #26106 skills: resolve per-turn catalogs from turn input context @jif-oai
- #26155 fix: serialize goal progress accounting @jif-oai
- #26156 chore: mechanical rename @jif-oai
- #26167 Implement v1 skills extension prompt injection @jif-oai
- #26176 fix: main @jif-oai
- #25949 [codex] Restore setup helper UAC manifest @iceweasel-oai