Codex / Claude Code · 小白

Codex 登录失败 account/read failed 怎么办

Codex 登录失败大多数是网络代理或登录态过期,换网络重新登录基本能恢复。Windows 还可能遇到 vcruntime140_1.dll 缺失或 Token exchange failed。

  • Codex
  • 登录
  • 排错
  • Windows
更新于 2026-06-01

一句话结论

登录失败大多是代理或登录态问题,换网络再登录一次能解;Windows 额外注意 DLL 缺失和端口占用。

适用场景

  • 首次安装 Codex 登录卡住
  • 之前能用,今天突然报 account/read failed
  • 换了 VPN 或网络后没法继续
  • Windows 上报 Token exchange failed 或 exit code 3221225781
  • 浏览器回调页面显示 can't reach this page

常见现象

  • 终端报 account/read failed during TUI bootstrap
  • 浏览器一直转圈打不开登录页
  • 登录后命令依然提示未登录
  • Windows 报 Sign-in could not be completed: Token exchange failed
  • 浏览器回调 localhost 端口无响应
  • Windows 报 exit code 3221225781(DLL 缺失)

原因解释

  • 网络无法访问 auth.openai.com / chatgpt.com 域名
  • 本地登录态文件 ~/.codex/auth.json 损坏或过期
  • 全局代理把 OpenAI 域名也走了境内通道
  • Windows 缺少 vcruntime140_1.dll(Visual C++ 运行时未安装)
  • 本地端口被占用导致 OAuth 回调失败
  • 防火墙或杀毒软件拦截了 Codex 的本地回调监听

解决步骤

  1. 先跑 codex login status 确认当前登录状态(返回 0 表示已登录)
  2. 确认本机能正常打开 chatgpt.com / auth.openai.com
  3. 退出登录并清除缓存:codex logout,然后删除 ~/.codex/auth.json
  4. 切换到稳定的代理或干净的网络环境(避免被 OpenAI 封禁的 IP)
  5. 重新执行 codex login,如果浏览器打不开就用 codex login --device-auth
  6. 登录成功后跑 codex login status 确认状态为已登录
  7. Windows 用户如果报 exit code 3221225781:安装 Microsoft Visual C++ Redistributable 最新版

可复制命令

# 检查当前登录状态
codex login status
# 退出并清除缓存
codex logout
rm -f ~/.codex/auth.json
# 重新登录(默认浏览器方式)
codex login
# 浏览器打不开时用设备码方式
codex login --device-auth
# 调试模式查看详细日志
RUST_LOG=debug codex login

仍然不行怎么办

  • 反复失败可以临时换 Claude Code 或 Cursor 顶替
  • Windows 上 Token exchange failed:关闭杀毒软件的网络防护,或临时关闭 Windows 防火墙再试
  • 浏览器回调失败:检查是否有其他程序占用了 Codex 需要的本地端口
  • 把 RUST_LOG=debug codex login 的完整输出发到排错入口

小白先准备什么

  1. 确认本机能正常打开 chatgpt.com 和 auth.openai.com(测试网络连通性)
  2. 确认代理/VPN 是全局模式还是分流模式,OpenAI 域名必须走海外节点
  3. 找到 Codex 的本地缓存目录:~/.codex/(可通过 CODEX_HOME 环境变量自定义)
  4. 准备一个备用网络环境(手机热点或另一个代理节点)
  5. Windows 用户:确认已安装 Microsoft Visual C++ Redistributable

验收标准

  • codex login status 返回退出码 0(表示已登录)
  • 进入 Codex TUI 后能正常显示界面,不报 account/read failed
  • 随便跑一条简单任务能正常返回结果
  • 切换网络后重新登录仍然正常

Windows 特有问题

  • exit code 3221225781:不是登录问题,是缺少 vcruntime140_1.dll。解决:安装 Microsoft Visual C++ Redistributable 2015-2022 最新版(x64)
  • Token exchange failed:通常是防火墙或杀毒软件拦截了 OAuth 回调。临时关闭网络防护再试
  • 浏览器回调 localhost 失败:检查是否有其他程序占用端口,或者用 codex login --device-auth 绕过
  • PowerShell 执行策略拦截:先执行 Set-ExecutionPolicy -Scope CurrentUser RemoteSigned

可复制排查提示词

把下面这段和报错信息一起发给 AI:

我的 Codex 登录失败,报错信息:

```
<粘贴完整报错>
```

我的环境:
- 操作系统:<Mac/Windows/Linux>
- 代理方式:<ClashX/V2Ray/无代理>
- 之前是否登录成功过:<是/否>
- codex login status 输出:<粘贴>

请帮我:
1. 判断是网络问题、登录态问题还是系统环境问题
2. 给出具体修复步骤
3. 如果需要清缓存,告诉我具体路径和命令

常见误区

  • 误区:反复执行 codex login 就能修好 → 应该先 codex logout 并删除 ~/.codex/auth.json 再重新登录
  • 误区:代理能上 Google 就一定能上 OpenAI → OpenAI 域名可能被单独屏蔽或限速,需要确认 auth.openai.com 可达
  • 误区:登录失败就是 Codex 的 Bug → 90% 是本地网络或登录态过期
  • 误区:换了 VPN 节点就行 → 有些节点 IP 被 OpenAI 封了,要换干净的住宅 IP
  • 误区:Windows 报错码看不懂就重装系统 → exit code 3221225781 只需要装一个 Visual C++ 运行时

参考来源

  • OpenAI Codex GitHub Issue #17800 account/read failed:https://github.com/openai/codex/issues/17800
  • OpenAI 社区 Token exchange failed 讨论:https://community.openai.com/t/codex-login-sign-in-could-not-be-completed-token-exchange-failed/1376953
  • OpenAI 社区 Windows OAuth 失败讨论:https://community.openai.com/t/codex-cli-login-fails-on-windows-auth-openai-com-reachable-via-curl-but-oauth-device-auth-fail/1381736
  • OpenAI 社区 vcruntime140_1.dll 问题:https://community.openai.com/t/windows-launch-failure-code-3221225781-root-cause-was-missing-vcruntime140-1-dll/1378391
  • Codex CLI 认证文档:https://github.com/openai/codex/blob/main/docs/authentication.md

相关问题

还卡着?

可以把截图、日志、需求单或当前页面链接发到 zhemuy@gmail.com。