0.52.0
亮点
- TUI 优化:流式传输期间可见排队消息;Windows 自动模式指引;撤销操作;compaction prompt 可配置。
- 图像:客户端图像缩放;通过 MIME 验证防止崩溃;重新启用 SDK 图像转发测试。
- 使用
!<cmd>直接执行命令 - 可为更多用量购买 credits。更多信息
其他改进
- 认证:新的 CLI 认证存储抽象,支持 keyring,并可配置后端。
- App server:GetConversationSummary RPC;按 id 获取/恢复对话摘要;改进 account/protocol 类型。
- 执行/事件:item 流式事件;ghost commits;更清晰的弃用警告;更好的 token 刷新处理与日志。
- 对话管理:集中截断所有工具输出;过滤掉先前轮次的推理内容;使用 model_provider 标注对话。
已合并 PR 列表
- 在 https://github.com/openai/codex/pull/5475 中记录 HTTP 版本
- feat: 在 https://github.com/openai/codex/pull/5508 中实现本地 tokenizer
- chore: 在 https://github.com/openai/codex/pull/5503 中移除 approve all
- [MCP] 在 https://github.com/openai/codex/pull/5487 中新增对为 MCP OAuth 指定 scopes 的支持
- chore: 在 https://github.com/openai/codex/pull/5517 中清理 spec 测试
- [MCP] 在 https://github.com/openai/codex/pull/5529 中移除旧版 stdio 客户端,改用 rmcp
- [app-server] 在 https://github.com/openai/codex/pull/5477 中发送 account/rateLimits/updated 通知
- 在 https://github.com/openai/codex/pull/5535 中修复 unified exec session id 测试辅助工具
- [app-server] 在 https://github.com/openai/codex/pull/5527 中新增 account 方法 API stub
- chore: 在 https://github.com/openai/codex/pull/5516 中清理 handle_container_exec_with_params
- fix: 在 https://github.com/openai/codex/pull/5525 中修复 approval 问题
- tui: 在 https://github.com/openai/codex/pull/5539 中于 display 显示聚合输出
- 在 https://github.com/openai/codex/pull/5543 中处理 turn 执行期间的取消/中止
- chore: 在 https://github.com/openai/codex/pull/5557 中对 apply_path 进行测试
- feat: 在 https://github.com/openai/codex/pull/5514 中为 unified_exec 截断使用实际 tokenizer
- feat: 在 https://github.com/openai/codex/pull/5551 中为 unified exec 添加结束事件
- 在 https://github.com/openai/codex/pull/5582 中为 mac 按键提示使用 Option 符号
- 在 https://github.com/openai/codex/pull/5581 中将 token_info 移至 ConversationHistory
- [MCP] 在 https://github.com/openai/codex/pull/5542 中将 rmcp 更新至 0.8.3
- [MCP] 在 https://github.com/openai/codex/pull/5595 中改进超时和 GitHub 的启动错误
- fix: 在 https://github.com/openai/codex/pull/5625 中修复不稳定测试
- 在 https://github.com/openai/codex/pull/5570 中为过期的速率限制以及未缓存速率限制的情况添加消息提示
- 在 https://github.com/openai/codex/pull/5564 中新增带请求日志的 CodexHttpClient 包装器
- [app-server] 在 https://github.com/openai/codex/pull/5642 中修复 account/read 响应注解
- 在 https://github.com/openai/codex/pull/5640 中新增使用 brew 升级 codex 的说明
- 在 https://github.com/openai/codex/pull/5645 中记录更多类型的 request ID
- 在 https://github.com/openai/codex/pull/5536 中为违反 sandbox 策略的命令新增模型摘要和风险评估
- [MCP] 在 https://github.com/openai/codex/pull/5648 中对 /mcp 和 mcp get 中的环境变量值进行脱敏
- [MCP] 在 https://github.com/openai/codex/pull/5653 中于 mcp add 后通过 experimental_use_rmcp_client 正确门控登录
- [codex][app-server] 在 https://github.com/openai/codex/pull/5578 中引入 codex/event/raw_item 事件
- 在 https://github.com/openai/codex/pull/5654 中修复不稳定的单元测试
- 在 https://github.com/openai/codex/pull/5661 中改进反馈
- 在 https://github.com/openai/codex/pull/5663 中跟进反馈
- 在 https://github.com/openai/codex/pull/5680 中跳过不稳定测试
- 在 https://github.com/openai/codex/pull/5686 中为 profile 新增 sandbox_mode 支持
- 在 https://github.com/openai/codex/pull/5688 中缩短耗时数分钟的单元测试运行时间
- [MCP] 在 https://github.com/openai/codex/pull/5676 中澄清 stdio token 相关文档的小问题
- fix: 在 https://github.com/openai/codex/pull/5797 中为实验性模型使用 codex-exp 前缀,并将 codex- 模型视为生产模型
- fix: 在 https://github.com/openai/codex/pull/5796 中回滚“[app-server] 修复 account/read 响应注解 (#5642)”
- 在 https://github.com/openai/codex/pull/5682 中新增反馈上传请求处理
- feat: 在 https://github.com/openai/codex/pull/5658 中使用 model_provider 标注对话以便过滤
- feat: 在 https://github.com/openai/codex/pull/5793 中更新 NewConversationParams,使其接受可选的 model_provider
- feat: 在 https://github.com/openai/codex/pull/5630 中接入撤销功能
- feat: 在 https://github.com/openai/codex/pull/5618 中实现异步 ghost commit
- feat: 在 https://github.com/openai/codex/pull/5629 中实现 TUI 撤销操作
- nit: 在 https://github.com/openai/codex/pull/5809 中补充 session task 文档
- chore: 在 https://github.com/openai/codex/pull/5631 中处理撤销相关小问题
- fix: 在 https://github.com/openai/codex/pull/5811 中修复测试 yield 时间
- feat: 在 https://github.com/openai/codex/pull/5803 中引入 GetConversationSummary RPC
- feat: 在 https://github.com/openai/codex/pull/5817 中遇到未知的 enabled/disabled feature 时返回错误
- 在 https://github.com/openai/codex/pull/5782 中使 token 刷新代码能容忍 id_token 缺失
- [Auth] 在 https://github.com/openai/codex/pull/5569 中为 Codex CLI 引入新的认证存储抽象
- feat: 在 https://github.com/openai/codex/pull/5821 中支持 model_family 中的 verbosity
- [Auth] 在 https://github.com/openai/codex/pull/5591 中为 Codex CLI 添加 keyring 支持
- 在 https://github.com/openai/codex/pull/5652 中集中处理对话历史中的截断
- fix: 在 https://github.com/openai/codex/pull/5829 中将 account struct 移至 app-server-protocol 并使用 camelCase
- [MCP] 在 https://github.com/openai/codex/pull/5600 中将 MCP 工具调用结果图像渲染给模型
- 在 https://github.com/openai/codex/pull/5794 中修复图像拖放
- 在 https://github.com/openai/codex/pull/5835 中截断 mcp 工具的 content-item
- feat(tui): 在 https://github.com/openai/codex/pull/5568 中澄清 Windows 自动模式要求
- [Auth] 在 https://github.com/openai/codex/pull/5792 中根据配置选择要使用的认证存储
- chore: 在 https://github.com/openai/codex/pull/5812 中加速 pipeline
- chore: 在 https://github.com/openai/codex/pull/5848 中移除无用的 shell 内容
- chore: 在 https://github.com/openai/codex/pull/5836 中让所有 app-server 集成测试使用 anyhow::Result
- chore: 在 https://github.com/openai/codex/pull/5854 中拆分 submission loop
- 在 https://github.com/openai/codex/pull/5833 中修复 advanced.md
- tui: 在 https://github.com/openai/codex/pull/5540 中于响应流期间显示排队消息
- 在 https://github.com/openai/codex/pull/5857 中过滤掉先前轮次的推理项
- 在 https://github.com/openai/codex/pull/5887 中回滚 #5812 release 文件
- 在 https://github.com/openai/codex/pull/5892 中移除 beta 实验性标头
- 在 https://github.com/openai/codex/pull/5891 中修复附加图像时偶发卡死的问题
- 在 https://github.com/openai/codex/pull/5888 中验证图像的 MIME 类型
- [app-server] 在 https://github.com/openai/codex/pull/5879 中为更多导出类型标注 title
- [App Server] 在 https://github.com/openai/codex/pull/5890 中允许根据 conversation id 获取或恢复对话摘要
- [codex][app-server] 在 https://github.com/openai/codex/pull/5893 中从历史记录恢复对话
- 在 https://github.com/openai/codex/pull/5655 中更频繁地刷新 token,并在认证和 token 刷新都失败时记录更清晰的日志消息
- fix(windows-path): 在 https://github.com/openai/codex/pull/5579 中保留 PATH 顺序;包含核心环境变量
- chore: 在 https://github.com/openai/codex/pull/5909 中合并 git crates
- feat: 在 https://github.com/openai/codex/pull/5825 中添加弃用警告
- feat: 在 https://github.com/openai/codex/pull/5908 中即使 sandbox 拒绝也添加输出
- 在 https://github.com/openai/codex/pull/5901 中为包含可选字段的 protocol struct 添加缺失的 "nullable" 宏
- 在 https://github.com/openai/codex/pull/5923 中为原始响应项添加包装器
- fix: 在 https://github.com/openai/codex/pull/5919 中修复 icu_decimal 版本
- chore: 在 https://github.com/openai/codex/pull/5878 中处理配置编辑器
- 在 https://github.com/openai/codex/pull/5572 中将审查委托给 codex 实例
- [exec] 在 https://github.com/openai/codex/pull/5899 中新增 MCP 工具参数和结果
- 在 https://github.com/openai/codex/pull/5546 中新增 item 流式事件
- 在 https://github.com/openai/codex/pull/5934 中重新启用 SDK 图像转发测试
- 在 https://github.com/openai/codex/pull/5937 中为 review 模式忽略 agent 消息增量
- 在 https://github.com/openai/codex/pull/5940 中的 asdf
- 在 https://github.com/openai/codex/pull/5943 中为 rollout path 添加仅调试用的斜杠命令
- 在 https://github.com/openai/codex/pull/5936 中为 rollout path 添加仅调试用的斜杠命令
- 在 https://github.com/openai/codex/pull/5942 中发送 delegate header
- chore: 在 https://github.com/openai/codex/pull/5958 中统一 config crates
- 在 https://github.com/openai/codex/pull/5950 中将初始历史作为可选参数传递给 codex delegate
- feat: 在 https://github.com/openai/codex/pull/5959 中使 compaction prompt 可配置
- nit: 在 https://github.com/openai/codex/pull/5978 中记录 rmcp_client
- chore: 在 https://github.com/openai/codex/pull/5952 中对 freeform apply_patch 进行测试
- [codex] 在 https://github.com/openai/codex/pull/5897 中新增开发者说明
- [app-server] 在 https://github.com/openai/codex/pull/5939 中移除 serde(skip_serializing_if = "Option::is_none") 注解