## 新功能
- 安装便携式 Agent 插件,并可在本地、个人、工作区和远程插件目录中搜索。(#36544, #36409, #36919, #36796)
- 将对话组织为持久化、可手动排序的区块,并逐步浏览长对话记录。(#35722, #36007, #36380, #36948, #36950)
- 通过新增的 `--approve-for-me` CLI 标志启用自动审查批准。(#36373)
- 导入由 Cursor 管理的技能,并同步更改到导入的 Claude 和 Cursor 对话中,且不会创建重复项。(#36361, #36356, #35623)
- 支持可选的 MCP 2026-07-28 协议,包括分页发现、多轮请求和非阻塞服务器启动。(#35724, #35725, #35590, #35742)
- 为 Amazon Bedrock 启用缓存网络搜索和远程对话压缩功能。(#36938, #36981)
## 缺陷修复
- 从显示的命令和重放的对话历史中脱敏密钥和完整的 Bearer 令牌。(#36893, #36908)
- 防止在焦点返回、MCP 服务器初始化或 Ghostty 处理键盘快捷键时终端输入丢失或卡住。(#35649, #35957, #36834)
- 修正日文、表情符号、超链接以及视口边界附近文本的渲染和光标定位。(#35960, #35962, #37166)
- 正确中断 Windows 后台进程,并一致地处理 Windows 文件系统路径。(#35655, #35851, #37129)
- 对不熟悉的项目要求显式信任,并在凭证使用前强制执行托管身份验证限制。(#36960, #37132)
- 加强插件隔离,并在策略更新失败时拒绝网络访问。(#37027, #36967, #36037)
## 文档
- 改进内置的 OpenAI 文档技能,提供针对官方来源的精准查找,并为 Codex、模型选择和 API 工作流提供更清晰的指导。(#36014)
## 日常维护
- 将 MCP SDK 升级至 3.0.0,Ratatui 升级至 0.30.2,V8 升级至 150.4.0。(#36001, #35959, #35831)
- 使用 Azure Key Vault 替代导出私钥签名文件,以保障 macOS 发布公证的安全性。(#37154)
- 移除已弃用的 `codex exec --full-auto` 标志;请改用 `--sandbox workspace-write`。(#36054)
- 停止发布冗余的 Linux 捆绑包归档文件;请使用标准的 `codex-package-<target>` 发布归档文件。(#36342)
## 更新日志
完整更新日志:https://github.com/openai/codex/compare/rust-v0.146.0...rust-v0.147.0
- #35590 在服务器启动前暴露缓存的 MCP 工具 @copyberry
- #35594 在 v2 wait_agent 模式中建议更长的等待时间 @copyberry
- #35595 允许在 R2 发布中包含 alpha 热修复版本 @copyberry
- #35597 为扩展渲染的技能目录添加指标 @copyberry
- #35607 记录空技能目录的指标 @copyberry
- #35608 支持模型拥有的令牌预算默认值 @copyberry
- #35621 在执行恢复时跳过已恢复的令牌使用重放 @copyberry
- #35623 分别解析 Claude 和 Cursor 会话记录 @copyberry
- #35642 使 OpenTelemetry 提供商关闭操作幂等 @copyberry
- #35644 在发布文件缺失时保留线程元数据 @copyberry
- #35649 终端焦点返回时保留 TUI 输入 @copyberry
- #35652 为远程执行启用网络策略回调 @copyberry
- #35653 测试多代理工作器的开发者指令继承 @copyberry
- #35655 在中断时终止 Windows 非 TTY 进程 @copyberry
- #35656 在不同配置表示中保留多代理设置 @copyberry
- #35661 将主机技能置于权限指令之前 @copyberry
- #35663 基于技能路由元数据评估字符匹配 @copyberry
- #35665 修复 Windows 上的异步监听器测试框架 @copyberry
- #35668 暴露网络代理规范构造函数 @copyberry
- #35670 将 Windows 执行 yield 下限提高至 10 秒 @copyberry
- #35671 按认证模式路由精选插件 @copyberry
- #35675 并发准备 MCP 和插件推荐 @copyberry
- #35678 在恢复时跨分页保留线程元数据 @copyberry
- #35685 为 `codex sandbox` 加载云托管配置文件 @copyberry
- #35688 将 crossterm 补丁指向 OpenAI OSS 分支 @copyberry
- #35689 在线程历史投影中保留项目时间戳 @copyberry
- #35691 在关系列表中包含空预览线程 @copyberry
- #35693 在后台刷新子代理选择器 @copyberry
- #35695 在日志客户端中遵循配置的 SQLite 主目录 @copyberry
- #35708 为 v2 子代理添加可配置的开发者指令 @copyberry
- #35715 在路由感知 HTTP 请求中支持流式主体 @copyberry
- #35717 为 OpenAI 文件上传复用路由感知客户端 @copyberry
- #35720 将 rmcp 升级至 3.0.0-beta.3 @copyberry
- #35721 在无进程主机时遵循禁用的代码模式回退 @copyberry
- #35722 添加用于组织线程的持久化区块 @copyberry
- #35724 添加 MCP 2026-07-28 发现支持 @copyberry
- #35725 完善 MCP 2026 客户端支持 @copyberry
- #35738 为已执行的工具调用添加有界元数据 @copyberry
- #35742 避免在可选 MCP 启动时阻塞回合 @copyberry
- #35744 保持代理注册表身份一致 @copyberry
- #35766 从世界状态发出主机技能预算警告 @copyberry
- #35769 在主机和执行器目录间共享技能预算 @copyberry
- #35772 限制模型缓存 TTL 续期频率 @copyberry
- #35773 根据上下文窗口缩放技能元数据预算 @copyberry
- #35777 并发解析 MCP 工具目录 @copyberry
- #35779 在会话启动期间并发加载线程标题 @copyberry
- #35785 支持自助式 Business ProLite 账户 @copyberry
- #35787 基于状态数据库限制分页线程历史访问 @copyberry
- #35794 在精选同步测试中等待 MCP 就绪 @copyberry
- #35802 使用所选回合的模型和精力为报告打标签 @copyberry
- #35806 通过配置的 HTTP 客户端路由 MCP OAuth @copyberry
- #35814 对所有 MCP OAuth 请求使用配置的 HTTP 客户端 @copyberry
- #35818 发布完成后推进 latest-alpha-cli @copyberry
- #35821 为 TUI 网络检查使用共享 HTTP 客户端 @copyberry
- #35825 为公告提示使用共享 HTTP 客户端 @copyberry
- #35828 强制集中创建 SQLite 连接 @copyberry
- #35830 将 WebRTC 边带加入请求路由至实时 API @copyberry
- #35831 将 rusty_v8 更新至 150.4.0 @copyberry
- #35835 跟踪嵌套 Codex 请求的父级轮次 @copyberry
- #35836 清理已取消的 MCP 提示请求 @copyberry
- #35837 在 app-server 摘要中暴露插件资格元数据 @copyberry
- #35839 将推荐插件与工具建议解耦 @copyberry
- #35840 处理旧版 MCP 发现预验证错误 @copyberry
- #35843 将远程执行服务器绑定至其父级 stdin @copyberry
- #35845 支持纯文本协作工具消息 @copyberry
- #35850 在后台终端列表中保留外部路径 @copyberry
- #35851 在路径 URI 中规范化 Windows 命名空间路径 @copyberry
- #35854 对 app-server 事件负载进行 Box 装箱 @copyberry
- #35856 按 MCP 服务器名称解析导入的连接器 @copyberry
- #35857 为 Rust 二进制文件添加 Bazel 单元测试目标 @copyberry
- #35859 在 app-server 摘要中暴露插件安装时间戳 @copyberry
- #35870 在外部代理导入历史中包含会话标题 @copyberry
- #35874 在模型上下文中标记主环境 @copyberry
- #35875 允许就地更新环境就绪状态 @copyberry
- #35878 在 MCP 文件上传中使用步骤环境 @copyberry
- #35886 在 TUI 中将受阻目标显示为停滞 @copyberry
- #35887 在后台清理侧边对话 @copyberry
- #35895 在生成代理时继承就绪的步骤环境 @copyberry
- #35937 在 MCP 服务器启动期间允许不相关的工具运行 @copyberry
- #35941 限制 MCP 命名空间描述 @copyberry
- #35942 更新当前工具调用和 app-server 事件类型的测试 @copyberry
- #35944 报告已列出子代理的直接输入能力 @copyberry
- #35957 修复 MCP 启动期间 TUI 输入队列的处理 @copyberry
- #35959 将 Ratatui 升级至 0.30.2 @copyberry
- #35960 在终端差异比较期间保持超链接单元格宽度 @copyberry
- #35962 修复 TUI 中半角日语音符的布局 @copyberry
- #35982 在截断分支时避免克隆发布历史 @copyberry
- #35989 在 TUI 中显示仅含标题的推理摘要 @copyberry
- #35990 测试跨 Codex 版本的 exec-server 兼容性 @copyberry
- #35992 将外部代理配置迁移分组到模块中 @copyberry
- #35997 移除过时的 rusty_v8 146.4.0 Bazel 目标 @copyberry
- #36001 将 rmcp 升级至 3.0.0 @copyberry
- #36002 使用环境原生路径解析 MCP 文件上传 @copyberry
- #36006 减少响应序列化与发布扫描开销 @copyberry
- #36007 为线程部分添加持久化的手动排序 @copyberry
- #36008 通过共享 HTTP 客户端路由 pet 资源下载 @copyberry
- #36011 在连接集之间共享可选的 MCP 启动宽限期 @copyberry
- #36014 优化 OpenAI 文档技能源的路由 @copyberry
- #36020 避免克隆被忽略的分析通知 @copyberry
- #36030 增加 app-server 追踪测试的栈大小 @copyberry
- #36031 在 MCP CLI 命令中加载云托管服务器 @copyberry
- #36033 在 codex-protocol 中使用共享 HTTP 客户端 @copyberry
- #36035 当 stdio app-server 连接关闭时退出 @copyberry
- #36036 允许从 TUI 为分叉的聊天命名 @copyberry
- #36037 当允许修正失败时拒绝网络访问 @copyberry
- #36039 限制 MCP 目录的分页 @copyberry
- #36043 记录 Responses API 代理 reqwest 异常 @copyberry
- #36045 区分未知的 MCP 认证状态 @copyberry
- #36047 将 MCP 环境标头提取为局部变量 @copyberry
- #36049 将工具调用指标排除在 Statsig 导出之外 @copyberry
- #36051 避免覆盖符号链接的迁移目标 @copyberry
- #36054 从 `codex exec` 中移除旧版 `--full-auto` 处理逻辑 @copyberry
- #36055 在工具调用项中暴露 MCP 只读提示 @copyberry
- #36076 移除 codex-core 对 reqwest 的直接依赖 @copyberry
- #36078 通过共享 HTTP 客户端路由 Ollama 请求 @copyberry
- #36083 在线程历史投影中处理非整数速率限制 @copyberry
- #36092 将图像请求和显式中断与轮次关联 @copyberry
- #36119 在构建路由器前统一工具运行时组装 @copyberry
- #36120 将就绪等待委托给工具运行时 @copyberry
- #36121 对沙箱执行器技能资源读取进行沙箱隔离 @copyberry
- #36124 在能力发现期间尊重文件系统权限 @copyberry
- #36127 集中化工具注册并保护主机工具 @copyberry
- #36128 在远程压缩期间保留已委派的任务 @copyberry
- #36129 在代码模式下解决规范化后的工具名称冲突 @copyberry
- #36133 为 apply_patch 保留执行器工作区权限 @copyberry
- #36138 隔离 apply-patch 权限测试变体 @copyberry
- #36139 限制代码模式输出终止测试的范围 @copyberry
- #36140 在完成作业前等待内存合并关闭 @copyberry
- #36146 稳定审批场景测试 @copyberry
- #36148 强化文件更改审批集成测试 @copyberry
- #36149 加强会话文件更改审批的覆盖范围 @copyberry
- #36165 稳定文件审批重放测试 @copyberry
- #36166 使待处理的实时边带测试确定性化 @copyberry
- #36167 强化自动审查模型覆盖测试 @copyberry
- #36168 使工具遥测标签收集同步化 @copyberry
- #36171 测试工作区根目录元数据的补丁保护 @copyberry
- #36177 测试远程 Guardian 网络审批的作用域 @copyberry
- #36181 在响应元数据中记录尝试的工具调用 @copyberry
- #36183 在沙箱执行全程使用权限配置文件 @copyberry
- #36184 合并并发的远程元数据请求 @copyberry
- #36187 从配置的时钟刷新环境日期 @copyberry
- #36188 使线程历史投影具备容错能力,以应对格式错误的 rollout 配置 @copyberry
- #36191 标记显式技能注入指标 @copyberry
- #36194 避免在流式输出缓冲区中移动字节 @copyberry
- #36207 记录标准化的沙箱违规事件 @copyberry
- #36212 预计算应用服务器协议导出项 @copyberry
- #36217 仅通过独立主机运行代码模式 @copyberry
- #36218 在外部代理检测中暴露连接器候选项 @copyberry
- #36221 协调 rollout 项目时忽略透传元数据 @copyberry
- #36223 在读取命令操作中保留执行器路径 @copyberry
- #36228 支持企业自动化账户计划 @copyberry
- #36237 在 Windows 上忽略符号斜杠-tmp 权限 @copyberry
- #36239 刷新预计算的应用服务器协议导出项 @copyberry
- #36264 为代码模式主机优先使用捆绑资源 @copyberry
- #36271 从持久化的 rollout 中派生报告提示词哈希值 @copyberry
- #36306 将托管的 MCP 凭据限制在本地环境中 @copyberry
- #36309 在世界状态中使用主机技能提供商目录 @copyberry
- #36310 按环境隔离 MCP OAuth 凭据 @copyberry
- #36311 在调试提示词输入输出中包含技能 @copyberry
- #36327 保留主机技能路径别名的发现顺序 @copyberry
- #36329 将 `shell_command` 限制为单个本地环境 @copyberry
- #36336 检测外部代理会话中使用的连接器 @copyberry
- #36339 在 MCP 服务器中启用技能 @copyberry
- #36342 停止发布传统的 Linux 捆绑归档文件 @copyberry
- #36350 要求带有 shell 理由的显式沙箱权限 @copyberry
- #36351 使用模型目录协作模式消息 @copyberry
- #36354 将会话直接传递给会话任务 @copyberry
- #36355 保持 MCP 工具调用绑定到其所属线程 @copyberry
- #36356 同步导入的外部代理会话的更新 @copyberry
- #36357 使用步骤作用域的路由器进行工具执行 @copyberry
- #36359 在 codex-core 中整合 MCP 配置编辑 @copyberry
- #36360 将 MCP 绑定用作步骤工具目录 @copyberry
- #36361 将 Cursor 管理的技能迁移到 Codex @copyberry
- #36364 将技能目录渲染移出核心模块 @copyberry
- #36365 为 MCP 信息收集请求添加严格的自动审查机制 @copyberry
- #36367 在注册表中保持有效的工具暴露 @copyberry
- #36372 使用 MSVC 运行原生 Windows Bazel 测试 @copyberry
- #36373 添加 `--approve-for-me` CLI 标志 @copyberry
- #36374 为代码模式启用沙箱化 V8 @copyberry
- #36378 优先从状态数据库加载本地会话选择器 @copyberry
- #36384 使用分页查询加载轮次摘要 @copyberry
- #36385 向核心模块添加已确认的用户消息提交 @copyberry
- #36388 在轮次分析中跟踪图像准备详情 @copyberry
- #36389 强制执行所有线程历史的单写入者所有权 @copyberry
- #36393 避免冗余的文件系统探测 @copyberry
- #36402 声明实验性插件搜索 API @copyberry
- #36408 允许为实时转换设置自定义 Codex 指令 @copyberry
- #36409 实现远程插件搜索 @copyberry
- #36410 使用户输入阻塞行为明确化 @copyberry
- #36411 使用 Git 仓库作为工具前钩子的测试标记 @copyberry
- #36413 添加实时委托确认控件 @copyberry
- #36440 提取 exec-server 请求分发逻辑 @copyberry
- #36482 避免在每次 TUI 重绘时查询终端大小 @copyberry
- #36485 增加远程插件捆绑包大小限制 @copyberry
- #36507 在跨提示词时保留已尝试的工具元数据 @copyberry
- #36511 支持两步击 TUI 快捷键组合 @copyberry
- #36534 将 MCP 目录项目限制提升至 2,048 @copyberry
- #36544 在安装全程支持便携式 Agent 插件 @copyberry
- #36632 在目标变更期间保留 SQLite 线程元数据 @copyberry
- #36635 在登录完成通知中暴露新手引导提示 @copyberry
- #36641 从响应使用中捕获 rollout 预算单位 @copyberry
- #36715 使用提供商报告的 rollout 预算单位 @copyberry
- #36716 去重 MCP 资源操作处理 @copyberry
- #36727 简化轮次元数据状态所有权 @copyberry
- #36729 将代码模式工具分析与模型响应关联 @copyberry
- #36732 稳定云环境 HTTP 测试 @copyberry
- #36734 去重 MCP 资源列表处理 @copyberry
- #36740 在扩展数据中存储轮次技能状态 @copyberry
- #36742 简化上下文用户片段注册 @copyberry
- #36744 将扩展注册表直接存储在构建器中 @copyberry
- #36745 整合 apply_patch 运行时执行 @copyberry
- #36757 在读取 shell 快照前等待补丁事件 @copyberry
- #36759 强化 TUI 焦点调色板回归测试 @copyberry
- #36764 避免在注册期间构建代码模式定义 @copyberry
- #36769 稳定启动 Git 增强集成测试 @copyberry
- #36770 稳定延迟目标分叉测试 @copyberry
- #36771 强化 Linux 托管代理辅助程序生命周期 @copyberry
- #36772 提升主机拥有的 Codex Apps 目录限制 @copyberry
- #36773 从层栈中派生活跃用户配置层 @copyberry
- #36774 澄清配置层迭代 API @copyberry
- #36779 稳定并发测试中的网络策略事件捕获 @copyberry
- #36781 添加按交互面控制的 MCP 工具暴露权限 @copyberry
- #36782 添加 Guardian 会话复用与中断测试 @copyberry
- #36787 在 `ModelMessages` 中整合模型指令 @copyberry
- #36792 按模型能力限制插件使用指令的暴露 @copyberry
- #36793 终止超时的 Git 进程树 @copyberry
- #36796 添加 Agent 插件 MCP 配置解析 @copyberry
- #36797 规范化 rusty_v8 校验和清单的行尾符 @copyberry
- #36800 避免在命令批准后重新注入权限 @copyberry
- #36807 将音频准备逻辑提取至独立工具 crate @copyberry
- #36808 本地会话归档命令优先采用 SQLite 命名 @copyberry
- #36809 `exec resume --last` 优先使用状态数据库 @copyberry
- #36810 添加 MCP 客户端合规性回归检查点 @copyberry
- #36811 遵循各环境的登录 Shell 策略 @copyberry
- #36812 为代码模式添加双 WebSocket 传输 @copyberry
- #36815 在令牌预算上下文中按名称标识代理 @copyberry
- #36822 修复审批解析器名称中的拼写错误 @copyberry
- #36825 整合审批遥测上下文 @copyberry
- #36830 为停滞的代码模式主机请求设置超时 @copyberry
- #36834 在 Ghostty 中避免请求按键释放事件 @copyberry
- #36840 将 API 请求指标排除在 Statsig 导出之外 @copyberry
- #36856 支持自由格式工具的延迟加载 @copyberry
- #36857 支持命名空间中的自定义工具 @copyberry
- #36862 将线程创建统一封装在请求对象后 @copyberry
- #36871 使用 DotSlash 并行化 R2 资产发布 @copyberry
- #36877 将执行器技能包加载移至技能扩展 @copyberry
- #36880 将直接执行器技能发现移至技能扩展 @copyberry
- #36882 保留完整的 MCP 命名空间描述 @copyberry
- #36884 添加主机技能根加载 @copyberry
- #36892 在多代理 v2 中支持叶子模型 @copyberry
- #36893 从应用服务器命令执行项中脱敏机密信息 @copyberry
- #36895 处理延迟超时后的晚期 MCP 启动结果 @copyberry
- #36898 避免冗余的文件系统元数据探测 @copyberry
- #36900 独立于连接器列表注册应用工具 @copyberry
- #36901 将更新的权限传播至审查线程 @copyberry
- #36903 在主机加载器中加载技能接口元数据 @copyberry
- #36904 限制持久化到 SQLite 的 RMCP 日志 @copyberry
- #36906 重新加载 v2 代理时保留模型提供商 @copyberry
- #36908 改进承载令牌机密脱敏 @copyberry
- #36910 按应用服务器会话协商 MCP 扩展 @copyberry
- #36912 从当前回合配置中读取审批策略 @copyberry
- #36913 将技能策略解析移至 `codex-skills` @copyberry
- #36916 集中化应用启用状态评估 @copyberry
- #36917 测试禁用应用时的显式插件提及 @copyberry
- #36919 将本地插件合并到插件搜索结果中 @copyberry
- #36921 将主机技能服务移至技能扩展 @copyberry
- #36924 拒绝隐式发现的裸 Git 仓库 @copyberry
- #36930 从当前配置中读取回合权限 @copyberry
- #36935 自动信任未决的本地项目 @copyberry
- #36938 为 Amazon Bedrock 启用缓存网络搜索 @copyberry
- #36939 在 Guardian 审查中包含策略审批原因 @copyberry
- #36941 使用当前会话设置进行审查线程 @copyberry
- #36943 将主机技能根解析移至技能扩展 @copyberry
- #36945 授予 blob 大小策略作业对内容的读取权限 @copyberry
- #36947 启动空闲回合时接受用户输入 @copyberry
- #36948 对 TUI 中的对话历史进行分页 @copyberry
- #36949 改进分页 TUI 历史加载 @copyberry
- #36950 对 TUI 对话历史进行分页 @copyberry
- #36951 强化 TUI 中分页历史处理 @copyberry
- #36952 添加持久的每线程用户提交队列 @copyberry
- #36954 添加工具注册表冲突策略配置 @copyberry
- #36956 在远程压缩期间保持图像调整大小通知附着 @copyberry
- #36959 跟踪外部代理会话中检测到的连接器 @copyberry
- #36960 信任本地项目目录前进行提示 @copyberry
- #36963 在拉取请求正文中链接 Codex 归属 @copyberry
- #36964 导入外部会话时保留工作目录 @copyberry
- #36966 允许禁用内置图像查看器 @copyberry
- #36967 安装插件时跳过符号链接 @copyberry
- #36970 使令牌预算上下文身份可配置 @copyberry
- #36976 遵循仅显式编排器技能 @copyberry
- #36977 改进迁移会话的连接器检测 @copyberry
- #36979 在 blob 大小工作流中添加 Fence 审计 @copyberry
- #36981 为 Amazon Bedrock 启用远程压缩 @copyberry
- #36983 为受信任的暂存 MCP 服务器保留 ChatGPT 认证 @copyberry
- #36984 在 HTTP 客户端中支持配置的 ChatGPT Cookie @copyberry
- #36986 为 ChatGPT 请求添加进程级 PSP 路由 @copyberry
- #36987 添加可选的并发执行服务器请求分发 @copyberry
- #36989 保留共享的捆绑技能缓存 @copyberry
- #36990 移除旧版协作模式变体 @copyberry
- #36992 允许注入模型目录缓存 @copyberry
- #36993 支持分页线程的 `includeTurns` 读取 @copyberry
- #36998 在工具搜索中支持延迟自定义工具 @copyberry
- #37000 跨插件加载保持共享技能缓存最新 @copyberry
- #37020 强制执行严格工具名称冲突错误 @copyberry
- #37022 在 `functions` 命名空间下规范化默认工具 @copyberry
- #37027 强制执行代理插件运行时边界 @copyberry
- #37031 将权限配置文件更新应用于未来回合环境 @copyberry
- #37035 使注册表测试与规范工具名称对齐 @copyberry
- #37038 使用回合环境权限进行工具执行 @copyberry
- #37040 使用回合环境权限进行上下文与发现 @copyberry
- #37053 在严格工具模式下拒绝冲突的命名空间描述 @copyberry
- #37055 为网络安全模型添加更安全的 TUI 默认值 @copyberry
- #37066 在工具搜索中保留更长的 MCP 源描述 @copyberry
- #37068 在 macOS 上回退到进程级 MCP 清理 @copyberry
- #37083 整合统一执行输出状态 @copyberry
- #37101 在采样步骤间复用稳定的 MCP 绑定 @copyberry
- #37103 使用 Luna 进行 API 密钥 Guardian 审查 @copyberry
- #37109 规范交互式遥测关闭流程 @copyberry
- #37114 添加每会话代码模式执行限制 @copyberry
- #37128 将工具审批处理集中到 `Session` 中 @copyberry
- #37129 使 Windows 路径 URI 比较支持 ASCII 大小写不敏感 @copyberry
- #37132 在本地强制执行托管认证要求 @copyberry
- #37134 向模型报告提示词图片的缩放情况 @copyberry
- #37144 保留符号链接技能的发现路径 @copyberry
- #37145 根据模型能力限制应用的使用说明 @copyberry
- #37147 在注册过程中跟踪已配置环境的狀態 @copyberry
- #37149 通过世界状态管理项目编排器技能 @copyberry
- #37151 合并并发的 Git 状态扫描 @copyberry
- #37154 使用 Azure Key Vault 进行 macOS 公证 @copyberry
- #37156 测试远程环境在选中前报告就绪状态 @copyberry
- #37157 强化 TUI 中命名会话的查找机制 @copyberry
- #37162 通过 skills 扩展加载主机技能根目录 @copyberry
- #37166 保持文本区域的光标和渲染内容在视口内 @copyberry
- #37167 向 MCP 贡献者暴露会话源 @copyberry
- #37168 约束远程 MCP 握手 HTTP 请求 @copyberry
- #37169 将插件技能快照集成测试移至核心模块 @copyberry
- #37174 将技能调用辅助函数集中到 `codex-skills` 中 @copyberry
- #37175 为分页历史记录添加旧版部署迁移 @copyberry
- #37177 将显式技能选择移至 skills crate @copyberry
- #37178 在 app-server 项中保留图像透明度元数据 @copyberry
- #37188 为搜索工具保留 `tool_search` 命名空间 @copyberry
- #37189 在世界状态中跟踪多智能体使用提示 @copyberry
## New Features
- Install portable Agent Plugins and search across local, personal, workspace, and remote plugin catalogs. (#36544, #36409, #36919, #36796)
- Organize conversations into persistent, manually ordered sections and browse long transcripts incrementally. (#35722, #36007, #36380, #36948, #36950)
- Enable automatically reviewed approvals with the new `--approve-for-me` CLI flag. (#36373)
- Import Cursor-managed skills and synchronize changes to imported Claude and Cursor conversations without creating duplicates. (#36361, #36356, #35623)
- Support the opt-in MCP 2026-07-28 protocol, including paginated discovery, multi-round requests, and non-blocking server startup. (#35724, #35725, #35590, #35742)
- Enable cached web search and remote conversation compaction for Amazon Bedrock. (#36938, #36981)
## Bug Fixes
- Redact secrets and complete bearer tokens from displayed commands and replayed conversation history. (#36893, #36908)
- Prevent lost or stalled terminal input when focus returns, MCP servers initialize, or Ghostty handles keyboard shortcuts. (#35649, #35957, #36834)
- Correct rendering and cursor positioning for Japanese characters, emoji, hyperlinks, and text near viewport boundaries. (#35960, #35962, #37166)
- Properly interrupt Windows background processes and handle Windows filesystem paths consistently. (#35655, #35851, #37129)
- Require explicit trust for unfamiliar local projects and enforce managed authentication restrictions before credentials are used. (#36960, #37132)
- Harden plugin isolation and deny network access when policy updates fail. (#37027, #36967, #36037)
## Documentation
- Improve the bundled OpenAI documentation skill with targeted official-source lookup and clearer guidance for Codex, model selection, and API workflows. (#36014)
## Chores
- Upgrade the MCP SDK to 3.0.0, Ratatui to 0.30.2, and V8 to 150.4.0. (#36001, #35959, #35831)
- Secure macOS release notarization using Azure Key Vault instead of exporting private signing keys. (#37154)
- Remove the deprecated `codex exec --full-auto` flag; use `--sandbox workspace-write` instead. (#36054)
- Stop publishing redundant Linux bundle archives; use the standard `codex-package-<target>` release archives. (#36342)
## Changelog
Full Changelog: https://github.com/openai/codex/compare/rust-v0.146.0...rust-v0.147.0
- #35590 Expose cached MCP tools before server startup @copyberry
- #35594 Recommend longer waits in the v2 wait_agent schema @copyberry
- #35595 Allow alpha hotfix versions in R2 releases @copyberry
- #35597 Add metrics for extension-rendered skill catalogs @copyberry
- #35607 Record metrics for empty skill catalogs @copyberry
- #35608 Support model-owned token budget defaults @copyberry
- #35621 Skip restored token usage replay for exec resumes @copyberry
- #35623 Parse Claude and Cursor session records separately @copyberry
- #35642 Make OpenTelemetry provider shutdown idempotent @copyberry
- #35644 Preserve thread metadata when rollout files are missing @copyberry
- #35649 Preserve TUI input when terminal focus returns @copyberry
- #35652 Enable network policy callbacks for remote exec @copyberry
- #35653 Test developer instruction inheritance for multi-agent workers @copyberry
- #35655 Terminate Windows non-TTY processes on interrupt @copyberry
- #35656 Preserve multi-agent settings across config representations @copyberry
- #35661 Place host skills before permission instructions @copyberry
- #35663 Evaluate character matching over skill routing metadata @copyberry
- #35665 Fix the async watcher test harness on Windows @copyberry
- #35668 Expose the network proxy spec constructor @copyberry
- #35670 Raise the Windows exec yield floor to 10 seconds @copyberry
- #35671 Route curated plugins by authentication mode @copyberry
- #35675 Prepare MCP and plugin recommendations concurrently @copyberry
- #35678 Preserve paginated thread metadata across resumes @copyberry
- #35685 Load cloud-managed profiles for `codex sandbox` @copyberry
- #35688 Point crossterm patch to the OpenAI OSS fork @copyberry
- #35689 Preserve item timestamps in thread history projections @copyberry
- #35691 Include empty-preview threads in relationship listings @copyberry
- #35693 Refresh the subagent picker in the background @copyberry
- #35695 Honor the configured SQLite home in the logs client @copyberry
- #35708 Add configurable developer instructions for v2 subagents @copyberry
- #35715 Support streaming bodies in route-aware HTTP requests @copyberry
- #35717 Reuse route-aware clients for OpenAI file uploads @copyberry
- #35720 Upgrade rmcp to 3.0.0-beta.3 @copyberry
- #35721 Honor disabled code mode fallback without a process host @copyberry
- #35722 Add persisted sections for organizing threads @copyberry
- #35724 Add MCP 2026-07-28 discovery support @copyberry
- #35725 Complete MCP 2026 client support @copyberry
- #35738 Add bounded metadata for executed tool calls @copyberry
- #35742 Avoid blocking turns on optional MCP startup @copyberry
- #35744 Keep agent registry identities consistent @copyberry
- #35766 Emit host skill budget warnings from world state @copyberry
- #35769 Share the skills budget across host and executor catalogs @copyberry
- #35772 Throttle models cache TTL renewals @copyberry
- #35773 Scale skill metadata budgets with context windows @copyberry
- #35777 Resolve MCP tool catalogs concurrently @copyberry
- #35779 Load thread titles concurrently during session startup @copyberry
- #35785 Support self-serve Business ProLite accounts @copyberry
- #35787 Gate paginated thread history on the state database @copyberry
- #35794 Wait for MCP readiness in the curated sync test @copyberry
- #35802 Tag reports with the selected turn's model and effort @copyberry
- #35806 Route MCP OAuth through configured HTTP clients @copyberry
- #35814 Use configured HTTP clients for all MCP OAuth requests @copyberry
- #35818 Advance latest-alpha-cli after release publishing completes @copyberry
- #35821 Use the shared HTTP client for TUI network checks @copyberry
- #35825 Use the shared HTTP client for announcement tips @copyberry
- #35828 Enforce centralized SQLite connection creation @copyberry
- #35830 Route WebRTC sideband joins to the Realtime API @copyberry
- #35831 Update rusty_v8 to 150.4.0 @copyberry
- #35835 Track parent turns for nested Codex requests @copyberry
- #35836 Clean up cancelled MCP elicitation requests @copyberry
- #35837 Expose plugin eligibility metadata in app-server summaries @copyberry
- #35839 Decouple recommended plugins from tool suggestions @copyberry
- #35840 Handle legacy MCP discovery prevalidation errors @copyberry
- #35843 Tie remote exec servers to their parent stdin @copyberry
- #35845 Support plaintext collaboration tool messages @copyberry
- #35850 Preserve foreign paths in background terminal listings @copyberry
- #35851 Normalize Windows namespace paths in path URIs @copyberry
- #35854 Box app-server event payloads @copyberry
- #35856 Resolve imported connectors by MCP server name @copyberry
- #35857 Add Bazel unit test targets for Rust binaries @copyberry
- #35859 Expose plugin installation timestamps in app-server summaries @copyberry
- #35870 Include session titles in external agent import history @copyberry
- #35874 Mark the primary environment in model context @copyberry
- #35875 Allow environment readiness updates in place @copyberry
- #35878 Use step environments for MCP file uploads @copyberry
- #35886 Show blocked goals as stalled in the TUI @copyberry
- #35887 Clean up side conversations in the background @copyberry
- #35895 Inherit ready step environments when spawning agents @copyberry
- #35937 Let unrelated tools run while MCP servers start @copyberry
- #35941 Bound MCP namespace descriptions @copyberry
- #35942 Update tests for current tool call and app-server event types @copyberry
- #35944 Report direct input capability for listed subagents @copyberry
- #35957 Fix TUI input queue handling during MCP startup @copyberry
- #35959 Upgrade Ratatui to 0.30.2 @copyberry
- #35960 Preserve hyperlink cell widths during terminal diffing @copyberry
- #35962 Fix TUI layout for halfwidth Japanese sound marks @copyberry
- #35982 Avoid cloning rollout history when truncating forks @copyberry
- #35989 Display title-only reasoning summaries in the TUI @copyberry
- #35990 Test exec-server compatibility across Codex versions @copyberry
- #35992 Group external agent config migration into a module @copyberry
- #35997 Remove obsolete rusty_v8 146.4.0 Bazel targets @copyberry
- #36001 Upgrade rmcp to 3.0.0 @copyberry
- #36002 Resolve MCP file uploads with environment-native paths @copyberry
- #36006 Reduce response serialization and rollout scan overhead @copyberry
- #36007 Add persisted manual ordering for thread sections @copyberry
- #36008 Route pet asset downloads through the shared HTTP client @copyberry
- #36011 Share optional MCP startup grace across connection sets @copyberry
- #36014 Refine OpenAI docs skill source routing @copyberry
- #36020 Avoid cloning ignored analytics notifications @copyberry
- #36030 Increase the app-server tracing test stack size @copyberry
- #36031 Load cloud-managed servers in MCP CLI commands @copyberry
- #36033 Use the shared HTTP client in codex-protocol @copyberry
- #36035 Exit the stdio app-server when its connection closes @copyberry
- #36036 Allow naming forked chats from the TUI @copyberry
- #36037 Deny network access when an allow amendment fails @copyberry
- #36039 Limit MCP catalog pagination @copyberry
- #36043 Document the Responses API proxy reqwest exception @copyberry
- #36045 Distinguish unknown MCP authentication status @copyberry
- #36047 Extract MCP environment headers into a local variable @copyberry
- #36049 Keep tool-call metrics out of Statsig exports @copyberry
- #36051 Avoid overwriting symlinked migration targets @copyberry
- #36054 Remove legacy `--full-auto` handling from `codex exec` @copyberry
- #36055 Expose MCP read-only hints in tool call items @copyberry
- #36076 Remove codex-core's direct reqwest dependency @copyberry
- #36078 Route Ollama through the shared HTTP client @copyberry
- #36083 Handle fractional rate limits in thread history projection @copyberry
- #36092 Correlate image requests and explicit interrupts with turns @copyberry
- #36119 Unify tool runtime assembly before router construction @copyberry
- #36120 Delegate readiness waits to tool runtimes @copyberry
- #36121 Sandbox executor skill resource reads @copyberry
- #36124 Respect filesystem permissions during capability discovery @copyberry
- #36127 Centralize tool registration and protect host tools @copyberry
- #36128 Preserve delegated tasks across remote compaction @copyberry
- #36129 Resolve normalized tool name collisions in code mode @copyberry
- #36133 Preserve executor workspace permissions for apply_patch @copyberry
- #36138 Isolate apply-patch permission test variants @copyberry
- #36139 Bound the code mode output termination test @copyberry
- #36140 Wait for memory consolidation shutdown before finishing jobs @copyberry
- #36146 Stabilize approval scenario tests @copyberry
- #36148 Harden the file change approval integration test @copyberry
- #36149 Strengthen session file change approval coverage @copyberry
- #36165 Stabilize file approval replay test @copyberry
- #36166 Make pending realtime sideband test deterministic @copyberry
- #36167 Harden the auto-review model override test @copyberry
- #36168 Make tool telemetry tag collection synchronous @copyberry
- #36171 Test workspace-root patch protection for metadata @copyberry
- #36177 Test remote Guardian network approval scoping @copyberry
- #36181 Record attempted tool calls in response metadata @copyberry
- #36183 Use permission profiles throughout sandbox execution @copyberry
- #36184 Coalesce concurrent remote metadata requests @copyberry
- #36187 Refresh environment dates from the configured clock @copyberry
- #36188 Make thread history projection resilient to malformed rollouts @copyberry
- #36191 Label explicit skill injection metrics @copyberry
- #36194 Avoid shifting bytes in streaming output buffers @copyberry
- #36207 Record normalized sandbox violation events @copyberry
- #36212 Precompute app-server protocol exports @copyberry
- #36217 Run code mode exclusively through the standalone host @copyberry
- #36218 Expose connector candidates in external agent detection @copyberry
- #36221 Ignore passthrough metadata when reconciling rollout items @copyberry
- #36223 Preserve executor paths in read command actions @copyberry
- #36228 Support Enterprise automation account plans @copyberry
- #36237 Ignore symbolic slash-tmp permissions on Windows @copyberry
- #36239 Refresh precomputed app-server protocol exports @copyberry
- #36264 Prefer the bundled resource for the code mode host @copyberry
- #36271 Derive report prompt hashes from persisted rollouts @copyberry
- #36306 Restrict hosted MCP credentials to local environments @copyberry
- #36309 Use the host skill provider catalog in world state @copyberry
- #36310 Isolate MCP OAuth credentials by environment @copyberry
- #36311 Include skills in debug prompt input output @copyberry
- #36327 Preserve discovery order for host skill path aliases @copyberry
- #36329 Restrict `shell_command` to a single local environment @copyberry
- #36336 Detect connectors used in external agent sessions @copyberry
- #36339 Enable skills in the MCP server @copyberry
- #36342 Stop publishing legacy Linux bundle archives @copyberry
- #36350 Require explicit sandbox permissions with shell justifications @copyberry
- #36351 Use model catalog collaboration mode messages @copyberry
- #36354 Pass sessions directly to session tasks @copyberry
- #36355 Keep MCP tool calls bound to their thread @copyberry
- #36356 Sync updates to imported external agent sessions @copyberry
- #36357 Use the step-scoped router for tool execution @copyberry
- #36359 Consolidate MCP config editing in codex-core @copyberry
- #36360 Use MCP bindings as the step tool catalog @copyberry
- #36361 Migrate Cursor-managed skills into Codex @copyberry
- #36364 Move skill catalog rendering out of core @copyberry
- #36365 Add strict automatic review for MCP elicitations @copyberry
- #36367 Keep effective tool exposure in the registry @copyberry
- #36372 Run native Windows Bazel tests with MSVC @copyberry
- #36373 Add an `--approve-for-me` CLI flag @copyberry
- #36374 Enable sandboxed V8 for code mode @copyberry
- #36378 Load local session pickers from the state DB first @copyberry
- #36380 Add thread section management APIs @copyberry
- #36384 Load turn summaries with paginated queries @copyberry
- #36385 Add acknowledged user message submission to core @copyberry
- #36388 Track image preparation details in turn analytics @copyberry
- #36389 Enforce single-writer ownership for all thread histories @copyberry
- #36393 Avoid redundant filesystem probes @copyberry
- #36402 Declare the experimental plugin search API @copyberry
- #36408 Allow custom Codex instructions for realtime transitions @copyberry
- #36409 Implement remote plugin search @copyberry
- #36410 Make user input blocking behavior explicit @copyberry
- #36411 Use Git repositories as pre-tool hook test markers @copyberry
- #36413 Add a realtime delegation acknowledgement control @copyberry
- #36440 Extract exec-server request dispatching @copyberry
- #36482 Avoid querying terminal size on every TUI redraw @copyberry
- #36485 Increase remote plugin bundle size limits @copyberry
- #36507 Retain attempted tool metadata across prompts @copyberry
- #36511 Support two-stroke TUI key chords @copyberry
- #36534 Raise the MCP catalog item limit to 2,048 @copyberry
- #36544 Support portable Agent Plugins throughout installation @copyberry
- #36632 Preserve SQLite thread metadata during goal mutations @copyberry
- #36635 Expose onboarding hints in login completion notifications @copyberry
- #36641 Capture rollout budget units from response usage @copyberry
- #36715 Use provider-reported rollout budget units @copyberry
- #36716 Deduplicate MCP resource operation handling @copyberry
- #36727 Simplify turn metadata state ownership @copyberry
- #36729 Correlate code mode tool analytics with model responses @copyberry
- #36732 Stabilize the cloud environment HTTP test @copyberry
- #36734 Deduplicate MCP resource list handling @copyberry
- #36740 Store turn skill state in extension data @copyberry
- #36742 Simplify contextual user fragment registration @copyberry
- #36744 Store the extension registry directly in its builder @copyberry
- #36745 Consolidate apply_patch runtime execution @copyberry
- #36757 Wait for patch events before reading shell snapshots @copyberry
- #36759 Harden the TUI focus palette regression test @copyberry
- #36764 Avoid building code-mode definitions during registration @copyberry
- #36769 Stabilize the startup Git enrichment integration test @copyberry
- #36770 Stabilize deferred goal fork testing @copyberry
- #36771 Harden Linux managed proxy helper lifecycles @copyberry
- #36772 Raise the host-owned Codex Apps catalog limit @copyberry
- #36773 Derive the active user config layer from the layer stack @copyberry
- #36774 Clarify config layer iteration APIs @copyberry
- #36779 Stabilize network policy event capture in concurrent tests @copyberry
- #36781 Add per-surface MCP tool exposure controls @copyberry
- #36782 Add Guardian session reuse and interruption tests @copyberry
- #36787 Consolidate model instructions in `ModelMessages` @copyberry
- #36792 Gate plugin usage instructions by model capability @copyberry
- #36793 Terminate timed-out Git process trees @copyberry
- #36796 Add Agent Plugins MCP config parsing @copyberry
- #36797 Normalize rusty_v8 checksum manifest line endings @copyberry
- #36800 Avoid reinjecting permissions after command approvals @copyberry
- #36807 Extract audio preparation into a utility crate @copyberry
- #36808 Prefer SQLite names for local session archive commands @copyberry
- #36809 Prefer the state database for `exec resume --last` @copyberry
- #36810 Add MCP client conformance regression gates @copyberry
- #36811 Honor per-environment login shell policy @copyberry
- #36812 Add a dual-WebSocket transport for code mode @copyberry
- #36815 Identify agents by name in token budget context @copyberry
- #36822 Fix typo in approval resolver name @copyberry
- #36825 Consolidate approval telemetry context @copyberry
- #36830 Time out stalled code-mode host requests @copyberry
- #36834 Avoid requesting key-release events in Ghostty @copyberry
- #36840 Keep API request metrics out of Statsig exports @copyberry
- #36856 Support deferred loading for freeform tools @copyberry
- #36857 Support custom tools in namespaces @copyberry
- #36862 Consolidate thread spawning behind a request object @copyberry
- #36871 Parallelize R2 asset publishing with DotSlash @copyberry
- #36877 Move executor skill bundle loading into the skills extension @copyberry
- #36880 Move direct executor skill discovery into the skills extension @copyberry
- #36882 Preserve complete MCP namespace descriptions @copyberry
- #36884 Add host skill root loading @copyberry
- #36892 Support leaf models in multi-agent v2 @copyberry
- #36893 Redact secrets from app-server command execution items @copyberry
- #36895 Handle late MCP startup results after lag timeout @copyberry
- #36898 Avoid redundant filesystem metadata probes @copyberry
- #36900 Register app tools independently of the connector list @copyberry
- #36901 Propagate updated permissions to review threads @copyberry
- #36903 Load skill interface metadata in the host loader @copyberry
- #36904 Limit RMCP logs persisted to SQLite @copyberry
- #36906 Preserve model providers when reloading v2 agents @copyberry
- #36908 Improve bearer token secret redaction @copyberry
- #36910 Negotiate MCP extensions per app-server session @copyberry
- #36912 Read approval policy from the current turn configuration @copyberry
- #36913 Move skill policy resolution into `codex-skills` @copyberry
- #36916 Centralize app enabled-state evaluation @copyberry
- #36917 Test explicit plugin mentions with disabled apps @copyberry
- #36919 Merge local plugins into plugin search results @copyberry
- #36921 Move the host skills service into the skills extension @copyberry
- #36924 Reject implicitly discovered bare Git repositories @copyberry
- #36930 Read turn permissions from the current configuration @copyberry
- #36935 Trust undecided local projects automatically @copyberry
- #36938 Enable cached web search for Amazon Bedrock @copyberry
- #36939 Include policy approval reasons in Guardian reviews @copyberry
- #36941 Use current session settings for review threads @copyberry
- #36943 Move host skill root resolution into the skills extension @copyberry
- #36945 Grant the blob size policy job read access to contents @copyberry
- #36947 Accept user input when starting idle turns @copyberry
- #36948 Paginate transcript history in the TUI @copyberry
- #36949 Improve paginated TUI history loading @copyberry
- #36950 Paginate TUI transcript history @copyberry
- #36951 Harden paginated history handling in the TUI @copyberry
- #36952 Add durable per-thread user submission queues @copyberry
- #36954 Add tool registry collision policy configuration @copyberry
- #36956 Keep image resize notices attached during remote compaction @copyberry
- #36959 Track connectors detected in external agent sessions @copyberry
- #36960 Prompt before trusting local project directories @copyberry
- #36963 Link Codex attribution in pull request bodies @copyberry
- #36964 Preserve working directories when importing external sessions @copyberry
- #36966 Allow disabling the built-in image viewer @copyberry
- #36967 Skip symlinks when installing plugins @copyberry
- #36970 Make token budget context identity configurable @copyberry
- #36976 Honor explicit-only orchestrator skills @copyberry
- #36977 Improve connector detection for migrated sessions @copyberry
- #36979 Add Fence auditing to the blob size workflow @copyberry
- #36981 Enable remote compaction for Amazon Bedrock @copyberry
- #36983 Preserve ChatGPT auth for trusted staging MCP servers @copyberry
- #36984 Support configured ChatGPT cookies in HTTP clients @copyberry
- #36986 Add process-scoped PSP routing for ChatGPT requests @copyberry
- #36987 Add opt-in concurrent exec-server request dispatch @copyberry
- #36989 Preserve shared bundled skill caches @copyberry
- #36990 Remove legacy collaboration mode variants @copyberry
- #36992 Allow injecting model catalog caches @copyberry
- #36993 Support `includeTurns` reads for paginated threads @copyberry
- #36998 Support deferred custom tools in tool search @copyberry
- #37000 Keep shared skill caches fresh across plugin loads @copyberry
- #37020 Enforce strict tool name collision errors @copyberry
- #37022 Canonicalize default tools under the `functions` namespace @copyberry
- #37027 Enforce Agent Plugin runtime boundaries @copyberry
- #37031 Apply permission profile updates to future turn environments @copyberry
- #37035 Align registry tests with canonical tool names @copyberry
- #37038 Use turn environment permissions for tool execution @copyberry
- #37040 Use turn environment permissions for context and discovery @copyberry
- #37053 Reject conflicting namespace descriptions in strict tool mode @copyberry
- #37055 Add safer TUI defaults for cyber models @copyberry
- #37066 Preserve longer MCP source descriptions in tool search @copyberry
- #37068 Fall back to per-process MCP cleanup on macOS @copyberry
- #37083 Consolidate unified exec output state @copyberry
- #37101 Reuse stable MCP bindings across sampling steps @copyberry
- #37103 Use Luna for API-key Guardian reviews @copyberry
- #37109 Bound interactive telemetry shutdown @copyberry
- #37114 Add per-session code-mode execution limits @copyberry
- #37128 Centralize tool approval handling in `Session` @copyberry
- #37129 Make Windows path URI comparisons ASCII-case-insensitive @copyberry
- #37132 Enforce managed authentication requirements locally @copyberry
- #37134 Report prompt image resizing to the model @copyberry
- #37144 Preserve discovery paths for symlinked skills @copyberry
- #37145 Gate Apps usage instructions by model capability @copyberry
- #37147 Track provisioned environment state across registration @copyberry
- #37149 Project orchestrator skills through world state @copyberry
- #37151 Coalesce concurrent Git status scans @copyberry
- #37154 Use Azure Key Vault for macOS notarization @copyberry
- #37156 Test remote environments reported ready before selection @copyberry
- #37157 Harden named session lookup in the TUI @copyberry
- #37162 Load host skill roots through the skills extension @copyberry
- #37166 Keep textarea cursors and rendering inside the viewport @copyberry
- #37167 Expose session sources to MCP contributors @copyberry
- #37168 Bound remote MCP handshake HTTP requests @copyberry
- #37169 Move plugin skill snapshot integration tests into core @copyberry
- #37174 Centralize skill invocation helpers in `codex-skills` @copyberry
- #37175 Add legacy rollout migration to paginated history @copyberry
- #37177 Move explicit skill selection into the skills crate @copyberry
- #37178 Preserve image transparency metadata in app-server items @copyberry
- #37188 Reserve the `tool_search` namespace for the search tool @copyberry
- #37189 Track multi-agent usage hints in world state @copyberry