0.110.0
新增功能
- 新增插件系统,可从配置或本地 marketplace 加载 skills、MCP 条目和 app connectors,并提供 install 端点,用于从 app server 启用插件。(#12864, #13333, #13401, #13422)
- 扩展 TUI 多智能体流程,新增审批提示、基于
/agent的启用方式、更清晰的提示语、带序号的昵称,以及标注角色的交接上下文。(#12995, #13246, #13404, #13412, #13505) - 在 TUI 中新增可持久化的
/fast开关,并在 app server 中支持fast和flex服务层级。(#13212, #13334, #13391) - 改进 memories:写入范围限定到工作区、重命名 memory 设置,并加入防护机制,避免保存过期或被污染的事实。(#13008, #13088, #13237, #13467)
- 在发布的 release 产物中加入直接可用的 Windows 安装脚本。(#12741)
问题修复
- 修复了
@文件提及,使父目录.gitignore规则不再隐藏有效的仓库文件。 (#13250) - 通过正确复用 shell 状态,并修复
/status、Esc、待处理消息处理以及启动/配置文件竞态条件,使子代理更快、更可靠。 (#12935, #13052, #13130, #13131, #13235, #13240, #13248) - 修复了项目信任解析,使 CLI 覆盖项能正确应用于受信任的项目本地 MCP 传输。 (#13090)
- 修复了只读沙箱策略,确保显式启用网络访问时能够保留该访问权限。 (#13409)
- 修复了多行环境变量导出捕获以及会话状态中的 Windows 状态 DB 路径处理。 (#12642, #13336)
- 修复了 ANSI/base16 语法高亮,使终端主题颜色在 TUI 中正确渲染。 (#13382)
其他变更
- 移除了剩余的旧版 app-server v1 websocket/RPC 接口,改用当前协议。(#13364, #13375, #13397)
- 扩展了 app-server 文档,涵盖 service tiers、插件安装、重命名未加载的 thread,以及新的
skills/changed通知。 (#13282, #13391, #13414, #13422)
完整变更日志:https://github.com/openai/codex/compare/rust-v0.107.0...rust-v0.110.0
- #13086 修复 CLI 反馈链接 @etraut-openai
- #13063 使 cloud_requirements 采用 fail-close 行为 @alexsong-oai
- #13083 在 codex exec 和 codex mcp-server 中启用 analytics @etraut-openai
- #12995 feat: 支持 TUI 中的 sub-agent 审批 @jif-oai
- #13027 feat: skill 禁用遵循 config layer @jif-oai
- #13125 chore: 更改 mem 默认值 @jif-oai
- #13088 针对陈旧事实调整 memory 读取路径 @andi-oai
- #13128 nit: 忽略 `resume_startup_does_not_consume_model_availability_nux_c… @jif-oai
- #12935 加速 subagent 启动 @daveaitel-openai
- #13127 nit: 在 windows 上禁用 @jif-oai
- #13129 fix: 为 Bazel 测试打包
models.json@jif-oai - #13065 core: 在预检期间解析 host_executable() 规则 @bolinfest
- #12864 feat: 从插件加载 @xl-openai
- #12989 fix: MacOSAutomationPermission::BundleIDs 应允许与 … 通信 @leoshimo-oai
- #13181 [codex] 在账户更新中包含 plan type @tibo-openai
- #13058 在替换时记录 realtime 关闭标记 @aibrahim-oai
- #13215 修复 Codex issue 的 issue 去重工作流 @etraut-openai
- #13197 改进 TUI 中 subagent 的对比度 @gabec-openai
- #13130 fix: 存在 sub-agent 时的
/status@jif-oai - #13008 feat: 受污染的 memories @jif-oai
- #13237 feat: 更新 memories 配置名称 @jif-oai
- #13131 fix:
/agent中的 esc @jif-oai - #13052 core: 为 thread-spawn subagents 复用父 shell 快照 @daveaitel-openai
- #13249 chore:
/multiagent作为/agent的别名 @jif-oai - #13057 fix: 使用 https://git.savannah.gnu.org/git/bash 而非 https://github.com/bolinfest/bash @bolinfest
- #13090 修复项目信任配置解析,使 CLI overrides 生效 @etraut-openai
- #13202 tui: 恢复草稿页脚提示 @charley-oai
- #13246 feat: 通过
/agent启用 ma @jif-oai - #12642 fix(core) shell_snapshot 多行 exports @dylan-hurd-oai
- #11814 test(app-server): 增加 flow 测试超时以减少 flake @joshka-oai
- #13282 app-server: 更新
thread/name/set以支持未加载的 thread @euroelessar - #13285 feat(app-server): 为所有 app-server API 添加 tracing @owenlin0
- #13265 更新 realtime websocket API @aibrahim-oai
- #13261 fix(app-server): 仅在 turn 实际开始时发出 turn/started @owenlin0
- #13079 app-server: 抑制因创建 thread 而导致的 thread 状态变更 @euroelessar
- #13284 调整 plan prompt 以提高清晰度并控制详细程度 @bfioca-openai
- #13286 feat(app-server-test-client): 支持 tracing @owenlin0
- #13061 chore: 移除 SkillMetadata.permissions,并从 permission_profile 派生 skill sandboxing @celia-oai
- #12006 tui: 在提交和 slash-command 清空时保留 kill buffer @rakan-oai
- #13212 添加 fast mode 开关 @pash-openai
- #13250 fix(core): 将 file search gitignore 限定到仓库上下文 @fcoury
- #13313 在 TUI onboarding 期间将 Team 重命名为 Business plan @bwanner-oai
- #13248 fix: agent 竞态 @jif-oai
- #13235 fix: 存在 profile 时的 agent @jif-oai
- #13336 fix: db Windows 路径 @jif-oai
- #13334 app-server service tier 接入(以及一些清理) @pash-openai
- #13341 feat: presentation artifact p1 @jif-oai
- #13344 feat: pres artifact 2 @jif-oai
- #13346 feat: pres artifact 3 @jif-oai
- #13345 feat: spreadsheet artifact @jif-oai
- #13347 feat: spreadsheet v2 @jif-oai
- #13348 feat: presentation part 4 @jif-oai
- #13350 feat: spreadsheet part 3 @jif-oai
- #13355 feat: pres artifact part 5 @jif-oai
- #13357 feat: 为 presentation tool 添加 multi-actions @jif-oai
- #13360 feat: artifact presentation part 7 @jif-oai
- #13362 feat: 接通 spreadsheet artifact @jif-oai
- #12741 添加 Windows 直接安装脚本 @efrazer-oai
- #13376 realtime prompt 变更 @aibrahim-oai
- #13324 app-server-protocol: 导出 flat v2 schema bundle @apanasenko-oai
- #13364 移除 Responses V1 websocket 实现 @pakrym-oai
- #12969 app-server: 从 sqlite 以 trace 级别获取 /feedback 日志 @charley-oai
- #13381 chore: 从 rust-analyzer 中移除 --all-features 标志 @sayan-oai
- #13043 当任一阶段未知时折叠已解析的命令摘要 @nornagon-openai
- #13385 回滚 "realtime prompt changes" @aibrahim-oai
- #13389 修复 @aibrahim-oai
- #13375 chore(app-server): 删除 v1 RPC 方法和通知 @owenlin0
- #13397 chore(app-server): 恢复 EventMsg TS 类型 @owenlin0
- #13395 从所有消息构建 delegated realtime handoff 文本 @aibrahim-oai
- #13399 在评论前要求 deduplicator 成功 @etraut-openai
- #13398 回滚 "回滚 "realtime prompt changes"" @aibrahim-oai
- #13333 重构 plugin 配置和缓存路径 @xl-openai
- #13275 fix(network-proxy): 拒绝不匹配的 host headers @viyatb-oai
- #12868 tui: 使 pending steers 与 core acceptance 对齐 @charley-oai
- #13280 为 app server 添加 thread 元数据更新端点 @joeytrasatti-openai
- #13050 添加处于开发中的 original-resolution view_image 支持 @fjord-oai
- #13402 确保导入的 shell_environment_policy.set 的 env 值为 string @alexsong-oai
- #13331 使 js_repl 图像输出可控 @fjord-oai
- #13401 feat: 加载插件应用 @sayan-oai
- #13292 [feedback] 诊断 @rhan-oai
- #13414 feat(app-server): 添加 skills/changed v2 通知 @owenlin0
- #13368 feat(app-server): 将 app-server trace 上下文传播到 core @owenlin0
- #13413 将 command-runner 复制到 CODEX_HOME,以便 sandbox 用户始终可以执行它 @iceweasel-oai
- #13366 [bazel] 升级 rules_rs 和 llvm @zbarsky-openai
- #13409 Feat: 在只读 sandbox 策略上保留网络访问 @celia-oai
- #13388 config: 强制企业功能要求 @bolinfest
- #13218 添加角色特定的 subagent 昵称覆盖 @gabec-openai
- #13427 chore: 将 skill 和协议网络权限嵌套到
network.enabled下 @celia-oai - #13429 core: 将 wrapper future 装箱以减少栈压力 @bolinfest
- #13391 在 app-server 中除 'fast' 外还支持 'flex' tier @kharvd
- #13290 image-gen-core @won-openai
- #13404 feat: 更好的 multi-agent prompt @jif-oai
- #13412 feat: 序数昵称 @jif-oai
- #13454 添加每 turn token 使用量指标 @jif-oai
- #13240 fix:
/agent中的待处理消息 @jif-oai - #13461 fix: 错误的 merge @jif-oai
- #13460 feat: 在 sub agent 上禁用请求输入 @jif-oai
- #13456 feat: 添加每 turn 工具计数指标,并添加 tmp_mem 标志 @jif-oai
- #13468 nit: 引用提示 @jif-oai
- #13467 feat: workspace write 中的 memories @jif-oai
- #12383 为登录添加新 scope @adaley-openai
- #13484 允许 apps 为 sandbox 设置指定 cwd。 @iceweasel-oai
- #13424 feat(core, tracing): 添加表示一个 turn 的 span @owenlin0
- #13489 从 app-server 示例中移除 serviceTier @kharvd
- #13458 [tui] 更新 Fast slash command 描述 @pash-openai
- #13382 fix(tui): 解码语法主题中的 ANSI alpha-channel 编码 @fcoury
- #13485 feat: 外部 artifacts builder @jif-oai
- #13493 feat(app-server-test-client): 用于 tracing 的 OTEL 设置 @owenlin0
- #13501 为外部配置导入添加指标 @alexsong-oai
- #13495 通知 TUI plan mode prompt 和用户输入请求 @etraut-openai
- #13506 [release] 临时对 release 使用 thin LTO @bolinfest
- #13505 为 handoff 消息添加角色前缀 @aibrahim-oai
- #13422 plugin: 支持基于本地的 marketplace.json + 安装端点。 @xl-openai