0.132.0
新增功能
- Python SDK 现在支持一等身份验证,包括 API key 登录、ChatGPT 浏览器和设备码流程、账户检查以及注销 API。(#23093)
- 对于纯文本工作流,Python turn API 更易使用:可以将普通字符串作为输入传入,而基于 handle 的运行现在会返回更丰富的
TurnResult,其中包含收集到的条目、计时和用量数据。(#23151, #23162) codex exec resume现在接受--output-schema,因此恢复后的自动化可以在保留会话上下文的同时,仍然强制输出结构化 JSON。(#23123)- TUI 启动更快,因为终端能力探测现在会批量执行,而不是在首个交互帧之前等待多个串行检查。(#23175)
- 远程执行器注册现在可以使用标准 Codex 身份验证,而不再需要单独的注册表凭证流程。(#22769)
- App-server turn 现在可以在用户输入和图像生成工具之间保留所请求的图像保真度,包括原始分辨率的本地图像。(#20693)
问题修复
- Goal 续跑现在会在触及用量上限或遇到重复阻塞时停止,而不是继续循环、消耗更多 token;完成响应中的用量表述也更加自然。(#23094, #22907)
- 会话选择器更值得信赖:重命名后的线程现在会在恢复提示中显示
name (thread-id),粘贴的文本也能在选择器搜索框中正常使用。(#23234, #23338) - 多会话 TUI 流程更加可靠:重放期间进行中的 MCP 调用会保持标记为活跃,elicitation 回复也会发回发起请求的线程。(#23236, #23241)
- 远程会话现在会保持 websocket 连接存活,并重新显示仓库相对路径的 diff,而不是带
/tmp/...前缀的路径。(#23226, #23261) - Windows 安装更加稳健:
codex doctor现在能正确识别由 npm 管理的安装,MSVC 发布版二进制文件也不再依赖单独安装的 VC++ 运行时 DLL。(#22967, #22905) - TUI 细节修复包括:退出时立即给出关闭反馈、对非 OpenAI 供应商隐藏 ChatGPT 用量链接,以及避免已清除的 Fast 档位在侧线程恢复后重新出现。(#23323, #23127, #23121)
其他变更
- 记忆摘要现已支持版本管理,并在存储格式过期时重新构建,这应能让长期存续的记忆上下文更精简、更可预测。(#23148)
- Python SDK 文档、FAQ 和示例已围绕新的认证流程和 turn API 更新,提供了更清晰的设置指南和更简单的纯文本示例。(#22941, #23093, #23151, #23162)
完整更新日志: https://github.com/openai/codex/compare/rust-v0.131.0...rust-v0.132.0
- #20693 在 app-server 输入中保留图像细节 @fjord-oai
- #22891 tui:通过 app 命令传递活动权限配置文件 @bolinfest
- #22924 app-server-protocol:从 API 中移除 PermissionProfile @bolinfest
- #22941 [codex] 优化 Python SDK 面向用户的文档 @aibrahim-oai
- #22967 修复 Windows doctor npm root 探测 @etraut-openai
- #22920 core:从快照设置权限配置文件 @bolinfest
- #22939 [codex] 拆分 Python SDK 辅助逻辑 @aibrahim-oai
- #22907 改进 goal 完成用量报告 @etraut-openai
- #23030 test:直接构造权限配置文件 @bolinfest
- #22769 exec-server:支持基于认证的远程执行器注册 @miz-openai
- #22946 [codex] 在 McpToolCallItemResult 中保留 MCP 结果元数据 @miaolin-oai
- #23069 multiagent:精简模型可见描述,限制为最多 5 个模型 @sayan-oai
- #22913 [1 of 4] tui:通过 app server 路由主设置写入 @etraut-openai
- #23093 sdk/python:添加一等登录支持 @aibrahim-oai
- #23151 [codex] 从 Python turn 句柄返回 TurnResult @aibrahim-oai
- #23147 使 multi-agent v2 工具命名空间可配置 @jif-oai
- #23036 test:减少 core 沙箱策略测试设置 @bolinfest
- #23162 [codex] 允许 Python turns 接受字符串输入 @aibrahim-oai
- #23226 为 exec-server 添加 WebSocket 保活 @starr-openai
- #23148 密集化并版本化内存摘要 @jif-oai
- #22448 [codex] 添加已安装插件提及 API @xli-oai
- #23288 chore:goal 扩展骨架 @jif-oai
- #23291 使扩展生命周期钩子异步 @jif-oai
- #23293 feat:添加扩展事件 sink 能力 @jif-oai
- #23295 chore:通过 GoalStore 隔离线程 goal 存储 @jif-oai
- #23301 chore:goal 恢复指标 @jif-oai
- #23305 chore:将 token 用量改为异步 @jif-oai
- #23306 从 goal 扩展工具发出 goal 更新事件 @jif-oai
- #23121 tui:防止已清除的 Fast tier 在 side-thread 恢复后重新出现 @etraut-openai
- #23123 支持 exec resume 的 --output-schema @etraut-openai
- #23128 修复 turn 错误后的 TUI 流清理 @etraut-openai
- #23127 对非 OpenAI 状态隐藏 ChatGPT 用量链接 @etraut-openai
- #23175 [1 of 2] 优化 TUI 启动时的终端探测 @etraut-openai
- #22706 [codex] 移除旧版 shell 输出格式化路径 @pakrym-oai
- #23332 nit:读取 prompt @jif-oai
- #22905 windows:将 MSVC 发行版二进制文件与静态 CRT 链接 @iceweasel-oai
- #23323 fix(tui):退出时显示关闭反馈 @fcoury-oai
- #23261 修复远程 turn diff 的显示根目录 @starr-openai
- #22569 简化旧版 Windows 沙箱 ACL 持久化 @iceweasel-oai
- #23273 上传 Rust 完整 CI JUnit 报告 @starr-openai
- #22893 fix:加固插件创建者共享验证 @efrazer-oai
- #23094 goal:在达到用量限制和阻塞时暂停 continuation 循环 @etraut-openai
- #23234 明确重命名线程的恢复提示 @etraut-openai
- #23241 TUI:将 elicitation 响应路由到请求线程 @etraut-openai
- #23236 TUI:将进行中的 MCP 调用重放为已开始 @etraut-openai
- #23088 goals:保持暂停转换显式 @etraut-openai
- #23338 feat(tui):在会话选择器中处理粘贴 @fcoury-oai
- #23335 feat(app-server):为 experimentalFeature/list 添加可选 thread_id @owenlin0