Codex CLI 本地部署怎么做:安装、登录与数据去向
Codex CLI 是跑在本机的终端编程代理,官方 Quickstart 的默认路径是登录 ChatGPT 账号使用;无浏览器环境(服务器、CI)则改用 OpenAI API 密钥登录,两条路径的计费归属不同。
截至 2026-11-01 抓取,README 的 Quickstart 同时给出 install.sh、install.ps1、npm、Homebrew 和 releases.openai.com 回退开关。现在值得看的原因是:安装入口变多,选错下载源,或把“本机执行”当成“本地模型”,都会让隐私验收失真。
开工前只需要满足这三条:
- 准备一个可登录的 ChatGPT 账号;README 点名 Plus、Pro、Business、Edu、Enterprise 计划,免费档未在 Quickstart 出现。
- macOS/Linux 终端能运行 curl;Windows 用 PowerShell。
- 只有走 npm 才需要 Node.js:装完后运行 node -v 能看到版本号。
先分清:本机执行不等于离线模型
README 第一句写明 Codex CLI 是 “a coding agent from OpenAI that runs locally on your computer”。这句话说明代理程序装在你的电脑上,不说明模型权重也在你的电脑上。同一份 README 把入口拆成三类:编辑器插件、桌面端(运行 codex app 或访问 Codex App / Codex Web 页面)、云端代理 Codex Web。搜“本地部署”时先选对入口,否则会把网页端当成 CLI。
把数据去向拆成三层更实用:安装层看下载域名,是 releases.openai.com 还是 GitHub Releases;运行层看代理进程是否在本机;登录层看身份与计划归属。三层里任何一层不满足,整体结论都会变。README 能直接确认的是安装层和“CLI 在本机运行”,登录层则要按它的登录方式继续判断。
按 README 的登录段推导:运行 codex 后选择 Sign in with ChatGPT,使用 Plus、Pro、Business、Edu、Enterprise 计划。我的判断是,这条路径的身份与计划在 ChatGPT 侧,代码上下文会离开本机进入该调用链;这句是边界推导,不是 README 原文。能确定的是,这份 Quickstart 的启动步骤是登录 ChatGPT;如果你的目标是断网推理,不要把它当选型依据。
所以把需求拆成两层验收:代理进程是否在本机、模型推理是否在本机。前者 README 明确说了,后者不是这份 Quickstart 能承诺的。合规要求是“模型权重不出内网”时,不应把 Codex CLI 当答案;只要求“命令和文件操作在本机发生”,它才进入候选。
选型时先问三个问题:仓库能不能出网?账号能不能用外部 SaaS?代码上下文里有没有密钥?只要第二问是否定,CLI 的 ChatGPT 登录路径就不适合;第三问是肯定,先做密钥隔离,再谈安装。这是工程判断,不是 README 的合规结论。
四种装法,按系统与维护方式选
README 给了四条路。第一次装、想少记步骤,用官方脚本;已有 Node 工具链,用 npm;macOS 且日常用 Homebrew,用 cask(Homebrew 里面向 macOS 应用的安装包类型);不能跑脚本或要自己留二进制包,去 releases.openai.com/codex 挑对应架构。
| 装法 | 适合谁 | 入口 | 注意 |
|---|---|---|---|
| 官方安装脚本 | macOS/Linux 首次安装 | README 的 install.sh,见下方代码块 | 默认从 releases.openai.com 下载,失败回退 GitHub Releases |
| npm | 已有 Node.js/npm | npm install -g @openai/codex |
README 只给安装命令,包名是 @openai/codex |
| Homebrew | macOS + brew 用户 | brew install --cask codex |
README 写作 cask,不是 formula |
| Release 二进制 | 不能执行脚本、要固定包 | https://releases.openai.com/codex | 按 CPU 架构选 tar.gz,解压后把可执行文件改名为 codex |
Windows 用 README 给的 PowerShell 命令:
powershell -ExecutionPolicy ByPass -c "irm https://chatgpt.com/codex/install.ps1 | iex"
macOS/Linux 的官方脚本、npm、Homebrew 和强制 GitHub Releases 回退:
# 官方安装脚本
curl -fsSL https://chatgpt.com/codex/install.sh | sh
# 已装 Node.js 时
npm install -g @openai/codex
# macOS + Homebrew
brew install --cask codex
# 强制走 GitHub Releases,而不是默认的 releases.openai.com
curl -fsSL https://chatgpt.com/codex/install.sh | CODEX_INSTALLER_USE_RELEASES_OPENAI_COM=false sh
实际执行按这三步走:
- 按上表选一条安装命令,在终端执行;macOS/Linux 首次装优先用 curl,Windows 用上面的 PowerShell 命令。
- 安装器若停在下载阶段,重跑并注意它使用的下载域名;要强制走 GitHub Releases,执行代码块最后一条命令。
- 在终端输入
codex,进入首次启动界面,选择 Sign in with ChatGPT。
卡住时先看下载源,再看登录入口
README 对失败路径只写了一种,原文是:The standalone installers download from https://releases.openai.com/codex by default and fall back to GitHub Releases if a metadata or asset download is unavailable——即安装器默认从 releases.openai.com 下载,元数据或安装包资源不可用时回退 GitHub Releases;要强制走 GitHub Releases,把环境变量 CODEX_INSTALLER_USE_RELEASES_OPENAI_COM 设为 false。卡住时按这个顺序排查,不要先改代理或重装系统。手工下载二进制同理:先试官方下载页 releases.openai.com/codex(该页对部分网络环境不可达,属正常),它不可用就取 GitHub Releases 的对应架构包。
| 现象 | 判断依据 | 解法 |
|---|---|---|
| 安装脚本长时间停在下载阶段 | README 描述的 metadata or asset download is unavailable | 重跑官方脚本;或执行 ...CODEX_INSTALLER_USE_RELEASES_OPENAI_COM=false... 强制走 GitHub Releases |
| 下载到多个二进制不知道怎么选 | README 列出 macOS arm64/x86_64、Linux musl x86_64/arm64 | Apple Silicon 选 codex-aarch64-apple-darwin.tar.gz;老 Mac 选 codex-x86_64-apple-darwin.tar.gz;Linux x86_64 选 codex-x86_64-unknown-linux-musl.tar.gz;Linux arm64 选 codex-aarch64-unknown-linux-musl.tar.gz |
| 启动后进了网页端 | README 把 Codex Web 指向 chatgpt.com/codex,CLI 入口是终端运行 codex | 回到终端执行 codex,在首次界面选 Sign in with ChatGPT |
| 以为装完就能离线 | README 的 Quickstart 要求 ChatGPT 登录 | 需要断网推理就换方案;只要求本机执行命令,可继续用 CLI |
还有个容易忽略的取舍:按 README 的下载描述,官方安装脚本走 releases.openai.com 的默认发布物;要固定可复现构建,走 Release 二进制更稳。这个区别 README 没有写成对比表,是从它同时提供脚本和二进制两种入口推出来的。
怎么确认装成了
成功标志看三个状态:终端能启动 codex;首次界面出现 Sign in with ChatGPT 选项;选择后能回到终端继续输入任务。看到这三个状态,安装和登录入口就打通了。README 没有给更细的界面文案,不要拿第三方截图逐字对照。
如果 codex 启动后直接打开网页,说明你进了 Codex Web,不是 CLI。回到终端重跑 codex,别在浏览器里找本地安装开关。
装的是哪个版本、登录走的哪条路
版本和登录方式这两件事,决定了后面所有排错口径,装完先各查一次:
# 1) 版本验证:输出版本号即安装完整;命令不存在先关掉终端重开(PATH 未刷新)
codex --version
# 2) 登录状态:区分当前身份是 ChatGPT 账号还是 API 密钥
codex login status
如果你的场景是无头服务器或 CI(没有浏览器可回调),把身份换成 OpenAI API 密钥,不要在远程机器上照搬本机的浏览器授权流程:
# 3) API 密钥登录:先在 OpenAI API 控制台建密钥,再注入环境变量
export OPENAI_API_KEY='这里替换为实际密钥'
codex login --api-key "$OPENAI_API_KEY"
codex login status
两条登录路径的计费归属不同:ChatGPT 授权走你 ChatGPT 订阅的权益,API 密钥走 OpenAI API 账户的用量计费。同一个终端里两条路径会互相覆盖,切换后务必用 codex login status 复核当前身份,别凭”我登录过”下结论。
参考来源
- OpenAI Codex 官方仓库 README:Quickstart 的安装命令、四种装法与失败回退说明。
- OpenAI Codex 官方仓库:版本记录与 Issues(排错时先搜这里)。
- Codex Web 入口:浏览器端入口,用来对照”网页端 ≠ 本地 CLI”。
- 官方安装脚本 install.sh:macOS/Linux 安装命令的来源。
- GitHub Releases:安装器回退源,也是手工下载二进制的兜底入口。
评论区
登录后可评论。