Codex CLI 401 表示处理请求的服务器拒绝了身份验证。最快且最有用的检查,是同时核对目标主机、所选提供商和凭证来源。空环境变量只是可能性之一,并非每个 401 的解释。请沿着与你的配置相符的分支排查。
先确定哪条连接失败
| 失败点 | 可能涉及的范围 | 首先检查 |
|---|---|---|
| ChatGPT 登录或令牌刷新 | 已存储的账户会话 | 当前登录状态和目标工作区 |
| 向 OpenAI API 发出的请求 | 平台凭证和项目 | 密钥有效性和项目访问权限 |
| 向自定义网关发出的请求 | 该提供商的配置 | 主机、提供商 ID 和命名环境变量 |
| 只有 MCP 或外部工具失败 | 该工具单独的登录状态 | 工具名称及其身份验证 |
如果存在,请保存状态、错误文本、时间戳和请求 ID。分享详情前,移除授权标头、密钥和令牌。不要将 auth.json 粘贴到支持工单中:它可能包含凭证。一个集成的错误不能证明模型连接已损坏。
1. 检查 CLI 和登录方式
codex --version
codex login status
# POSIX shell: report presence only, without printing the secret
if [ -n "${KUNAVO_API_KEY:-}" ]; then
printf 'KUNAVO_API_KEY is set\n'
else
printf 'KUNAVO_API_KEY is missing or empty\n'
fi在启动 Codex 的同一个终端中运行检查。如果你的提供商使用不同的 env_key,请替换存在性检查中的变量名。“已设置”只能确认存在一个值;不能证明该值是最新的,也不能证明目标地址接受它。
对于停止刷新的个人 ChatGPT 登录,请使用 codex logout,然后使用 codex login,再为目标账户完成浏览器流程。这会更改已存储的登录状态;并非每个自定义提供商错误都需要执行此步骤。在受管理的自动化环境中,请改用管理员规定的身份验证方式。参阅官方身份验证指南。
2. 将 API 密钥与其签发方和目标地址匹配
OpenAI Platform 密钥应使用 OpenAI API 路径。Kunavo 密钥应使用 Kunavo 路径。成功的 ChatGPT 浏览器登录不能验证网关密钥,网关余额也不是 OpenAI Platform 余额。在替换任何内容之前,检查错误中的实际主机。
在签发方的控制面板中,确认密钥仍然存在且处于活动状态。检查关联项目和任何访问限制。OpenAI API 错误参考将无效凭证、组织成员资格和 IP 允许列表失败列为身份验证错误。根据随附消息选择修正措施;反复创建密钥无法修复账户或网络策略。
3. 检查 Codex 使用的提供商配置
# Compare these non-secret fields with your intended provider.
model = "gpt-5-6-sol"
model_provider = "kunavo"
[model_providers.kunavo]
name = "Kunavo"
base_url = "https://api.kunavo.com/v1"
env_key = "KUNAVO_API_KEY"
wire_api = "responses"所选的 model_provider 必须与提供商区块匹配。env_key 字段用于指定变量;它不包含密钥本身。核对活动配置以及任何配置文件或命令行覆盖项,修正后重启 Codex。避免将无关的提供商区块复制到工作配置上。
OpenAI 的配置参考记录了 Responses 协议。以 /v1结尾的基础 URL 与完整的 /v1/responses 请求 URL 不同。即使身份验证成功,错误路径通常仍需要进行端点诊断。还要检查 requires_openai_auth:启用后,OpenAI 身份验证会优先于 env_key,具体说明见身份验证指南。
4. 更改一项内容,然后重试一个小任务
- 保留错误详情,并确定所选路径。
- 根据证据修正登录、凭证或提供商字段。
- 重启受影响的 CLI 或编辑器进程,使其获取新的设置。
- 在重新开始长时间编码任务之前,先运行一个小请求。
- 如果失败仍然存在,请向提供商发送经过脱敏的错误和请求 ID,而不是凭证。
之后出现的 429、余额警告或模型缺失错误属于新的诊断分支。保留身份验证修复,并处理下一个问题,不要撤销所有设置。Codex 限制指南区分了这些情况。对于 Kunavo 配置,请使用完整的 Codex 集成,并在你的控制面板中管理密钥。
常见问题
Codex CLI 401 是什么意思?
接收请求的服务器拒绝了身份验证。原因可能是账户会话过期、密钥无效或已撤销、凭证发送给了错误的提供商,或账户受到限制。在更换凭证之前,先确定目标地址和当前使用的身份验证路径。
codex login status 能验证自定义提供商的密钥吗?
它会报告 CLI 的登录状态,但不能证明由环境变量支持的自定义提供商接受其密钥。对于这条路径,请检查所选提供商、启动进程中的 env_key 变量,以及提供商的账户控制设置。
为什么密钥在一个终端中有效,却在我的 IDE 中失败?
这些进程可能拥有不同的环境变量、配置文件或配置。编辑器如果在变量设置之前启动,可能不会继承该变量。比较所选提供商和启动环境,修正相关设置后重启受影响的进程。
我应该删除 Codex 配置来修复身份验证吗?
先处理具体出错的登录设置或提供商设置。删除整个配置可能会移除无关设置,却无法解决被拒绝的凭证。保留现有配置,每次只进行一项有针对性的修正。
已于 2026 年 9 月 17 日检查官方文档和本地 CLI 帮助。按照这些检查步骤操作无需共享任何凭证。