Codex CLI 是 OpenAI 官方开源的终端编程智能体,113k star,Rust 编写,本地运行。这篇文章从安装讲到实战,把命令都给你列好了。

开篇配图:Codex CLI 终端形象
113.3k star,17.4k fork。这是 openai/codex 仓库目前的数字,而且还在涨。
很多人以为 Codex 还是 2021 年那个被砍掉的代码补全模型。不是了。现在的 Codex 是一个 Rust 编写的终端编程智能体,Apache-2.0 开源,直接跑在你自己机器上。你给它一句自然语言,它读你的代码库、改文件、跑测试,全程你可以盯着。
这篇文章把安装、登录、常用命令、两个实战例子一次讲完。终端党可以直接抄作业。
一、Codex 是什么,有哪几种形态
先纠正一个概念。现在说 Codex,指的是一整个产品矩阵:
- -Codex CLI
:核心,终端里本地运行的智能体,这篇文章的主角 - -IDE 扩展
:VS Code、Cursor、Windsurf 里都能装 - -桌面应用
:终端敲 codex app就能起,不习惯命令行的看这里 - -Codex Web
:云端版本,地址在 chatgpt.com/codex,任务丢上去跑完再回来看
四种形态共享同一个账号体系。用 ChatGPT 账号登录即可,Plus、Pro、Business、Edu、Enterprise 计划都包含使用额度,不用单独买 API。
为什么强调"本地运行"?因为代码不出你的机器。它读文件、写文件、执行命令都发生在本地沙箱里,仓库里有敏感逻辑也不怕传到云上。这是它和纯云端方案最大的区别。

产品矩阵图:CLI/IDE/桌面/Web 四种形态
二、安装:三条路任选
方式一,官方一键脚本(推荐)
Mac / Linux:
curl -fsSL https://chatgpt.com/codex/install.sh | shWindows(PowerShell):
powershell -ExecutionPolicy ByPass -c "irm https://chatgpt.com/codex/install.ps1 | iex"脚本默认从 releases.openai.com 下载二进制,如果网络不通,可以强制走 GitHub Releases:
curl -fsSL https://chatgpt.com/codex/install.sh | CODEX_INSTALLER_USE_RELEASES_OPENAI_COM=false sh方式二,包管理器
# npm npm install -g @openai/codex # Homebrew brew install --cask codex方式三,手动下载二进制
去 GitHub Release 页面,按平台挑对应的包:
- -
macOS Apple Silicon: codex-aarch64-apple-darwin.tar.gz - -
macOS 老款 Intel: 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
解压出来的文件名带着平台后缀,记得手动改名为 codex 再挪到 PATH 里。
装完验证一下:
codex --version有版本号输出就说明装好了。

安装方式对比图
三、登录:ChatGPT 账号直接用
第一次运行,终端里敲:
codex会弹出登录选择,选 Sign in with ChatGPT,浏览器跳转授权,回来就能用了。Plus / Pro / Business / Edu / Enterprise 计划都自带 Codex 额度。
想走 API Key 计费也行,但要额外配置,官方文档 developers.openai.com/codex/auth 里有说明。多数人直接 ChatGPT 登录就够了。
登录成功后,再次运行 codex 会进入交互模式(interactive mode):一个类似聊天的界面,你描述任务,它读代码、给方案、动手改。日常使用基本都待在这个模式里。

登录与交互模式示意图
四、实战一:让它修一个真 bug
场景:项目里有个除零没做保护,测试一直红。
进入项目目录,启动:
cd my-project codex在交互界面里直接描述问题:
> 跑一下 npm test,第 3 个用例挂了,是 utils/calc.js 里的 divide 函数 > 没处理除数为 0 的情况。修掉它,并且补一个对应测试。Codex 会先跑测试确认报错,然后找到 divide 函数,提出修改方案:
Working in /Users/you/my-project • Running npm test ✗ divide by zero returns Infinity, expected throw • Proposing edit to utils/calc.js + if (b === 0) throw new Error("Division by zero") + test case: expects divide(1, 0).toThrow() Approve changes? [y/n]它不会闷头乱改——每次写文件、跑命令都会先征求你同意,你敲 y 它才落地。改完自动重跑测试,绿了就收工。
整个过程你要做的只有一件事:把 bug 说清楚。定位、修改、验证三步它全包。

实战一流程图:修 bug 三步走
五、实战二:给老函数补单元测试
场景:一段祖传代码没有任何测试,改一行心里都没底。
同样在项目目录里:
> 给 src/services/order.ts 里的 calculateDiscount 函数写完整的单元测试, > 用 vitest,覆盖正常折扣、0 元订单、超大金额三个边界情况。它会先读这个函数的实现,理解逻辑分支,然后生成测试文件:
• Reading src/services/order.ts (84 lines) • Creating src/services/__tests__/order.test.ts ✓ normal discount: calculateDiscount(100, 0.2) → 80 ✓ zero amount: calculateDiscount(0, 0.2) → 0 ✓ huge amount: calculateDiscount(1e9, 0.5) → 5e8 • Running npx vitest run 3 passed Done. Test coverage for order.ts: 67% → 92%注意最后一行——它跑完测试还会顺手报一下覆盖率变化。补测试这种枯燥活,交给它之后基本回不去了。
顺带一提:项目根目录可以放一个 AGENTS.md 文件,写清楚项目结构、代码规范、测试怎么跑。Codex 每次启动都会读它,相当于给智能体写一份常驻的项目说明书,回答质量会明显变好。

实战二示意图:测试覆盖率提升
六、几个值得知道的细节
- -沙箱权限
:默认在受限沙箱里跑命令,敏感操作会请求批准,不会静默 rm -rf - -Rust 内核
:核心用 Rust 重写过,启动和响应速度在同类工具里属于第一梯队 - -开源可审计
:Apache-2.0 协议,代码在 GitHub 上随便审 - -不绑定单一编辑器
:哪天你从 VS Code 换到 Cursor,CLI 照样用
适合谁:天天泡在终端里的后端、运维、工具链开发者;想在 IDE 之外要一个"懂整个仓库"助手的;对代码隐私敏感、不想把仓库喂给云端服务的。
不太适合:纯图形界面党(可以等桌面应用成熟些)、没有 ChatGPT 付费计划又不想花 API 费的。
项目地址:https://github.com/openai/codex
夜雨聆风