第一章. Codex 是什么?为什么要用它?
第一章. Codex 是什么?为什么要用它?
Prorise第一章. Codex 是什么?为什么要用它?
1.1. 一句话定义
Codex 是 OpenAI 推出的命令行 AI 编程助手,能够 持续工作数小时 完成代码审查、Bug 查找和大规模重构任务。
与 ChatGPT 的对话式交互不同,Codex 直接在你的终端里运行,可以读取项目文件、执行命令、修改代码,是真正的「AI 结对编程」工具。
1.2. 三大核心能力(用真实案例说话)
能力 1:代码审查(3 秒扫描 50 个文件)
三个月前,我们团队准备上线一个支付模块。按照流程,需要人工审查 50 个文件,预计耗时 2 小时。
我试着用 Codex:
1 | codex "扫描 src/payment/ 目录,检查 SQL 注入、XSS、硬编码密钥等安全问题" |
结果:
- 耗时:N 秒(codex 天生比较慢)
- 发现:5 个安全漏洞(包括 2 个 SQL 注入、1 个硬编码 AWS 密钥)
- 输出:Markdown 格式的审查报告,直接贴到 PR 里
Codex 找出 5 个安全问题,人工审查只发现 3 个。速度快 40 倍。
能力 2:Bug 查找(30 秒定位根因)
生产环境报错:「用户登录后偶尔被重定向到 404」。日志不完整,本地无法复现。
我把错误截图发给 Codex:
1 | codex -i error-screenshot.png "分析这个报错,找出根本原因并修复" |
结果:
- 耗时:30 秒
- 定位:
req.session.returnTo未初始化 - 修复:给出完整的修复代码 + 单元测试
对比: Claude Code 建议「检查路由配置」(没用),Codex 直接定位到根因,找 Bug 能力第一人!
能力 3:长期重构(2.5 小时迁移 15000 行代码)
我们接手了一个 5 年前的遗留项目:15000 行 ES5 代码,没有类型注解,没有单元测试。
我让 Codex 做技术栈迁移:
1 | codex "把整个项目从 JavaScript 迁移到 TypeScript,保持所有功能不变" |
结果:
- 耗时:2.5 小时(全自动)
- 成功迁移:118 个文件
- 新增代码:+3200 行(类型注解)
- 测试通过率:98%
对比: 如果用人工,至少需要 2 周。Codex 节省了 95% 的时间。
1.3. 与 Claude Code 的核心差异
很多人问:「我 Claude Code 用得好好的,为啥要折腾 Codex?」
答案是:Codex 不是 Claude Code 的替代品,而是补充品。
| 维度 | Codex | Claude Code |
|---|---|---|
| 速度 | 慢但更细致 | 快但不严谨 |
| 准确性 | 69.1%(SWE-bench) | 72.7%(SWE-bench) |
| 持续工作 | 可持续数小时 | 需要人工分段 |
| 适用场景 | 快速迭代、代码审查、长期重构 | 关键代码、深度分析 |
| 成本 | 按 Token 计费 | 固定月费 $20-200 |
| 国内可用性 | 需要代理,但稳定 | 封号风险高 |
准确性差异的本质原因
Codex 的「思考链」更长,会先分析再动手。Claude 更「直接」,适合快速迭代。
1.4. 安装与环境配置
1.4.1. 安装 Codex CLI
Codex CLI 是一个 Node.js 包,需要 Node.js 18 或更高版本。
步骤 1:检查 Node.js 版本
1 | node --version |
如果版本低于 18,需要先升级 Node.js。推荐使用 nvm(Node Version Manager):
1 | # 安装 nvm(如果尚未安装) |
步骤 2:安装 Codex CLI
1 | npm install -g @openai/codex |
安装完成后,验证版本:
1 | codex --version |
应该看到类似 0.64.0 的版本号。
1.4.2. 账号鉴权
Codex 需要 ChatGPT Plus、Pro、Team 或 Enterprise 账号, 如果没有,可以咸鱼搜索“GPT team”、“GPT 大兵”、“GPT Plus”等关键字,通常价格在 50~100 左右不等,一般都是一年使用权
步骤 1:启动鉴权流程
1 | codex |
首次运行时,Codex 会自动打开浏览器,跳转到 ChatGPT 登录页面。
步骤 2:授权 Codex CLI
登录后,点击 “Allow” 按钮,授权 Codex CLI 访问你的账号。
步骤 3:验证鉴权
回到终端,应该看到:
1 | ✅ Successfully authenticated! |
鉴权信息会保存在 ~/.codex/token,以后无需重复登录。
1.4.4. 运行第一个命令
现在我们来验证 Codex 是否正常工作。
1 | codex "用 Python 写一个函数,计算斐波那契数列的第 n 项,要求包含类型注解和 docstring" |
Codex 会生成代码
注意 Codex 默认输出的是 生产级代码,包含完整的类型注解、文档字符串和错误处理。
1.5. Codex 的工作模式
1.5.1. 交互模式 vs 单次模式
Codex 支持两种工作模式:
交互模式(推荐用于复杂任务):
1 | codex |
进入交互模式后,你可以持续对话,Codex 会记住之前的上下文。适合需要多轮迭代的任务,如重构、调试。
单次模式(推荐用于简单任务):
1 | codex "任务描述" |
执行完任务后自动退出。适合快速生成代码片段、运行一次性脚本。
1.5.2. 沙箱机制
Codex 默认运行在 沙箱限制 AI 可以访问的文件和命令的安全机制 中,防止误操作。
沙箱有三种模式:
- read-only:只能读取文件,不能修改
- workspace-write:可以读写当前工作目录的文件
- danger-full-access:可以访问整个文件系统(危险)
默认模式是 workspace-write。如果你需要修改工作目录之外的文件,需要在配置文件中明确声明。
1.5.3. 批准策略
当 Codex 需要执行敏感操作(如删除文件、运行 rm 命令)时,会请求你的批准。
批准策略有三种:
- always:每次操作都请求批准(最安全)
- on-failure:只有在操作失败后才请求批准(推荐)
- never:从不请求批准(适合 CI/CD)
默认策略是 on-failure。



