Codex CLI 在 VPS 上登录时卡在浏览器回调,通常不是账号密码错误,而是远程服务器无法接收本机浏览器返回的登录结果。先运行设备码登录,让授权在有浏览器的电脑或手机上完成,VPS 终端只负责等待结果。
先确认当前登录状态
在 VPS 执行:
if codex login status; then
echo "Codex 已有有效登录"
else
echo "需要重新登录"
fi如果状态显示已登录,就不要重复授权;此时应继续检查工作区或套餐权限。状态无效时再执行 codex logout 清除旧凭据,避免过期会话干扰新登录。
无图形界面时用设备码
codex login --device-auth终端会给出授权地址和一次性代码。在自己的电脑或手机打开该地址,登录正确的 ChatGPT 账号并输入代码,然后回到 VPS 等待完成。设备码选项需要先在个人账号安全设置中启用;团队账号则可能需要管理员开放相应权限。
看不到设备码选项怎么办
先确认 Codex CLI 已更新,再检查账号或工作区是否允许设备码登录。如果仍不可用,可以在本地建立 SSH 端口转发,让标准浏览器登录的本地回调回到 VPS;默认回调使用 localhost:1455。
自动化任务不要依赖浏览器登录
CI、定时脚本等无人值守任务更适合 API Key。把密钥放进服务器环境变量或密钥管理器,再通过标准输入登录:
printenv OPENAI_API_KEY | codex login --with-api-keyAPI Key 按 API 用量计费,也不等同于 ChatGPT 工作区权限。不要把密钥或 ~/.codex/auth.json 粘贴到聊天、日志或代码仓库;最后再用 codex login status 确认当前实际采用的是哪种登录方式。