一、问题背景
在 macOS 上使用 时,不少用户会在执行登录命令后遇到如下错误:
本文分析了在 macOS 上使用 Codex CLI 执行登录命令时出现 403 Forbidden 错误的原因。该问题源于 OAuth 本地回调机制在 macOS 环境下的不稳定性,受网络代理或浏览器隐私策略影响。官方 Issue #2414 未提供修复方案。建议用户使用 --device-auth 参数进行设备认证登录,或在工程场景下直接使用 API Key 环境变量配置,避免依赖不稳定的默认登录流程。

在 macOS 上使用 时,不少用户会在执行登录命令后遇到如下错误:
codex login Token exchange failed: token endpoint returned status 403 Forbidden
典型表现为:
该问题在 GitHub 上已有记录,对应 openai/codex 仓库的 issue #2414,但官方并未给出明确的修复说明。
常见的完整流程是:
codex login403 Forbidden Token exchange failed
此时 Codex CLI 无法正常使用。
codex login 默认采用的是 本地 OAuth 回调机制:
localhost:1455)在 macOS 环境中,这一步 非常容易失败,常见触发条件包括:
| 原因 | 说明 |
|---|---|
| VPN / 公司代理 | OAuth token exchange 请求被拦截 |
| localhost 回调失败 | 浏览器无法正确访问本地端口 |
| 浏览器隐私策略 | Safari / Chrome 隔离本地回调 |
| Codex CLI 本身缺陷 | Issue #2414 已确认 |
⚠️ 重点结论:
这不是账号问题,也不是用户操作问题,而是 OAuth 登录链路在 macOS 上不稳定。
👉 因此,不要继续强行使用 codex login 默认方式。
这是目前 成功率最高、最稳定 的方式。
codex login --device-auth
终端会输出类似内容:
Open this URL in your browser: https://openai.com/device Enter code: XXXX-XXXX
这是目前 事实上的官方兜底方案。
如果你之前多次失败,建议先清理本地缓存:
rm -rf ~/.codex codex login --device-auth
如果你是:
完全没必要使用 CLI 登录。
export OPENAI_API_KEY=sk-xxxx
优势:
codex login --device-auth
export OPENAI_API_KEY=xxx
codex login
macOS 上 Codex CLI 的 OAuth 登录存在已知缺陷(Issue #2414),
403 不是你的问题,直接使用--device-auth或 API Key 才是正确解法。

微信公众号「极客日志」,在微信中扫描左侧二维码关注。展示文案:极客日志 zeeklog
生成新的随机RSA私钥和公钥pem证书。 在线工具,RSA密钥对生成器在线工具,online
基于 Mermaid.js 实时预览流程图、时序图等图表,支持源码编辑与即时渲染。 在线工具,Mermaid 预览与可视化编辑在线工具,online
将字符串编码和解码为其 Base64 格式表示形式即可。 在线工具,Base64 字符串编码/解码在线工具,online
将字符串、文件或图像转换为其 Base64 表示形式。 在线工具,Base64 文件转换器在线工具,online
将 Markdown(GFM)转为 HTML 片段,浏览器内 marked 解析;与 HTML 转 Markdown 互为补充。 在线工具,Markdown 转 HTML在线工具,online
将 HTML 片段转为 GitHub Flavored Markdown,支持标题、列表、链接、代码块与表格等;浏览器内处理,可链接预填。 在线工具,HTML 转 Markdown在线工具,online