0.143.0
新增功能
- 远程插件现在默认启用,具备更丰富的目录行、npm 市场来源,以及可见的远程/本地版本。(#30297, #26705, #29375, #30981)
- Codex 可通过 macOS 和 Windows 系统代理路由身份验证和 Responses API 流量,包括 PAC 和 WPAD 配置。(#26708, #26709, #31335)
- 新增
codex remote-control pair,可从正在运行的守护进程生成手动配对码。(#29913) - 新增 Amazon Bedrock GPT-5.6 Sol、Terra 和 Luna 模型,并原生支持
max推理强度。(#30285, #30467) - MCP 工具现在默认使用工具搜索,ChatGPT 托管的 MCP 服务器可显式使用会话身份验证。(#29486, #29733)
- App-server 客户端可以检查环境、列出派生线程,并分叉至特定轮次的历史记录。(#30291, #29591, #30277)
问题修复
- 修复了 Windows ConPTY 对行尾和退格键的输入处理,以及沙箱凭据重试的边界情况。(#29734, #29624, #29637)
- 修复了可能导致 MCP 启动看似繁忙的过期 TUI 安全提示和已取消的审查。(#30490, #31189)
- 改进了 exec 服务器暂时离线时的恢复机制,并防止了远程控制令牌刷新的重试风暴。(#30098, #30201)
- 在关闭期间保留了末尾的实时转录文本和终端 rollout 事件。(#29918, #30144)
- 通过在比较期间忽略响应元数据,提高了增量 WebSocket 请求的成功率。(#30770)
- 通过复用发布元数据,减少了 GitHub API 速率限制导致的安装程序失败。(#31056)
其他变更
- 更新 OpenSSL、Hono、fast-uri、quick-xml 和 crossbeam-epoch,以修复相关安全公告中的问题。(#29487, #29650, #30941, #31308)
- 文档化了 UUID7 thread 和 turn ID,以及推荐的 remote-executor 集成测试工作流。 (#27714, #29790)
完整变更日志: https://github.com/openai/codex/compare/rust-v0.142.0...rust-v0.143.0
- #26708 PAC 3 - 添加 Windows 系统代理解析器 @canvrno-oai
- #28769 注册完整的 CDP requirements 功能 @syuan-oai
- #29485 [codex] 获取远程插件的 featured ID @ericning-o
- #29487 将捆绑的 OpenSSL 升级到 3.6.3 @jif-oai
- #29489 [codex] 更新 esbuild 到 0.28.1 @pakrym-oai
- #29488 [plugins] 添加深色模式 logo 元数据 @drewschuster-openai
- #29249 [codex] 将环境上下文迁移到模型 world state @pakrym-oai
- #29494 core: 封装 token 预算窗口上下文 @bolinfest
- #29417 [codex] 将远程图片替换为模型可见的错误文本 @rka-oai
- #28360 feat(core): 在 ResponseItem 元数据中存储 turn_id @owenlin0
- #29486 [codex] 默认对 MCP 工具使用工具搜索 @sayan-oai
- #29501 path-uri: 阐明 host-native 路径转换 @anp-oai
- #29504 fix: world state response item 测试 @celia-oai
- #26704 TUI Plugin Sharing 4 - 覆盖远程插件目录流程 @canvrno-oai
- #29419 [codex] 在 app-server 入口拒绝远程图片 @rka-oai
- #28992 chore: 改进过期的 Bedrock 凭据错误 @celia-oai
- #29467 让 formatter 在成功时静默输出 @anp-oai
- #26709 PAC 4 - 添加 macOS 系统代理解析器 @canvrno-oai
- #29490 chore: 当 Code Mode 缺少模型元数据时发出警告 @celia-oai
- #29493 mcp: 对远程 stdio 接受外部绝对 cwd @anp-oai
- #29473 传播安全缓冲处理元数据 @fc-oai
- #24092 [codex] 拒绝未降级的 PowerShell AST 区域 @bookholt-oai
- #29155 [codex] 在 OTEL 中暴露 service tier 和 reasoning effort @daniel-oai
- #29068 [codex] 样式变更 @rka-oai
- #29518 移除冗余的 Codex Apps manager 标志 @aibrahim-oai
- #27946 [codex] 对 Responses Lite 工具使用 input items @rka-oai
- #29528 集中处理 Codex Apps 客户端 @aibrahim-oai
- #29577 在图片 URL 校验中处理更多工具 @aibrahim-oai
- #29575 移除冗余的 Codex Apps 缓存保护 @aibrahim-oai
- #29583 归组 Codex Apps 客户端设置 @aibrahim-oai
- #29358 允许 codex sandbox 使用 MCP sandbox 状态 @jif-oai
- #29599 停止持久化桥接日志事件 @jif-oai
- #29615 修复 Codex Apps 认证 elicitation 挂起 @jif-oai
- #29067 将 multi-agent v2 工具命名空间置于 collaboration 下 @jif-oai
- #29614 path-uri: 添加词法包含 @jif-oai
- #28426 共享恢复的 rollout 历史 @charliemarsh-oai
- #29634 更新 rmcp 到 1.8.0 @jif-oai
- #29650 更新存在漏洞的 Hono 和 fast-uri 依赖 @jif-oai
- #29498 [codex] 为 rollout 持久化字节添加埋点 @wiltzius-openai
- #29659 [core] 按经过时间对当前时间提醒进行防抖 @rka-oai
- #29608 刷新时关闭被取代的 MCP manager @jif-oai
- #29527 core: 使用 turn 拥有的 world state 进行内联压缩 @sayan-oai
- #29672 [codex] 在 rollout 持久化指标中处理更多工具 @rka-oai
- #29669 在 rollout 持久化指标中处理更多工具 @winston-openai
- #29680 Revert "在 rollout 持久化指标中处理更多工具" @rasmusrygaard
- #27714 app-server: 记录 thread 和 turn ID 为 UUID7 @owenlin0
- #29456 准备托管网络 sandbox 上下文 @jif-oai
- #28418 chore(core) 移除 AskForApproval::OnFailure @dylan-hurd-oai
- #29675 core: 向 Thread struct 添加额外元数据字段 @kumquatexpress
- #29013 将托管的 MITM CA 私钥保留在代理内存中 @winston-openai
- #29495 分离本地和远程插件分析 ID @jameswt-oai
- #29671 [codex] 为文件系统 sandbox helper 保留代理状态 @iceweasel-oai
- #29513 [codex] 允许使用 provider auth 进行图像生成 @richardopenai
- #29526 core: 在所选环境中解析 view_image 路径 @anp-oai
- #29696 [codex] 修复 MCP 测试中过期的审批策略 @sayan-oai
- #29704 [codex] 修复 MCP 测试中过期的审批策略 @kumquatexpress
- #29547 core: 为工具使用当前步骤环境 @sayan-oai
- #28976 添加 MCP 工具调用错误指标 @stevenlee-oai
- #27045 feat(guardian): 在应用审核中包含已连接账户邮箱 @viyatb-oai
- #29620 解耦插件 manifest 路径解析 @jif-oai
- #29666 [codex] 报告 exec-server 工作目录 @rasmusrygaard
- #29705 feat(app-server): thread/turns/items/list -> thread/items/list @owenlin0
- #29716 code-mode: 重命名 codex_code_mode::CodeModeService @cconger
- #29712 test: 根据目标 OS 分支,而不是 runner flavor @anp-oai
- #29728 core tests: 重命名 automatic environment builder @anp-oai
- #29158 path-uri: 移除旧版路径反序列化 @anp-oai
- #29519 core: 持久化初始上下文窗口元数据 @bolinfest
- #28918 使所选插件根目录为 URI 原生 @jif-oai
- #29515 [codex] 定义 code mode host 握手协议 @cconger
- #29715 [codex] 暴露 rollout 预算耗尽 @rka-oai
- #29732 code-mode: 移除 Session::is_alive() @cconger
- #29626 在不进行 host 路径转换的情况下加载 executor 技能 @jif-oai
- #29714 protocol: 分离 app 和 exec RPC 所有权 @anp-oai
- #29664 refactor: 提取上下文窗口 token 状态 @bolinfest
- #29665 fix: 将 context remaining 限定到 body window @bolinfest
- #29744 [codex] 将 rollout 预算错误重命名为 session 预算错误 @rka-oai
- #29739 更新 new_context_window 指令 @andmis
- #29743 core: 为 token 预算压缩重置上下文 @bolinfest
- #29477 支持 thread 级 originator 覆盖 @alexsong-oai
- #29745 core: 添加 wait_for_environment 以启动环境 @sayan-oai
- #28630 [codex] 跟踪 MCP 启动延迟 @rphilizaire-openai
- #29750 chore: 为 agent 消息分配
amsg_ID @bolinfest - #29746 test: 添加 app-server 自动环境 helper @anp-oai
- #29711 让图像生成扩展 host 控制输出持久化 @won-openai
- #29762 [codex] 为新上下文窗口复用压缩历史替换 @pakrym-oai
- #29768 [codex] 更新捆绑的 skill installer 指引 @sayan-oai
- #29690 [plugins] 添加 marketplace 来源要求 @xl-openai
- #29765 [codex] 当远程目录启用时忽略本地 curated 插件 @xl-openai
- #29767 [codex] 在分叉历史中分配 response item ID @pakrym-oai
- #29721 auth: 将 domain mode 移到 app wire types 之下 @anp-oai
- #29753 [plugins] 强制执行 marketplace 来源准入要求 @xl-openai
- #29722 config: 拥有 layer provenance 类型 @anp-oai
- #29723 connectors: 拥有 app 元数据类型 @anp-oai
- #29788 test: 在 Wine 下运行 app-server 集成测试 @anp-oai
- #29789 test: 在 app-server 集成测试中使用自动环境 @anp-oai
- #29790 docs: 记录 remote executor 集成测试 @anp-oai
- #29815 [codex] 移除 auto-compaction 退出选项 @rhan-oai
- #29628 保持 executor 插件 MCP 路径为 URI 原生 @jif-oai
- #29731 [codex] 为支持读取发出隐式 skill 使用 @alexsong-oai
- #29829 将 agent 消息持久化为 response item @jif-oai
- #29841 添加有界的文件系统遍历 RPC @jif-oai
- #29842 使用 fs/walk 进行环境 skill 发现 @jif-oai
- #29567 [codex] 显示外部导入结果计数 @charlesgong-openai
- #29831 在 executor skill 发现期间缓存插件命名空间 @jif-oai
- #29720 ci: 让弄脏 worktree 的任务失败 @anp-oai
- #29887 修复合并后的环境 skill 发现 @jif-oai
- #29734 [codex] 修复 Windows ConPTY 输入处理 @iceweasel-oai
- #28593 [codex] 当有可用 credits 时抑制低用量剩余警告 @brooks-oai
- #29624 在凭据重试期间保留 Windows sandbox 身份 @jif-oai
- #27466 [codex] 跟踪 exec-server JSON-RPC 请求 @richardopenai
- #29844 在文件系统遍历中跟随目录符号链接 @jif-oai
- #29637 对 WindowsApps 启动失败跳过凭据刷新 @jif-oai
- #29591 feat(app-server): 按 ancestor 列出 descendant thread @btraut-openai
- #28034 feat(network-proxy): 实验性本地凭据 broker @winston-openai
- #29736 [codex] 将 agent graph store 注入 ThreadManager @wiltzius-openai
- #29889 [apps] 将结构化图标资源贯穿 app 列表 @drewschuster-openai
- #29724 mcp: 将 elicitation 请求保持在 app wire types 之下 @anp-oai
- #29684 [plugins] 按 ID 跟踪插件安装请求 @adaley-openai
- #29870 流水线化有界的 AGENTS.md 和 Git 根探测 @jif-oai
- #29893 [codex] 去重 remote control 账户 header @shuo-openai
- #29851 添加 connector 声明快照 @jif-oai
- #29903 path-uri: 在绝对路径拼接中规范化父段 @anp-oai
- #29852 从 executor 插件读取 connector 声明 @jif-oai
- #29785 隔离 curated 插件同步的 Git 环境 @etraut-openai
- #29907 [codex] 将 sleep 置于 clock 命名空间下 @rka-oai
- #29910 [codex] 将 sleep 配置嵌套到当前时间提醒下 @rka-oai
- #29913 feat(remote-control): 添加 daemon 配对命令 @apanasenko-oai
- #29936 core: 添加可配置的 <context_window_guidance> 消息 @bolinfest
- #26705 TUI Plugin Sharing 5 - 打磨远程插件目录行 @canvrno-oai
- #29733 允许 ChatGPT 托管的 MCP server 使用 session auth @aibrahim-oai
- #29833 [1/3] core: 使 world state 快照可序列化 @sayan-oai
- #29919 TUI 支持 buffer experience @etraut-openai
- #29924 使用 enum 表示 MCP 认证 @aibrahim-oai
- #29804 code-mode: 定义 process host wire protocol @cconger
- #29956 [codex] 填充远程插件本地版本 @abhinav-oai
- #29835 [2/3] core: 在 rollout 中持久化 world state @sayan-oai
- #29899 [codex] 更新 reasoning effort @shijie-oai
- #29837 [3/3] core: 重放持久化的 world state @sayan-oai
- #29969 报告带 server 归因的 MCP 错误码 @aibrahim-oai
- #29970 core: 提高 token 预算消息限制 @bolinfest
- #29973 [codex] 通过 time provider 路由 sleep @rka-oai
- #19051 feat: 使用 run agent task auth 进行推理 @adrian-openai
- #29810 core: 让 AGENTS.md 响应环境变化 @sayan-oai
- #29997 core: 调和旧版 WorldState 段落 @sayan-oai
- #29990 并行化环境 skill 加载 @anp-oai
- #28522 支持来自所选 executor 插件的 HTTP MCP server @jif-oai
- #28529 支持来自所选 executor 插件的 HTTP MCP server 的 OAuth @jif-oai
- #29656 测试经 executor 路由的 MCP OAuth token 交换 @jif-oai
- #29928 chore(app-server): 将 thread/rollback 标记为 deprecated @owenlin0
- #29856 持久化所选 capability root,并按 model step 解析可用性 @jif-oai
- #27467 [codex] 记录 exec-server 生命周期指标 @richardopenai
- #29942 feat: 在 thread 启动时添加 provider-aware 模型回退 @celia-oai
- #30095 cli: 重命名 sandbox permission profile 标志 @bolinfest
- #30029 [codex] 将 current time reminder 间隔设为 0 @rka-oai
- #29941 core: 向 shell 工具暴露 permission profile @bolinfest
- #30031 [codex] 添加 current time reminder delivery mode 配置 @rka-oai
- #30098 [codex] 重试暂时离线的 exec-server 恢复 @richardopenai
- #30033 [codex] impl delivery_mode: 在响应边界发送 current time reminder @rka-oai
- #30108 [codex] 扩展 code-mode host IPC 传输 @cconger
- #27470 [codex] 观测远程 exec-server 生命周期 @richardopenai
- #30113 [codex] 在 sleep 期间轮询外部 clock @rka-oai
- #29003 feat(core, mcp): 在内存中缓存 codex_apps 工具 @owenlin0
- #30114 release: 发布 standalone zsh 产物 @bolinfest
- #30116 release: 使用 standalone zsh 产物 @bolinfest
- #29648 [codex] 添加托管的 MCP server matcher @felixxia-oai
- #30100 让扩展贡献 World State 段落 @jif-oai
- #30124 fix(app-server): 抑制 TUI rollback 警告 @fcoury-oai
- #29877 [codex] 暴露需要重新认证的 MCP 启动失败 @felixxia-oai
- #29988 识别 Work web 和移动端 thread originator @chiam-oai
- #30110 [codex] 添加 code-mode host 故障监督 hook @cconger
- #30088 通过 World State 投影 executor skill @jif-oai
- #30117 [codex] 通过 exec-server HTTP 传播 trace @wiltzius-openai
- #30101 将 MCP runtime 固定到 model step @jif-oai
- #30134 ci: 缩小 Windows 测试跳过范围 @anp-oai
- #30093 按环境可用性投影所选插件 runtime @jif-oai
- #30145 为环境 skill 元数据复用 walk inventory @jif-oai
- #30111 [codex] 实现 standalone code-mode process host @cconger
- #29935 [codex] 按 thread originator 归因 app-server 分析 @alexsong-oai
- #30152 恢复时重新注入缺失的 World State 片段 @jif-oai
- #30127 让 MCP elicitation 在 runtime 刷新期间保持可路由 @jif-oai
- #29934 在 app context 中暴露 MCP app 身份 @martinauyeung-oai
- #29909 [codex] 允许 CCA 图像生成和 web search 扩展 @won-openai
- #30157 测试所选 capability 在可用性和恢复场景下的表现 @jif-oai
- #30144 [codex] 修复 terminal rollout 事件持久性 @wiltzius-openai
- #29920 重试失败的 Codex Apps MCP 启动 @kbazzi
- #29516 为 MCP HTTP 持久化 Cloudflare affinity cookie @stevenlee-oai
- #30112 [codex] 添加 process-owned code-mode session client @cconger
- #30142 [codex] 将 process-owned code mode host 接入 core @cconger
- #30198 [codex] 修复 CreateThreadParams 测试初始化器 @anp-oai
- #30148 当所选可用性无变化时复用 MCP runtime @jif-oai
- #30215 测试所选 capability 在不可用恢复场景下的表现 @jif-oai
- #29991 [codex] 缩小未使用的 skills intro export @aibrahim-oai
- #30229 放宽 hooks.json 顶层元数据校验 @charlesgong-openai
- #29927 feat(app-server): 向 thread 添加 history_mode @owenlin0
- #30276 修复 main @owenlin0
- #29683 [codex] 添加受管的新 thread 模型设置 @hefuc-oai
- #30225 将 executor skill 读取与命名空间发现重叠 @jif-oai
- #30274 [codex] 允许 AGENTS.md 和 skills 授权委派 @charlesdu-openai
- #30147 [codex] 对 TUI thread 使用受管默认值 @hefuc-oai
- #30261 确保 thread.history_mode 不可变 @owenlin0
- #30277 feat(app-server): 向 thread/fork 添加可选 turn_id @owenlin0
- #30143 让 Codex 咨询用户级 code-review-* skills。 @anp-oai
- #30285 feat: 向 Bedrock catalog 添加 GPT-5.6 变体 @celia-oai
- #30173 当提交通道关闭时关闭 thread 持久化 @alfozan
- #30257 [codex] 对嵌套 MCP 认证启动错误进行分类 @felixxia-oai
- #29375 [codex] 支持 npm marketplace 插件源 @charlesgong-openai
- #30146 [codex] 对 blocking 和 postmerge CI workflow 进行分组 @anp-oai
- #30282 feat(protocol): 定义缺失的 rollout turn item @owenlin0
- #30201 fix(remote-control): 避免 server token 刷新重试风暴 @apanasenko-oai
- #30273 [codex] 消费推送的 exec-server 进程事件 @richardopenai
- #30286 core: 将 diff root 发现与 world state 重叠 @anp-oai
- #30314 app-server: 结构化并测试 JSON 关闭日志 @bolinfest
- #30317 更新安全检查措辞 @etraut-openai
- #30302 在自定义工具调用中保留命名空间 @nhamidi-oai
- #30327 core: 稳定合成 call output ID @bolinfest
- #30291 [app-server] 暴露 environment info RPC @maxj-oai
- #29691 [plugins] 在运行时强制执行 marketplace 来源策略 @xl-openai
- #30384 [app-server] 增加 currentTime/read 超时 @rka-oai
- #30297 [codex] 默认启用远程插件 @xl-openai
- #30490 fix(tui): 清除已完成的安全缓冲提示 @fcoury-oai
- #29740 [codex] 使用模型元数据生成 skills 使用说明 @ani-oai
- #30511 [codex] 恢复 v1 委派指引 @aibrahim-oai
- #30508 Revert "使 auto-review on-request 提示更主动" @dylan-hurd-oai
- #30467 [codex] 将 max 视为一等 reasoning effort @shijie-oai
- #30491 更新安全检查链接 @etraut-openai
- #30607 [codex] 自动标记 AWS Bedrock issue @etraut-openai
- #30269 [codex] 在 Rendezvous WebSocket 上禁用 Nagle @richardopenai
- #30645 [codex] 更新安全通知措辞 @etraut-openai
- #30757 fix(core) 移除全文 WebSocket trace @dylan-hurd-oai
- #30851 docs: 为围栏代码块添加标签 @bolinfest
- #30643 [codex] 限制 Rendezvous WebSocket 存活检测 @richardopenai
- #30867 合并 multi-agent v2 通信发送 @bolinfest
- #30872 记录 multi-agent 通信生命周期 @bolinfest
- #30883 [codex] 发出按请求的 TTFT completion telemetry @xli-oai
- #30897 修复 Bedrock 模型继承的可用性元数据 @shijie-oai
- #30941 fix: 处理 quick-xml 安全公告 @bolinfest
- #30770 fix(websockets) 对增量请求忽略元数据 @dylan-hurd-oai
- #30334 telemetry: 记录结构化 direct tool-call 计时 @bolinfest
- #30493 [codex] 添加可配置的 multi-agent mode 提示文本 @shijie-oai
- #30796 修复 path-backed feedback 附件的 MIME 类型 @btraut-openai
- #31056 fix(install): 复用 GitHub release 元数据 @bolinfest
- #30981 [codex] 暴露远程插件版本 @ericning-o
- #31066 chore: 移除未使用的 git-cliff 配置 @bolinfest
- #31064 [codex] 从 response event 读取缓冲元数据 @fc-oai
- #30223 让插件指引响应环境就绪状态 @sayan-oai
- #31189 修复已取消 review 导致 MCP 启动繁忙 @charliemarsh-oai
- #30876 [core] 支持交错的 response item @alexi-openai
- #31262 [codex] 从 buffering event 读取重试模型 @fc-oai
- #31261 Revert "[core] 支持交错的 response item" @alexi-openai
- #31253 为刚加载的 thread config 发出 exec-policy 警告 @etraut-openai
- #31179 移除 TUI exec-policy core export @etraut-openai
- #29959 条件化 codex_home dotenv @canvrno-oai
- #30627 elicitations: 迁移到共享 ElicitationService @cconger
- #30318 core: 跟踪 executor skill 发现 @anp-oai
- #31276 Revert "条件化 codex_home dotenv" @canvrno-oai
- #30956 refactor(protocol): 隔离旧版 item fanout @owenlin0
- #30395 [app-server] 在 rate limit 中包含 reset-credit 详情 @jayp-oai
- #31267 chore(approvals) 合并 shell 工具的 guardian 调用 @dylan-hurd-oai
- #31252 [tui] 在对话历史中截断 hook context @abhinav-oai
- #29918 [codex] 刷新末尾的 realtime transcript tail @guinness-oai
- #30226 让 Apps 指引响应 MCP 可用性 @sayan-oai
- #31190 使用 popup token range 进行自动补全插入 @charliemarsh-oai
- #29697 fix: 在 Linux 上将网络请求归因到确切的 exec @jif-oai
- #31303 feat(code-mode): 允许禁用 V8 JIT @cconger
- #31271 chore: 为用户 Bazel 配置使用 .worktreeinclude @anp-oai
- #31308 fix: 为 RUSTSEC-2026-0204 更新 crossbeam-epoch @cconger
- #30202 [codex] 在 release 包中捆绑 code mode host @cconger
- #31293 [codex] app-server: 暴露 plugin install policy 来源 @ericning-o
- #31318 ci: 共享通用 workflow setup @anp-oai
- #29992 app-server: 在集成测试中覆盖所选环境 @anp-oai
- #31284 当配置的 service tier 不受支持时发出警告 @etraut-openai
- #31323 将共享 HTTP transport 提取到 codex-http-client @bolinfest
- #31331 将直接 HTTP consumer 迁移到 codex-http-client @bolinfest
- #31337 fix: 恢复 Codex 环境设置表 @anp-oai
- #31188 在规则解析错误后保留受管 exec policy @etraut-openai
- #31306 [codex] 支持 sequential cutoff reasoning summary @ashwinnathan-openai
- #31344 exec-server: 在 Noise relay 测试中使用虚拟时间 @bolinfest
- #31296 refactor(protocol): 将 canonical tool item 映射到旧版 event @owenlin0
- #31335 core: 通过系统代理路由 Responses API @bolinfest