Codex CLI 0.164 更新了什么?/presets 提示词预设、/model 一行切推理强度、Windows 公司代理(第三方 Key 实测)

Codex CLI 0.164.0 新增 10 个编号槽位的 /presets 预设、/model 和 /permissions 行内参数,修复 resume 恢复会话设置,并支持 Windows 公司代理的 Negotiate/NTLM 认证。本文引官方 release 原文讲清每项更新,并用第三方 API Key + 自定义 provider 实测 /presets、/model 切推理强度后的缓存命中和 resume。

5 分钟阅读
Codex CLI 0.164 更新了什么?/presets 提示词预设、/model 一行切推理强度、Windows 公司代理(第三方 Key 实测)

OpenAI 在 10 月 23 日发布了 Codex CLI 0.164.0。据 @thsottiaux 10 月 24 日的帖子,在 Codex 里中途改推理强度不会再让缓存失效;他在跟帖里汇总了这次 CLI 更新:提示词预设、行内模型和权限设置、企业 MCP 登录、修复长会话恢复失败、Windows 公司代理认证,并提到 CLI 的使用量自 DevDay 以来增长到 2 倍。

先说结论:

  • 新增 /presets:10 个编号槽位,存常用提示词或斜杠命令,打开菜单按数字键直接运行。
  • /model 支持行内参数,/model gpt-6.1-sol --reasoning=high 一行就能切模型和推理强度;/permissions 也能带参数。
  • 我们用本站 API Key + 自定义 provider 实测:中途把推理强度从 medium 切到 high、再切到 low,下一轮请求都还有缓存命中;codex resume --last 后保留了会话里切过的推理强度,没有被全局默认值覆盖。
  • Windows 下 HTTPS 和 WebSocket 连接能用当前登录用户的 Negotiate 或 NTLM 凭据通过公司代理认证。

创建 API Key →

0.164.0 更新一览

更新release 原文谁会用到
/presets 预设Save reusable prompts and slash commands in ten numbered /presets slots, with a keyboard menu for quick access.经常重复同一段提示词或命令的人
行内 /model、/permissionsSet model, reasoning effort, speed, and permission profiles directly with inline /model and /permissions arguments.需要频繁切推理强度、权限的人
远程 Bash 遮蔽凭据Mask credentials during supported remote Bash commands and Zsh snapshot sessions, including credentials from custom providers.在远程环境跑 Codex、用自定义 provider 的人
resume 恢复设置Resuming sessions now finds compressed histories and restores saved thread settings instead of replacing them with global defaults.常用 resume 接着干活的人
Windows 公司代理Windows HTTPS and WebSocket connections now handle proxy authentication challenges using the signed-in user’s Negotiate or NTLM credentials.公司内网走认证代理的 Windows 用户

其他更新还包括:终端支持 Kitty 或 Sixel 时可在全屏记录里预览图片;企业 MCP 连接支持 Codex 账号授权或单独登录;Amazon Bedrock 设置向导默认开启;压缩失败不再在历史里留下半截摘要;-c 或 --config 出现在多级子命令时不再丢失覆盖项。

版本和前提

先确认版本:

bash
codex --version
# 低于 0.164.0 就升级
npm i -g @openai/codex@latest

还没装的可以看Codex 安装教程。我们这次实测用的是全局 ~/.codex/config.toml 里的自定义 provider,写法和Codex config.toml 配置教程一致:

toml
model = "gpt-6.1-sol"
model_reasoning_effort = "medium"
model_provider = "aicodewith"

[model_providers.aicodewith]
name = "aicodewith"
base_url = "https://api.aicodewith.ai/chatgpt/v1"
wire_api = "responses"
experimental_bearer_token = "你的 API Key"

国内网络和 Key 的准备步骤见国内使用 Codex 教程。

/presets:10 个提示词预设槽位

怎么存

在 Codex 里输入 /presets,第一次打开会显示 No presets saved. Press n to create one.。菜单底部的按键是:

text
n · new   s · from settings   e · edit   d · delete   esc · close
  • 按 n 新建:输入一段提示词或斜杠命令,回车后选槽位,槽位是 1 到 9 和 0,一共 10 个。保存后提示 Saved preset 1. 这样的编号。
  • 按 s 从当前设置生成:会列出当前模型、权限、终端标题、状态栏对应的完整命令,选一项就存成预设。

codex-0-164-presets-from-settings-terminal

这个列表顺带告诉了你行内参数的完整写法,比如当前权限对应 /permissions :workspace --approval-policy=on-request --reviewer=user。

我们实测,预设保存在 ~/.codex/config.toml 里,每个槽位一段:

toml
[tui.presets.1]
input = "Review the staged diff and list bugs as a numbered list."
label = ""

