OpenAI 于 10月29日发布的 Codex 新版本新增了在消息入队后恢复暂时卸载任务的功能,以及网络专项诊断。需要重新打开任务或排查连接问题的开发者,可根据情况选择恢复命令或诊断命令。

1. 将消息入队并重新打开任务的命令

线程是任务对话的单位。若线程已从内存卸载,可选择在消息入队后恢复该线程。下面的第一条命令提供此功能,第二条命令用于网络检查。

codex queue --resume
codex doctor --network-only

第二条命令重点诊断配置、连接状态,以及支持实时双向通信的 WebSocket 通信。排查连接问题时,可将检查重点放在网络方面。继续任务和调查通信状态分别有了对应的命令。

2. 重新打开任务也保留审批与用量

此次版本修复了线程恢复和分支过程中的设置保留问题,使已确认的审批及权限设置得以保留。分支是从现有对话创建新任务流程的功能。此项修复着重于在重新打开或分出的任务中维持先前确认的审批与权限状态。

推理 token 用量统计也会在恢复和分支之间延续。OpenAI 解释说,此项修复旨在防止过早压缩整理对话内容。除了恢复功能,用量统计过程也作了调整,以保持连续性。

默认线程卸载延迟缩短至 1分钟。卸载是指将任务从内存中移除。此变更与重新打开已卸载线程的选项一同实施,同时改变了任务从内存卸载的时机和之后的恢复路径。

恢复界面会按提供任务的系统分别保留列表分页位置和选择信息。从多个来源收集可恢复任务的操作,也改为各自独立处理。

从归档状态恢复父线程时,其下创建的子线程也会一并恢复。恢复流程的改进不仅涉及单个对话,也涵盖重新找到关联任务的过程。

3. 加强连接恢复与诊断依据

终端界面改进了连接中断后重新连接时的恢复过程,也修复了离线状态下处理退出命令的行为。除了新增用于调查连接问题的命令,实际断线时的处理也得到了改进。

此次调整会保留 WebSocket 连接测试的证据,同时遮蔽诊断详情中的敏感内容。这项修复兼顾了留下诊断所需记录,以及减少共享信息中的敏感部分。

连接远程应用服务器的客户端支持双方协商的 WebSocket 压缩,此次变更还包括记录应用服务器的 WebSocket 压缩统计。读取 GitHub 发布信息的请求增加了重试,并在各次尝试之间加入随机延迟。除连接诊断外,通信处理和重试方式也得到加强。

4. 恢复选项增加,检查范围也随之扩大

上传诊断资料时,现在也会包含直接关联的线程。这既有助于将关联任务纳入诊断,也扩大了共享范围。发送诊断资料的开发者因此有必要检查单个任务及其关联任务的信息。

队列命令现在会拒绝不受支持的选项。继续使用现有命令的开发者,需要确认原先使用的选项是否受支持。

Codex 0.166.0 的核心不仅在于新增重新打开任务的命令,还在于同时加强了审批与用量的连续性,以及调查连接问题的手段。