本页目标
本页用于把 Codex CLI 从未安装状态带到“可以安全登录并完成一次最小验证”的状态。 你将学会以下内容:- 判断自己应该使用 Windows 原生、macOS、Linux 还是 WSL。
- 在四个平台上安装 Codex CLI,并知道每条命令的运行位置。
- 检查安装目录和 PATH,处理“找不到命令”的分支。
- 使用 ChatGPT OAuth 登录,或在适合自动化的场景使用 API key。
- 在浏览器不可用、远程主机或代理环境下完成登录。
- 验证版本、帮助信息、登录状态和最小请求。
- 升级、卸载、清理登录凭据,并在失败时回滚到原状。
- 识别网络、权限、证书、沙箱和重复安装造成的常见错误。
codex --help、相关子命令的 --help 和 OpenAI 官方文档为准。
先确定使用方式
Codex CLI 是终端程序。它和桌面 App、IDE 扩展、网页入口不是同一个安装包。 如果你希望在项目目录中查看文件、提出任务、审批命令并检查 diff,CLI 是最直接的入口。 如果你只需要图形界面,请从官方 Codex 页面下载对应的桌面 App;不要把桌面 App 的安装说明当作 CLI 的安装说明。 本页重点是 CLI。桌面 App 是否支持你的系统、安装包架构和登录界面,以官方当前下载页为准。平台选择
Windows 用户通常先尝试原生 PowerShell。
当项目依赖 Linux shell、Linux 包管理器或 Linux 文件权限时,再选择 WSL2。
WSL1 不应作为新安装目标。是否支持某个旧版本 Windows 或 WSL 发行版,必须查看当前官方说明和本机帮助信息。
安装前的安全检查
安装命令会从网络下载程序或脚本。请先确认你在可信网络中,并且命令来自官方文档或你所在组织批准的来源。 不要把安装脚本保存到生产目录后直接执行。 不要把 API key 写进命令历史、Git 仓库、README、截图或工单。
不要为了绕过权限错误长期使用管理员权限或 sudo。
先创建一个专用测试目录,避免一开始就在包含客户数据的项目中试用:
Desktop 或 Core。
Git Bash 或 WSL 通常输出以 MINGW、Linux 等开头的信息。
一、Windows 原生安装
1. 准备 PowerShell
打开“开始”菜单,搜索并启动 PowerShell。 不要在 CMD 中执行irm、Invoke-RestMethod 或 $env:... 形式的命令。
查看 PowerShell 版本:
2. 使用官方 Windows 安装器
在 PowerShell 中运行官方安装命令:-ExecutionPolicy ByPass 只对本次启动的 PowerShell 生效。
它不等于永久修改系统执行策略。
irm 是 Invoke-RestMethod 的缩写。
iex 是 Invoke-Expression 的缩写。
执行前请核对 URL 是否来自当前 OpenAI 官方文档。
如果公司安全策略禁止下载并直接执行脚本,停止执行,改用组织批准的安装包或让管理员审核脚本。
安装成功时,安装器通常会提示安装目录、PATH 变更或重新打开终端的要求。
这些提示可能随版本变化,务必保留完整输出。
3. 重新打开终端
安装器修改 PATH 后,已经打开的 PowerShell 不一定能看到新值。 关闭当前窗口,重新打开 PowerShell。 然后运行:codex-cli ... 或其他格式,不要依赖固定文字。
只要命令成功返回版本信息,即可进入登录步骤。
4. Windows PATH 故障分支
如果看到:codex.exe 但当前命令不可用,说明其目录未加入 PATH,或当前窗口尚未刷新环境变量。
临时测试 PATH 可以使用:
Get-Command codex。
如果 where.exe codex 显示多个路径,先记录每个路径和版本:
二、macOS 安装
1. 识别芯片架构
在 Terminal 中运行:2. 使用官方安装器
在 Terminal 中运行官方 macOS/Linux 安装命令:curl 返回非零状态时,-f 会使 HTTP 错误直接失败,-sS 保留错误信息,便于定位。
安装结束后,记录安装器报告的文件路径和 PATH 提示。
如果需要无人值守安装,只有在你已确认本机帮助和官方文档仍支持该变量时才使用:
3. 检查 PATH
新开 Terminal 窗口后运行:~/.zshrc 是否已有 PATH 逻辑:
~/.bashrc;macOS 默认通常是 zsh。
不要把安装目录写死成别人的用户名。
4. macOS 权限分支
如果出现permission denied,先查看文件和目录权限:
sudo 覆盖安装。
如果你通过 Homebrew 管理工具,也可以使用官方支持的 Homebrew 方案(若本机帮助或官方文档仍列出):
三、Linux 安装
1. 确认发行版和 shell
运行:2. 安装 CLI
优先使用官方 shell 安装器:curl,先使用发行版批准的包管理器安装 curl,例如 Debian/Ubuntu:
sudo 前核对主机、软件源和组织权限。
安装器完成后,打开新 shell:
3. Linux PATH 分支
Bash 用户可以按安装器提示检查~/.bashrc 或 ~/.profile:
.bashrc,将同样的 PATH 设置放入发行版实际读取的文件,并重新登录。
4. Linux 依赖和沙箱分支
如果命令能启动但执行任务时报沙箱、权限或系统调用错误,先运行:bubblewrap、证书、伪终端或用户命名空间都可能导致任务失败。
先记录完整错误、发行版信息和 codex --version,再按官方支持矩阵补依赖。
四、WSL2 安装
1. 在管理员 PowerShell 启用 WSL2
以管理员身份打开 PowerShell,运行:2。
若当前发行版为 WSL1,可在确认名称后转换:
Ubuntu。
转换可能耗时,并且会占用磁盘空间;开始前备份重要数据。
2. 将仓库放在 Linux 文件系统
进入 WSL:~/code 或其他 Linux 路径:
/mnt/c/...。
Windows 挂载路径可能带来较慢的 I/O、权限差异和符号链接问题。
如果必须访问 Windows 文件,可在资源管理器打开 \\wsl$,但不要因此把所有构建目录都放回 /mnt/c。
3. 在 WSL shell 安装
不要在管理员 PowerShell 中执行 Linux 的curl | sh。
进入 WSL 后运行:
where.exe codex,以及在 WSL 运行 command -v codex,可能得到两个不同结果,这是正常的双环境现象。
4. WSL 网络和代理分支
WSL 可能不能自动继承 Windows 代理。 先在 WSL 中测试 DNS 和 HTTPS:localhost 端口直接假定为 WSL 的 localhost。
需要时查 Windows 主机地址,再按组织代理规范配置;完成后不要把代理账号密码写入 shell 历史。
五、PATH 的系统化排查
PATH 是系统寻找可执行文件的目录列表。 “已安装但找不到命令”通常是 PATH 没刷新、路径写错或存在多个安装。 macOS/Linux 使用:codex --version 返回 0。
如果路径有空格,始终使用引号访问文件系统路径。
如果更改 PATH 后仍无效,关闭所有相关终端并重新打开;IDE 内置终端也可能需要重启 IDE。
六、登录方式和选择建议
Codex 常见的两类认证是 ChatGPT OAuth 和 API key。
日常本地开发通常优先 OAuth。
自动化任务才考虑 API key,并使用密钥管理服务或 CI Secret。
不要把个人 API key 放进共享机器、公开仓库或未经审核的 MCP/插件配置。
具体套餐、额度和计费以官方 pricing 页面当前内容为准。
第三方模型提供商不是本页默认方案;它们还涉及 Responses API 或 Chat Completions 兼容性、配置文件和额外凭据风险,应单独核验官方文档。
七、使用 ChatGPT OAuth 登录
1. 从项目目录启动
先进入非生产测试目录:2. 预期成功信号
成功后,CLI 通常回到会话界面并允许输入任务。 界面文案可能不同,不能把某一个固定提示当作唯一成功标准。 可用以下低风险动作检查会话:/status,运行 codex --help 或查看会话内帮助,以本机提示为准。
3. OAuth 失败分支
如果浏览器没有自动打开,复制 CLI 提供的官方地址到浏览器。 如果授权后终端没有回到会话,先检查回调端口是否被防火墙、VPN 或安全软件拦截。 如果你在 SSH、服务器或无桌面环境中,跳到“设备码和远程登录”一节。 如果提示账号没有 Codex 权益,检查当前登录账号、工作区和官方套餐说明,不要用未经授权的他人账号。八、API key 登录
1. 创建和保护 key
只在 OpenAI Platform 官方页面创建 API key,并给它最小权限、合理预算和可追踪的使用范围。 创建后立即保存到密码管理器或 CI Secret。 不要在教程、脚本、配置文件中写真实 key。 以下命令中的<你的_API_KEY> 只是占位符。
2. 临时设置环境变量
macOS/Linux/WSL:3. 通过 CLI 登录
运行:4. API key 计费和撤销
API key 请求按 Platform 当前价格和用量规则计费,不等同于 ChatGPT 订阅额度。 建议设置预算、用量告警和项目级隔离。 发现 key 泄露时,立即在 Platform 后台撤销旧 key,创建新 key,并检查使用记录。 仅删除本地环境变量不能撤销已经泄露的远端凭据。九、设备码、远程主机和无浏览器环境
1. 先检查本机支持情况
运行:2. SSH 端口转发
如果 OAuth 回调需要回到远程主机,可在本地建立转发;端口号必须以当前 CLI 输出为准。 示例形式如下:codex login,再用本地浏览器完成授权。
3. 不要随意搬运认证文件
如果必须迁移认证缓存,先确认官方文档允许这种方式,并使用加密传输和最小权限。 认证文件可能包含可复用令牌,不能发邮件、提交 Git 或放进共享目录。 迁移结束后,检查目标机器权限,并在不用时退出登录或删除缓存。十、代理、证书和网络故障
1. 先区分安装失败和请求失败
安装脚本失败,通常是下载 URL、DNS、代理、证书或公司网关问题。 安装成功但登录失败,通常是 OAuth 回调、浏览器、账号权限或代理问题。 登录成功但任务请求失败,通常是 API 访问、超时、额度、模型或组织策略问题。 分别记录失败阶段,不要用“重装”覆盖线索。2. 测试 HTTPS
macOS/Linux/WSL:3. 临时代理环境变量
在组织代理明确要求 HTTP CONNECT 的情况下,macOS/Linux/WSL 可按代理文档设置:NO_PROXY 配得过宽,以免把本应经过企业网关的请求绕开审计。
代理变量的支持范围可能因安装器、CLI 和子进程不同而不同。
以当前官方网络说明和实际错误输出为准。
4. 证书错误
如果看到certificate verify failed、unable to get local issuer certificate 等信息,不要用关闭 TLS 校验的方式解决。
先检查系统时间、根证书、企业 HTTPS 检查策略和代理证书安装方式。
macOS/Linux 可确认 CA 包是否存在:
十一、版本和帮助验证
安装完成后,至少运行以下命令:--version返回版本信息并以成功状态结束。--help显示用法、选项或子命令。login --help显示当前版本实际支持的登录入口。
十二、最小验收任务
安装和登录都完成后,在空测试目录执行:Ctrl+C 或 /exit。
退出后检查:
十三、升级
升级前先记录当前版本和安装来源:codex --version、codex --help 和登录验证。
不要在升级失败时同时切换安装来源;先保留错误输出,避免出现多个二进制。
十四、卸载
卸载前确认你要删除的是哪个来源的 Codex:where.exe codex。
如果仍能找到 Codex,说明还有其他安装来源或 PATH 中残留的旧副本。
不要把项目目录、Git 数据或 ~/.codex 配置目录当作程序目录一起删除。
十五、退出登录和凭据清理
先查看当前版本支持的登录子命令:十六、常见错误与故障分支
command not found 的完整处理
先确认 shell 和 PATH:
登录后马上失败
先执行:400 协议或请求格式错误
如果你配置了第三方提供商,400 可能是接口协议不兼容,而不一定是 API key 错误。 检查第三方官方文档是否明确支持当前 Codex 所需的 API。 用codex --help 和官方配置文档确认当前配置字段。
先恢复官方 OpenAI 提供商验证 CLI 本身,再判断是否继续第三方配置。
十七、安全边界
只在你拥有权限的目录和账号下运行 Codex。 第一次任务使用空目录或脱敏副本。 涉及删除、迁移、数据库、部署、网络外发和生产凭据时,必须人工审批每一步。 不要批准你看不懂的命令,尤其是递归删除、修改权限、下载并执行未知脚本的命令。 不要让 API key 通过命令行参数、日志、环境回显或截图泄露。 把~/.codex、Windows 用户配置目录、SSH 配置和 CI Secret 当作敏感区域。
OAuth token、API key、设备码和回调 URL 都不应公开。
第三方代理、插件和 MCP server 可能读取请求上下文或凭据;启用前检查来源、权限和数据流向。
网络可达不代表目标可信;域名、证书、下载哈希和组织代理策略都应核对。
十八、回滚方式
未登录、未修改系统配置
删除测试目录即可;先确认目录内没有需要保留的文件:PATH 改动
先备份当前 shell 配置:升级失败
不要立即卸载所有版本。 保留当前版本、安装日志和command -v codex 输出。
如果安装器支持回退版本,按官方文档执行;否则恢复你在升级前保存的安装包或使用新的、经过验证的安装来源。
回滚后重新运行:
登录和凭据回滚
先执行当前版本支持的 logout 命令。 如果 key 泄露,撤销远端 key 并创建替代 key。 如果 OAuth 缓存损坏,用此前改名的.codex.backup-* 恢复前先确认其中没有过期或泄露的凭据。
Git 和项目文件回滚
本页的安装测试不应修改项目代码。 进入真实项目前,先检查:git restore、删除目录或重置分支。
十九、最终验收清单
逐项确认以下结果:- 已确认使用的是 Windows 原生、macOS、Linux 或 WSL2。
- 已阅读当前安装器和认证选项的官方说明。
-
codex --version能返回当前版本。 -
codex --help能显示本机实际支持的选项。 -
codex login --help已核对登录入口。 - 已确认
command -v codex或Get-Command codex指向预期安装。 - 没有无意中安装多个 Codex 副本。
- OAuth 登录完成,或 API key 已通过安全变量注入。
- 没有把 key、token、设备码或代理密码写入文件和日志。
- 已用
curl或Test-NetConnection验证必要网络。 - 已在空目录完成一次只读 smoke test。
- 已检查
git status --short,确认没有无关变更。 - 已记录当前版本、安装来源和后续升级方式。
- 已知道如何退出登录、撤销 key 和恢复 PATH。
- 已知道遇到协议、额度或沙箱问题应保留错误输出。
- 未执行提交、推送、生产部署或未经确认的删除。
动态信息核验
本文不固定写死 Codex CLI 的版本号、模型名、套餐额度或升级子命令。 每次安装、升级或排错前,请依次运行:codex 命令即可。
如需核对产品、认证、计费或第三方模型能力,请查阅 OpenAI 官方文档的当前页面。
当本页示例与本机帮助或官方文档冲突时,以本机帮助和官方文档为准,并记录冲突内容后再操作。
参考文件名:03-install.md、04-pricing.md、05-third-party-models.md。