所以也可以直接编辑这个文件批量维护预设。

怎么调

输入 /presets 打开菜单,按槽位对应的数字键就会直接运行该预设,不用再回车确认。

codex-0-164-presets-terminal

预设里存的是斜杠命令时,运行效果和手动输入一样。要注意参数写法:我们一开始存了 /model gpt-6.1-sol high,运行时客户端报错:

text
Unexpected argument 'high'. Use '--reasoning=<level>' or '--speed=<tier>'.

改成 /model gpt-6.1-sol --reasoning=high 后正常切换。

/model 一行切推理强度

用法

text
/model gpt-6.1-sol --reasoning=high
/model --reasoning=low

只写 --reasoning 不写模型名也可以,会保留当前模型只改推理强度。切换后提示:

text
Model changed to gpt-6.1-sol high for this session only

注意 for this session only:行内切换只对当前会话生效,不改 config.toml 里的默认值。底部状态栏会同步显示新的推理强度。

codex-0-164-model-inline-terminal

也可以用快捷键:按 ? 打开的快捷键表里,alt+, 是 Less reasoning,alt+. 是 More reasoning。

切换后缓存还命中吗

我们在同一个会话里连发了几轮短问题,中间切了两次推理强度,从会话记录里读每轮的 cached_input_tokens:

轮次推理强度输入 tokens缓存命中 tokens
1medium159961642
2medium1603712120
3切到 high1607410041
4切到 low161356232
5resume 后 low1616212218

第 1 轮是冷启动,命中少很正常;第 3、4 轮是刚切完推理强度的第一轮,仍然有缓存命中,没有退回到冷启动的水平。这和 @thsottiaux 说的「改推理强度不再让缓存失效」一致。每轮命中多少会有波动,以你自己会话里的数字为准。

几轮问答每轮耗时在 2 到 11 秒。

resume 恢复会话设置

release 原文:Resuming sessions now finds compressed histories and restores saved thread settings instead of replacing them with global defaults。

实测步骤:全局默认是 medium,会话里用 /model --reasoning=low 切到 low,退出后执行:

bash
codex resume --last

恢复后状态栏显示 GPT-6.1-Sol low,再发一轮,会话记录里这一轮的推理强度仍是 low,没有被全局的 medium 覆盖,缓存也照常命中(见上表第 5 轮)。

codex-0-164-resume-terminal

远程 Bash 遮蔽凭据

release 原文:Mask credentials during supported remote Bash commands and Zsh snapshot sessions, including credentials from custom providers。

对用 experimental_bearer_token 配自定义 provider 的人来说,意思是在支持的远程 Bash 命令和 Zsh 快照会话里,provider 的凭据也在遮蔽范围内。即便如此,Key 只放在 config.toml 里,不要写进项目文件或贴进对话。

Windows 公司代理 Negotiate/NTLM

0.164.0 起,Windows 上的 HTTPS 和 WebSocket 连接遇到代理认证质询时,会用当前登录 Windows 用户的 Negotiate 或 NTLM 凭据应答。在 Windows 上用 Codex,可以配合看Codex VS Code Windows 教程。

第三方 API 下要注意什么

  • 本文实测全程用本站 Key + 全局 config.toml 自定义 provider,模型 gpt-6.1-sol,/presets、/model 行内参数、resume 都正常。
  • 自定义 provider 用 experimental_bearer_token 写 Key,不需要额外的环境变量。
  • 行内 /model 只改当前会话。想长期改默认推理强度,还是改 config.toml 里的 model_reasoning_effort。
  • 常用的日常操作可以看Codex 怎么用。

常见问题

Codex CLI 0.164 怎么升级?

npm i -g @openai/codex@latest,然后 codex --version 确认是 0.164.0 或更高。

/presets 存在哪里?

全局 ~/.codex/config.toml 的 [tui.presets.N] 段,N 是槽位号。可以在菜单里按 e 编辑、d 删除,也可以直接改文件。

/presets 怎么快速运行?

输入 /presets 打开菜单,按槽位数字键直接运行。

Codex 怎么切换推理强度?

/model --reasoning=high 这样一行切换,或用 alt+,、alt+. 快捷键。写成 /model gpt-6.1-sol high 会报 Unexpected argument 'high'。

中途切推理强度会让缓存失效吗?

我们用第三方 Key 实测,切到 high 和 low 之后的第一轮都还有缓存命中。

resume 之后模型设置还在吗?

0.164.0 起会恢复会话里保存的设置。我们实测 codex resume --last 后保留了会话中切过的 low,没有回到全局默认。

Windows 公司代理要额外配置吗?

release 说明是自动用当前登录用户的 Negotiate 或 NTLM 凭据应答代理认证质询,没有提到需要新增配置项。

创建 API Key →