0.115.0
新增功能
- 支持的模型现在可通过
view_image和codex.emitImage(..., detail: "original")请求全分辨率图像检查,这有助于提升精确视觉任务的准确性。(#14175) js_repl现在暴露codex.cwd和codex.homeDir,并且保存的codex.tool(...)/codex.emitImage(...)引用可在各个 cell 之间继续使用。(#14385, #14503)- 实时 websocket 会话新增了专用的 transcription 模式,并支持通过
codextool 进行 v2 handoff,同时提供统一的[realtime]会话配置。(#14554, #14556, #14606) - v2 app-server 现在暴露用于文件读取、写入、复制、目录操作和路径监听的 filesystem RPC,并且新增了一个用于与该 API 集成的 Python SDK。(#14245, #14435)
- Smart Approvals 现在可在 core、app-server 和 TUI 中通过 guardian subagent 路由 review 请求,从而减少后续审批中重复的设置工作。(#13860, #14668)
- App 集成现在使用 Responses API 的 tool-search 流程,可以提示缺失的 tool,并在当前模型不支持基于搜索的查找时平稳回退。(#14274, #14287, #14732)
问题修复
- 派生的子代理现在能更可靠地继承沙箱和网络规则,包括项目 profile 分层、持久化的主机审批以及符号链接的可写根目录。(#14619, #14650, #14674, #14807)
js_repl在动态工具响应包含字面量 U+2028 或 U+2029 字符时不再挂起。(#14421)- TUI 在创建子代理后退出时不再停滞,并且默认情况下中断一轮对话不再关闭后台终端。(#14816, #14602)
codex exec --profile在启动或恢复线程时再次保留 profile 作用域设置。(#14524)- MCP 和 elicitation 流程更加稳健,工具名称规范化更安全,并且在审批提示中保留
tool_params。(#14491, #14605, #14769) - 本地网络代理现在以显式 HTTP/1 提供 CONNECT 流量,提高了与 HTTP 代理客户端的兼容性。(#14395)
其他变更
- 子代理等待工具现已统一命名为
wait_agent,与spawn_agent和send_input保持一致。(#14631)
完整变更日志: https://github.com/openai/codex/compare/rust-v0.114.0...rust-v0.115.0
- #14395 修复(network-proxy): 将 HTTP 代理监听器作为 HTTP/1 提供服务 @viyatb-oai
- #14385 添加 js_repl cwd 和 homeDir 辅助函数 @fjord-oai
- #14376 使 agent-switch 单词移动键不参与草稿编辑 @joshka-oai
- #14175 允许模型选择启用原始图像细节 @fjord-oai
- #14382 在 CI 中检查大型二进制文件 @owenlin0
- #14392 杂项(app-server): 停止发送 codex/event/ 通知 @owenlin0
- #14274 功能: 将 search_tool 迁移为 Responses API 的 bring your own tool @apanasenko-oai
- #14174 重构: 集中管理文件系统权限优先级 @viyatb-oai
- #14394 杂项(app-server): 从 v1.rs 中删除未使用的 rpc 方法 @owenlin0
- #14171 修复: 使核心审批与拆分沙箱策略保持一致 @viyatb-oai
- #14410 使 collab 模型元数据在完成时准确 @aibrahim-oai
- #14387 功能(app-server): 跨任务和核心操作传播 traces @owenlin0
- #14407 杂项: 使用 AVAILABLE 和 ON_INSTALL 作为默认插件安装和认证策略 @sayan-oai
- #14287 [apps] 添加 tool_suggest 工具。 @mzeng-openai
- #14432 阐明 spawn agent 授权 @aibrahim-oai
- #14295 支持等待 code_mode 会话 @pakrym-oai
- #14427 功能: 重构 openai-curated 插件。 @xl-openai
- #13996 重构: 将 bubblewrap 设为默认 Linux 沙箱 @viyatb-oai
- #14440 修复: 跟进 Linux 沙箱审查细节 @viyatb-oai
- #14431 在 zsh fork 中处理预批准权限 @mousseau-oai
- #14403 [elicitation] 用户友好的工具调用消息。 @mzeng-openai
- #14429 调用 apply_patch 时使用已授予权限 @mousseau-oai
- #14471 更新了关于 free 和 go 计划可用性的过时提示 @etraut-openai
- #14444 修复: 将内联 codex-rs/core 单元测试移至同级文件 @bolinfest
- #14437 当未直接等待 code mode 时分派工具 @pakrym-oai
- #14435 添加 Python app-server SDK @shaqayeq-oai
- #14473 修复(cli): 支持旧版 use_linux_sandbox_bwrap 标志 @viyatb-oai
- #13882 修复 stdio-to-uds 对端关闭偶发问题 @aibrahim-oai
- #14476 将 code mode 工具文件移至 tools/code_mode 下并拆分功能 @pakrym-oai
- #14475 将 spawn_csv 功能标志重命名为 enable_fanout @daveaitel-openai
- #14173 修复: 在 Linux 沙箱中保留拆分文件系统语义 @viyatb-oai
- #14480 清理 code_mode 工具描述 @pakrym-oai
- #14488 非致命地处理格式错误的 agent 角色定义 @gabec-openai
- #14398 在 Windows 上的沙箱场景中不允许使用 unified_exec @iceweasel-oai
- #14419 当 MCP 服务器上存在 scopes_supported 时,将其用于 OAuth @jgershen-oai
- #14484 添加默认 code-mode 让出超时 @pakrym-oai
- #14494 添加并行工具调用测试 @pakrym-oai
- #14478 杂项(app-server): 停止导出 EventMsg schemas @owenlin0
- #14490 修复 turn_start_jsonrpc_span_parents_core_turn_spans 的不稳定问题 @owenlin0
- #14496 为 code mode worker 复用工具运行时 @pakrym-oai
- #14421 修复 js_repl 在 U+2028/U+2029 动态工具响应时挂起 @aaronl-openai
- #14505 在 Windows 上跳过嵌套工具调用并行测试 @pakrym-oai
- #14491 修复 MCP 工具调用 @pakrym-oai
- #14493 memories: 将写入提示聚焦于用户偏好 @andi-oai
- #14510 将 exec 会话 ID 重命名为 cell ID @pakrym-oai
- #14500 更新工具搜索提示 @mzeng-openai
- #14426 解耦请求权限功能与工具 @mousseau-oai
- #14503 跨 cell 持久化 js_repl codex 辅助函数 @fjord-oai
- #14517 通过全局变量暴露 code-mode 工具 @pakrym-oai
- #14502 功能(search_tool): 根据模型 supports_search_tool 字段控制 search_tool @apanasenko-oai
- #14521 重新应用“向 compaction 传递更多参数” (#14298) @rasmusrygaard
- #14524 修复
codex exec --profile处理 @etraut-openai - #14516 将 reject 审批策略重命名为 granular @mousseau-oai
- #14445 功能: 添加 plugin/read。 @xl-openai
- #14178 login: 为登录流程添加自定义 CA 支持 @joshka-oai
- #14535 按工具拆分多 agent 处理程序 @pakrym-oai
- #13329 [js_repl] 在用户显式中断时硬停止活动的 js_repl execs @aaronl-openai
- #14239 client: 在 HTTPS 和 websocket 客户端中扩展自定义 CA 处理 @joshka-oai
- #14536 添加类型化多 agent 工具输出 @pakrym-oai
- #14514 修复: 在拒绝的父目录下重新打开可写 Linux 排除区域 @viyatb-oai
- #14531 添加插件使用遥测 @alexsong-oai
- #14511 code_mode: 将 exec 参数从运行时声明移至 @pragma @cconger
- #14504 重构云需求错误并在 JSON-RPC 错误中呈现 @alexsong-oai
- #14537 在功能标志后添加 realtime v2 事件解析器 @aibrahim-oai
- #14529 简化 request permissions 工具中可用的权限 @mousseau-oai
- #14522 功能: 支持 skill 配置中 skill 范围的管理网络域覆盖 @celia-oai
- #14554 为 realtime v2 交接添加 codex 工具支持 @aibrahim-oai
- #14556 为 websocket 会话添加实时转录模式 @aibrahim-oai
- #14518 为 read_only_unless_trusted 超时偶发问题添加诊断 @aibrahim-oai
- #14603 将多 agent 处理程序拆分为专用文件 @pakrym-oai
- #14526 code mode: 单行工具声明 @pakrym-oai
- #14400 为 Windows 沙箱使用私有桌面而不是 Winsta0\Default @iceweasel-oai
- #14558 将 imagaegencall 响应发送回 responseapi @won-openai
- #14553 改进 granular 审批策略提示 @mousseau-oai
- #14541 杂项: 澄清模型指令中的插件 + 应用文案 @sayan-oai
- #14542 [bazel] 升级 cc 和 rust 工具链 @zbarsky-openai
- #14512 在嵌入式 app server 上启动 TUI @etraut-openai
- #14606 统一 realtime v1/v2 会话配置 @aibrahim-oai
- #14527 app-server: 将平台 os 和 family 添加到初始化响应 @euroelessar
- #14618 在 TUI 中使用 subagents 命名 @aibrahim-oai
- #14304 使用 requirements.toml 设置覆盖本地 apps 设置 @canvrno-oai
- #14479 功能(app-server, core): 添加更多 spans @owenlin0
- #13644 修复: 在 unified-exec spawn 路径中保留 zsh-fork 升级 fds @bolinfest
- #14617 添加 code_mode_only 功能 @pakrym-oai
- #13201 Slash 复制 osc52 wsl 支持 @won-openai
- #14631 将多 agent 等待工具重命名为 wait_agent @aibrahim-oai
- #14622 稳定多 agent 功能标志 @aibrahim-oai
- #14245 app-server: 添加 v2 文件系统 API @euroelessar
- #14605 将 MCP 工具名称规范化为 code-mode 安全形式 @pakrym-oai
- #14637 修复核心测试中的 wait_agent 预期 @charley-oai
- #13860 在 core、app-server 和 TUI 中添加 Smart Approvals guardian 审查 @charley-oai
- #14639 修复过时的 create_wait_tool 引用 @charley-oai
- #14532 [hooks] 停止 continuation 和 stop_hook_active 机制 @eternal-openai
- #14635 修复 realtime transcription session.update 工具负载 @aibrahim-oai
- #14636 使用解析器特定的 realtime voice 枚举 @aibrahim-oai
- #14633 重构: 使 unified-exec zsh-fork 状态显式化 @bolinfest
- #12031 为内置 provider 添加 openai_base_url 配置覆盖 @etraut-openai
- #14645 修复 guardian 和 Smart Approvals 的 Windows CI 断言 @aibrahim-oai
- #14616 修复回溯后的 turn 上下文重建 @charley-oai
- #14619 修复: 跨会话持久化未来网络主机批准 @viyatb-oai
- #14650 修复: 为生成的子 agent 同步拆分沙箱策略 @viyatb-oai
- #14609 将 plugin/skill 指令移至 dev msg 并重新排序 @sayan-oai
- #12024 在覆盖内置模型 provider 时强制报错 @etraut-openai
- #14646 刷新 Python SDK 生成的类型 @sayan-oai
- #14649 使 defaultPrompt 成为数组,保持向后兼容 @sayan-oai
- #14501 动态工具调用: 添加参数
exposeToContext以可选隐藏工具 @cconger - #14651 添加 argument-comment Dylint 运行器 @bolinfest
- #14674 修复: 修复沙箱策略中的符号链接可写根目录 @viyatb-oai
- #14611 为客户端错误报告添加 auth 401 恢复可观测性 @ccy-oai
- #14647 [apps] 添加工具调用 meta。 @mzeng-openai
- #14732 [apps] 改进搜索工具回退。 @mzeng-openai
- #14602 在中断时保留后台终端,并将清理命令重命名为 /stop @friel-openai
- #14668 跨审批复用 guardian 会话 @charley-oai
- #14769 修复(core): 为 elicitations 保留 tool_params @mzeng-openai
- #14807 修复: 使用 profiles 时的子 agent 角色 @jif-oai
- #14806 功能: 改进 skills 缓存键以考虑配置分层 @jif-oai
- #13850 功能: 使多 agent 的中断状态非最终态 @jif-oai
- #14816 修复: 存在子 agent 时 tui 冻结 @jif-oai