用 Codex CLI
把最强推理模型装进你的终端
这是一份从零基础到熟练运用的实战手册。覆盖安装、认证、配置、审批模式、35+ 斜杠命令、Goal 自主任务、AGENTS.md 项目记忆、MCP 与子代理,并配有答题闯关检验学习成果——答对才能解锁下一题。
🧭开始之前 · 没用过命令行也看得懂
从未碰过终端、Node.js、Git?没关系。按顺序做完下面 5 件事,你就能跑起来 Codex。
① 你用的是什么系统?
② 装好两样必备工具
Node.js(必需,v22 以上)—— Codex 靠它安装运行。先检查有没有:
检查 / 安装node -v # 显示 v22.x.x 就 OK;若提示找不到命令,说明没装
# 没有 Node.js?两种装法(任选其一):
# ① 官网下载安装包(最简单):访问 https://nodejs.org 下载 LTS 版,双击安装
# ② 用 nvm 管理(推荐开发者):
# curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash
# 然后 nvm install 22
Git(强烈建议)—— 方便随时查看 / 回滚 AI 的改动:
检查 / 安装git --version # 有版本号就 OK
# 没有?访问 https://git-scm.com/downloads 下载安装
③ 要花钱吗?
| 方式 | 费用 | 适合 |
|---|---|---|
| 🆓 本地模型 | 完全免费 | 想零成本体验、有台还行的电脑。用 codex --oss 接 Ollama 等本地模型 |
| 💳 ChatGPT 订阅 | Plus 约 $20/月 | 最省心。登录直接用,不单独按量计费。需 Plus / Pro / Team 等订阅 |
| 💰 API 按量 | 按用量计费 | 无订阅、想精确控成本。去 platform.openai.com 充值拿 Key |
新手建议:有 ChatGPT 订阅就直接用订阅;想免费试试就先玩本地模型(--oss)。两者都不用绑卡也能起步。
④ 它会弄坏我电脑吗?
放心,默认很安全:
- Codex 默认跑在沙箱里,只能动你当前项目文件夹,碰外面的东西会先弹窗问你。
- 危险操作(删文件、
sudo、联网下载)都需要你手动确认才会执行。 - 每个项目先
git init,AI 改坏了随时git checkout一键回滚——比让它“撤销”靠谱得多。
⑤ 新手避坑 4 条
- 别在系统目录或家目录根跑。每次新建一个专门的项目文件夹再
cd进去。 - 第一次别用
--yolo。它会跳过所有确认,新手容易翻车;先用默认模式熟悉审批流程。 - 描述任务要具体。别说“优化一下代码”,要说“把这个函数的时间复杂度从 O(n²) 降到 O(n),并加测试”。
- 改完不满意就
git回滚。比让 AI“撤销刚才的修改”更可靠、更省 token。
🗺️从新手到精通的四阶段
按下面的顺序学习,每个阶段都建立在前一个的基础上。建议完整读完前 4 章即可上手。
理解 Codex CLI 是什么,安装它,完成认证,跑通第一次对话。目标:能在终端里和 AI 对话让它改代码。
掌握审批模式、config.toml、自定义供应商、Profiles 和 AGENTS.md,让 Codex 真正懂你的项目与工作流。
玩转 Goal 模式、35+ 斜杠命令、MCP、子代理、Skills,建立企业级安全与最佳实践。
10 道由易到难的题目,答对才能解锁下一题,全部通关即毕业。
⚡ 一页速查卡 · 命令与配置速查 ▶
收藏级速查,建议贴在显示器旁。按 Ctrl/Cmd + P 可打印(已自动隐藏侧栏与背景,只留内容)。
安装 / 启动
npm i -g @openai/codex全局安装codex loginChatGPT OAuth 登录codex启动交互 TUIcodex --oss用本地模型codex --cd <dir>指定工作目录审批 / 沙箱
--sandbox read-only只读,最安全--sandbox workspace-write工作区写入(推荐)--full-access完全自动--yolo跳过所有确认 ⚠️--profile <name>切换预设会话内斜杠命令
/plan规划模式(不改代码)/goal <任务>自主执行长任务/review代码审查/compact压缩上下文/model切换模型/permissions改审批模式非交互 / 会话
codex exec "任务"单次执行(适合 CI)codex exec -o out.md "..."输出到文件codex resume --last恢复最近会话!git status会话内跑 shellcodex mcp-server作为 MCP 服务器📖 术语表 · 看不懂的词都在这 ▶
第一次接触这些词很正常,遇到不认识的随时回来查。
| 术语 | 大白话解释 |
|---|---|
| CLI / 终端 | 命令行界面,就是那个“敲文字操作电脑的黑窗口”。Mac 的「终端」、Windows 的 PowerShell 都算。 |
| TUI | 终端里的图形界面。运行 codex 后你看到的那整屏画面就是 TUI。 |
| npm | Node.js 的“应用商店”,用 npm i -g 安装命令行工具。 |
| OAuth 登录 | 不用把密码输进陌生工具,点一下跳转浏览器授权的方式(类似“用微信登录”)。 |
| API Key | 一长串像密码的字符串,用来证明“我有权调用这个服务”,要保管好别泄露。 |
| TOML | 一种配置文件格式,长得像填表(键 = "值"),Codex 用它做配置。 |
| token | AI 处理文本的计量单位,大约 3/4 个英文单词或半个汉字。对话越长越费 token。 |
| 沙箱 (sandbox) | 给程序画的“活动围栏”,限制它只能碰指定范围的东西,越界要先问你。 |
| MCP | 让 AI 连接外部工具(如 GitHub、数据库)的标准接口,相当于给 AI 装“插件”。 |
| WSL2 | Windows 上跑 Linux 的子系统,让 Windows 用户能用上原汁原味的 Linux 工具链。 |
| AGENTS.md | 项目说明书文件,告诉 AI 这个项目用什么技术栈、怎么构建、有哪些规矩。 |
| Goal 模式 | 设定一个大目标后,AI 自己分步干、自己检查、干不完自己调整的模式。 |
💡什么是 Codex CLI
Codex CLI 是 OpenAI 开发的开源系统级 AI 助手,用 Rust 编写,具有极高的性能与极低的内存占用。它能在终端里读取、修改、运行你的代码,是一个真正意义上的 AI Agent——定位与 Claude Code 一致,但开源、更快、可接任意模型。
👥 适合谁?能帮你做什么?
几个真实场景:
- 看不懂别人的代码?一句话让它解释整个项目结构和关键函数。
- 不想写样板代码?描述需求,它直接生成可运行的脚本 / 接口并帮你跑起来。
- 修不动老 bug?用
/goal设定目标,让它自主「分析→修→跑测试→验证」闭环。 - 团队要安全管控?用
requirements.toml统一约束所有人的操作边界。
核心特性
Codex CLI ≠ Codex 云端版。云端版运行在 OpenAI 沙盒里,通过 ChatGPT 侧边栏访问;CLI 版则是运行在你本地终端的开源工具。本手册专注于 CLI 版。
📦安装与环境准备
系统要求
| 平台 | 要求 |
|---|---|
| macOS | 12+(Monterey 及以上) |
| Linux | Ubuntu 20.04+ / Debian 10+ |
| Windows | Windows 10/11(原生 PowerShell 沙箱或 WSL2) |
| RAM | 最低 4 GB,推荐 8 GB |
| Git | 2.23+(可选,用于版本控制功能) |
方式一:npm 全局安装(推荐)
bash# 全局安装 Codex CLI
npm i -g @openai/codex
# 验证安装
codex --version # 或 codex -V
# 查看帮助
codex --help
# 升级到最新版
npm i -g @openai/codex@latest
# 或
codex update
方式二:Homebrew 安装(macOS)
bashbrew install --cask codex
# 升级
brew upgrade codex
方式三:从源码 / 二进制
前往 github.com/openai/codex 的 Releases 页面下载预编译二进制;或从源码编译:
bashgit clone https://github.com/openai/codex.git
cd codex
cargo build --release
权限问题?Linux/macOS 不要直接用 sudo(不推荐),建议配置 npm 用户目录:npm config set prefix ~/.npm-global,再把 ~/.npm-global/bin 加入 PATH。
🔑认证配置
Codex CLI 支持三种认证方式,按推荐程度排序:
方式一:ChatGPT OAuth 登录(最推荐)
不需要 API Key,只要有 ChatGPT 订阅即可。
bash# 首次运行 codex 会自动触发 OAuth 登录流程
# 也可以手动登录
codex login
# 支持的订阅类型:Plus / Pro / Business / Edu / Enterprise
# 登出
codex logout
# 或在交互式会话中输入 /logout
方式二:OpenAI API Key
在平台 platform.openai.com/api-keys 申请后,写入环境变量:
bash# Git Bash / macOS / Linux
export OPENAI_API_KEY="sk-xxxxxxxxxxxxxxxx"
# 永久生效:写入 ~/.bashrc 或 ~/.zshrc
echo 'export OPENAI_API_KEY="sk-xxx"' >> ~/.zshrc
source ~/.zshrc
# 或写入 ~/.codex/auth.json
cat > ~/.codex/auth.json <<'EOF'
{
"OPENAI_API_KEY": "sk-xxxxxxxxxxxxxxxx"
}
EOF
方式三:自定义供应商(接第三方 API)
详见第 07 章。可以通过本地代理接入 DeepSeek、国内中转 API 等,在 config.toml 中配置 base_url 与 env_key。
🚀第一次使用
动手:5 分钟拿到你的第一次成功。跟着下面一步步敲,保证看到结果——这是建立信心的关键一步。
🥚 实战:让 Codex 写一个脚本并运行
bash# 1. 新建一个空目录并进入
mkdir codex-hello && cd codex-hello
git init # 一定要初始化 git,方便回滚
# 2. 启动 Codex
codex
# 3. 在 TUI 输入框里输入这段自然语言(回车发送):
# 用 Python 写一个猜数字小游戏,保存到 game.py,然后运行它让我试玩
看到游戏跑起来 = 你已经入门了。之后任何需求都是同样套路:用自然语言描述 → 审批 → 看结果。不满意就继续对话让它改,或连按两次 Esc 编辑上一条消息重来。
bash# 1. 进入你的项目(强烈建议先 git init)
cd my-project
git init
# 2. 启动交互式 TUI(默认模式)
codex
# 3. 直接带任务启动
codex "解释这个项目结构"
# 指定工作目录启动
codex --cd /path/to/project
# 使用本地模型(Ollama 等)
codex --oss
务必先初始化 Git!在使用自动编辑或完全自动模式时,版本控制让你能随时查看改动并回滚。在非 Git 仓库目录下使用这些模式,Codex 会发出警告。
🖥️ 启动后你会看到什么
第一次启动 codex,屏幕大致长这样(不用担心,照着提示走就行):
TUI 界面示意┌─ Codex ──────────────────── model: gpt-5.4 ──┐
│ │
│ > 帮我写一个猜数字游戏 │ ← 你在这输入需求
│ │
│ 🤖 好的,我来创建 game.py ... │
│ ⚠️ 请求【写入文件】: game.py │ ← 审批提示
│ [y] 同意 [n] 拒绝 [a] 本次都同意 │
│ ✓ 已创建 game.py │
│ ⚠️ 请求【执行命令】: python game.py │
│ [y] 同意 [n] 拒绝 │
│ │
└────────────────────────────────────────────────┘
[ 输入你的需求... ] 发送 ↵
关键就一件事:看到 ⚠️ 请求... 就按 y 同意、n 拒绝。不确定就按 n,AI 会换种做法再问你。这就是你和 AI 之间的“安全阀门”。
TUI 界面三大区域
| 区域 | 功能 |
|---|---|
| 消息区 | 显示对话历史、工具调用、执行结果 |
| 输入区 | 底部输入框,发送 Prompt |
| 状态栏 | 显示模型、上下文使用量、线程信息 |
图片输入(多模态)
bash# 分析截图中的报错
codex -i screenshot.png "Explain this error."
# 多张图片
codex --image img1.png,img2.jpg "Summarize these diagrams."
# 也可以把图片直接粘贴进编辑器
非交互式 exec 模式(脚本 / CI)
bash# 单次执行任务
codex exec "fix the CI failure"
# 输出到文件
codex exec "生成 README" -o README.md
# 指定模型 + 全自动
codex exec -m gpt-5.4-mini --full-auto "运行测试并修复失败项"
🚑遇到问题?常见报错速查
新手 90% 的卡点都在这里。按报错信息对号入座,基本都能自己解决。
| 报错 / 现象 | 原因 | 解决方法 |
|---|---|---|
command not found: codex |
没装好 / 不在 PATH | 重跑 npm i -g @openai/codex;权限问题先 npm config set prefix ~/.npm-global 再把 ~/.npm-global/bin 加入 PATH |
EACCES 权限拒绝 |
npm 全局目录无写权限 | 不要用 sudo;改用用户目录 prefix(同上) |
| 首次启动卡在登录 / 浏览器不弹 | OAuth 弹窗被拦或网络问题 | 改用 API Key:export OPENAI_API_KEY="sk-...",或写入 ~/.codex/auth.json |
401 / invalid_api_key |
Key 无效或未生效 | 检查 ~/.codex/auth.json / 环境变量;确认 Key 未过期、账号有额度 |
命令被拦下 / operation not permitted |
越界写文件或访问网络 | 按提示批准;或启动加 --sandbox workspace-write;网络任务需手动确认 |
| Linux 报沙箱相关错误 | 缺少 bubblewrap | sudo apt install bubblewrap(Ubuntu/Debian) |
| 警告 “not a git repo” | 目录未初始化 git | git init 后再用自动模式,方便随时回滚 |
model not found / 模型找不到 |
模型名拼错或供应商不支持 | 用 /model 查可用列表;检查 config.toml 的 model 与 model_provider |
| 对话变慢 / token 超限 | 上下文太长 | /compact 压缩;新任务用 /clear;用 /mention 精确引用文件 |
| 改的代码不对 / 跑歪了 | 任务描述太模糊 | 用 /plan 先看计划;Goal 任务用 /goal status 查进度,必要时 /goal pause |
还查不到?看日志:~/.codex/log/codex-tui.log;或开调试启动:RUST_LOG=debug codex。历史会话记录在 ~/.codex/sessions/ 目录。
🛡️审批模式与沙箱
这是 Codex CLI 最核心的安全机制。它控制 AI 可以自主做什么,是你与 AI 之间的「权限边界」。
三种审批模式对比
| 模式 | 读取文件 | 编辑文件 | 运行命令 | 网络访问 |
|---|---|---|---|---|
| Auto(默认) | ✅ 自由 | ✅ 工作区内 | ✅ 本地命令 | ❌ 需确认 |
| Read-only | ✅ 自由 | ❌ 需确认 | ❌ 需确认 | ❌ 需确认 |
| Full Access | ✅ 自由 | ✅ 全局 | ✅ 所有命令 | ✅ 自由 |
切换审批模式
bash# 在交互式会话中切换
/permissions
# 用 CLI 参数启动
codex --sandbox read-only # 只读
codex --sandbox workspace-write # 工作区写入(推荐日常)
codex --sandbox danger-full-access # 完全访问(危险)
codex --full-access # 等同于 full-auto
# ⚠️ 完全自主:跳过所有确认(危险)
codex --yolo
--yolo 会自动把 sandbox 设为 danger-full-access、web_search 设为 live。仅在你完全信任当前任务时使用。建议用 Profile 按需切换,而不是写进默认配置。
各平台沙箱机制
| 平台 | 沙箱技术 | 说明 |
|---|---|---|
| macOS | Seatbelt | 系统原生,无需额外安装 |
| Linux | bubblewrap + Landlock + seccomp | 需 sudo apt install bubblewrap |
| Windows | 原生 Windows 沙箱 | 无需 WSL2 |
最佳实践:日常开发用 workspace-write;代码审查用 read-only;CI/CD 用 danger-full-access(受控环境);敏感项目用细粒度策略。
⚙️config.toml 配置详解
Codex CLI 使用 TOML 格式配置文件(不是 JSON),这是它与 Claude Code 的显著区别。
小白看这里:其实你大概率什么都不用配。用 codex login 登录后,开箱即用的默认值就够日常用了。下面这一大堆参数是进阶 / 定制才需要的,第一次读可以直接跳到第 07 章。
如果你确实想动手,只需这 3 行(写入 ~/.codex/config.toml)就够大多数场景:
~/.codex/config.toml · 最小可用model = "gpt-5.4" # 用哪个模型
approval_policy = "on-request" # 改文件 / 跑命令前问你一句
sandbox_mode = "workspace-write" # 只允许在工作目录内写
👇 下面是完整参数参考,按需查阅,不用全记。
配置文件层级(优先级从高到低)
| 层级 | 位置 | 作用域 |
|---|---|---|
| CLI 参数 | --model 等 | 当前命令 |
| Profile | --profile | 命名预设 |
| 项目配置 | .codex/config.toml | 当前仓库 |
| 用户配置 | ~/.codex/config.toml | 个人全局 |
| 系统配置 | /etc/codex/config.toml | 机器级默认 |
优先级:CLI 参数 > Profile > 项目配置 > 用户配置 > 系统配置 > 内置默认值
项目级配置不能覆盖安全敏感字段:openai_base_url、chatgpt_base_url、model_provider、model_providers、notify、profile、profiles 等,只能在用户级或系统级配置。
核心参数完整示例
~/.codex/config.toml# 顶部声明可获得 IDE 自动补全
#:schema https://developers.openai.com/codex/config-schema.json
# ---- 模型相关 ----
model = "gpt-5.4"
model_provider = "openai"
# 推理努力:minimal | low | medium | high | xhigh
model_reasoning_effort = "medium"
# 推理摘要:auto | concise | detailed | none
model_reasoning_summary = "auto"
model_context_window = 200000
model_verbosity = "medium"
service_tier = "fast"
# ---- 审批与沙箱 ----
# approval_policy: untrusted | on-request | never
approval_policy = "on-request"
# sandbox_mode: read-only | workspace-write | danger-full-access
sandbox_mode = "workspace-write"
approvals_reviewer = "user"
# ---- Web 搜索 ----
# cached(默认快) | live(实时) | disabled
web_search = "cached"
model_reasoning_effort 很影响体感:简单任务设 "low" 响应快;复杂架构设计设 "high" 或 "xhigh" 推理更深。
requirements.toml(管理员强制约束,企业级)
Codex 独有的企业级安全特性。管理员可强制约束所有开发者的行为,用户无法覆盖:
/etc/codex/requirements.tomlallowed_approval_policies = ["on-request", "never"]
allowed_sandbox_modes = ["read-only", "workspace-write"]
allowed_web_search_modes = ["cached", "disabled"]
allowed_approvals_reviewer = ["user"]
# mcp_servers = ["github", "postgres"] # MCP 白名单
🔌自定义模型供应商
不想用官方 OpenAI?可以接入第三方中转、DeepSeek、本地 Ollama、LM Studio、Amazon Bedrock,或任何兼容 API。
自定义供应商完整示例
~/.codex/config.toml# 使用自定义供应商作为默认
model_provider = "custom"
model = "gpt-5-codex"
# 示例 1:自定义 API 中转
[model_providers.custom]
name = "服务名"
base_url = "https://api.your-proxy.com/v1"
env_key = "CUSTOM_API_KEY"
wire_api = "responses"
request_max_retries = 3
stream_idle_timeout_ms = 300000
# 示例 2:备用供应商
[model_providers.backup]
name = "备用供应商"
base_url = "https://api.backup-provider.com/v1"
env_key = "BACKUP_API_KEY"
wire_api = "responses"
供应商参数说明
| 参数 | 说明 |
|---|---|
base_url | API 基础地址 |
env_key | 存放 API Key 的环境变量名(不能直接传字符串) |
name | 供应商显示名称 |
wire_api | 协议类型(目前仅支持 "responses") |
request_max_retries | HTTP 重试次数(默认 4) |
stream_idle_timeout_ms | SSE 空闲超时(默认 300000ms) |
stream_max_retries | SSE 重试次数(默认 5) |
把 Key 配在环境变量里更安全(避免明文进 Git):
bashecho 'export CUSTOM_API_KEY="sk-your-key"' >> ~/.zshrc
source ~/.zshrc
# 启动时用默认供应商
codex
# 切换到备用
codex --model-provider backup
懒得手改 TOML?开源工具 CC Switch(github.com/farion1231/cc-switch)提供图形界面,一键管理 Codex / Claude Code / Gemini CLI 的供应商、MCP、Skills 配置,跨平台。
🎭Profiles 配置预设
给不同场景起个名字(比如 fast 用便宜模型、work 用强模型),用 --profile 一键切换,不用每次手动改配置。
~/.codex/config.toml# 工作模式:最强模型 + 实时搜索
[profiles.work]
model = "gpt-5.5"
web_search = "live"
approval_policy = "on-request"
# 快速模式:轻量模型 + 低推理
[profiles.fast]
model = "gpt-5.4-mini"
web_search = "cached"
model_reasoning_effort = "low"
# 审查模式:只读 + 详细推理
[profiles.review]
model = "gpt-5.5"
sandbox_mode = "read-only"
model_reasoning_effort = "high"
model_reasoning_summary = "detailed"
# 自主模式(危险,按需切换)
[profiles.auto]
approval_policy = "never"
sandbox_mode = "danger-full-access"
web_search = "live"
bashcodex --profile work # 工作模式
codex --profile fast # 快速模式
codex --profile auto # 自主模式
codex --profile review # 只读审查
不要把 never + danger-full-access 写在默认配置里。推荐用 Profile 方式按需切换,避免误操作。
🧠AGENTS.md 项目记忆文件
AGENTS.md 是 Codex CLI 的项目记忆文件(类似 Claude Code 的 CLAUDE.md),记录项目结构、构建命令、代码规范、架构决策,让 Codex 快速理解项目上下文。
发现链与合并规则
Codex 启动时会按特定顺序搜索并加载 AGENTS.md:
- 全局(
~/.codex/):读取AGENTS.override.md或AGENTS.md - 项目(Git 根目录到当前工作目录):每级检查
AGENTS.override.md→AGENTS.md - 合并:从根目录向下拼接,靠近 CWD 的文件优先级更高
- 大小限制:默认 32 KiB(
project_doc_max_bytes可调)
Override 机制
AGENTS.override.md 优先于同级 AGENTS.md,方便临时覆盖而不污染基础文件。
快速生成
bash# 方式一:用 /init 命令自动生成骨架
codex
> /init
# 方式二:让 Codex 根据项目结构生成
> 请根据当前项目结构生成 AGENTS.md 文件
最佳实践:① 从最关键的规范开始,不要一上来就写巨型文件;② 规则放在它适用的最具体目录;③ 个人偏好放 ~/.codex/AGENTS.md,团队规范放项目根目录;④ 纠正 Codex 错误时,告诉它「把这个教训写入 AGENTS.md」。
⌨️35+ 斜杠命令速查
Codex CLI 拥有 35+ 个内置斜杠命令,比 Claude Code 丰富得多。以下是按类别整理的完整清单。
会话管理
/clear清空对话历史,全新开始/compact压缩对话历史为摘要/new新建会话/fork分叉对话到新线程/side旁路临时对话,不影响主对话/resume恢复历史会话/exit退出(同 /quit)模型与配置
/model切换模型和推理强度/fast切换 Fast 服务层级/personality设置 AI 人格/permissions设置审批模式/plan切换到 Plan 规划模式工具与扩展
/mcp列出 MCP 工具(verbose 详情)/skills浏览和使用 Skills/plugins浏览已安装/可发现插件/hooks查看生命周期 Hooks/memories配置记忆使用和生成/apps浏览应用/连接器/agent切换活跃 Agent 线程开发辅助
/review用审查 Agent 审查代码/diff显示 Git diff(含未跟踪)/mention附加文件/文件夹到对话/ide包含 IDE 上下文/copy复制最近输出(Ctrl+O)/init生成 AGENTS.md 骨架系统与诊断
/status显示配置与 token 用量/debug-config打印配置层级诊断/vim切换 Vim 模式/theme选择语法高亮主题/keymap重新映射 TUI 键位/logout登出 Codex/feedback发送日志给维护团队排队后续命令:Codex 执行任务时按 Tab 可排队后续文本、斜杠命令或 ! Shell 命令,任务完成后自动执行。
🎯Goal 模式 Codex 独有
/goal 是 Codex CLI 最具特色的功能,用于设定、管理和控制长期任务目标——设定后 Codex 会自主分析、规划、执行、验证,失败还会调整策略重来。
Goal 命令
/goal设置新的任务目标/goal status查看执行状态/goal pause暂停目标执行/goal resume恢复暂停的目标/goal view查看目标详细信息/goal clear清除当前目标Goal 工作流程
使用示例
交互式# ✅ 具体、可衡量的 SMART 目标
/goal 实现一个 RESTful API,包括:
1. 用户注册和登录(JWT 认证)
2. CRUD 操作
3. 数据验证和错误处理
4. 单元测试(覆盖率 > 80%)
# 查看进度
/goal status
# ✅ 带验证闭环(强烈推荐)
/goal 实现用户认证功能,然后:
1. 运行测试: !npm test
2. 检查覆盖率: !npm run test:coverage
3. 运行 lint: !npm run lint
4. 如果失败,自动修复后重新验证,直到全部通过
不适合 Goal 模式(直接对话即可):「这个函数做什么?」「修复这个拼写错误」。Goal 适合复杂多步骤长期任务:重构模块、语言迁移、搭建 CI/CD 流水线。
| 验证方式 | 代码质量 | 返工率 |
|---|---|---|
| 无验证 | ⭐⭐ | 40% |
| 人工验证 | ⭐⭐⭐ | 20% |
| Codex 自动验证 | ⭐⭐⭐⭐⭐ | 5% |
🧩高级功能
MCP(Model Context Protocol)
通过标准协议连接外部工具和服务,概念与 Claude Code 一致。
~/.codex/config.toml# STDIO 类型 MCP 服务器
[mcp_servers.my-server]
command = "npx"
args = ["-y", "my-mcp-server"]
env = { API_KEY = "your-api-key" }
# HTTP/SSE 类型
[mcp_servers.remote-server]
url = "https://mcp.example.com/sse"
bearer_token_env_var = "MCP_TOKEN"
# Codex 自身也可作为 MCP 服务器
# 命令行:codex mcp-server
# 会话中查看 MCP 状态
# > /mcp verbose
Subagents(子代理)
内置并行任务委派系统,最多 6 线程并发(可配置)。
~/.codex/config.toml[agents]
max_threads = 6 # 最大并发
max_depth = 1 # 最大嵌套深度
job_max_runtime_seconds = 1800 # 每个 Worker 超时
[agents.code-reviewer]
description = "专业代码审查 Agent"
nickname_candidates = ["Reviewer", "Inspector"]
[agents.test-writer]
description = "测试工程师 Agent"
nickname_candidates = ["Tester", "QA"]
使用:请使用 code-reviewer agent 审查 src/auth.ts 的代码质量,可并行调用多个 Agent。
Skills 与 Plugins
存放位置:全局 $HOME/.agents/skills 或项目级 .agents/skills。会话中用 /skills 浏览,/plugins 管理可分发插件。
记忆系统(Memories)
Codex 内置跨会话自动记忆(默认关闭,与 Claude Code 手动维护 MEMORY.md 不同):
~/.codex/config.toml[features]
memories = true # 显式开启
[memories]
use_memories = true # 注入已有记忆
generate_memories = true # 生成新记忆
extract_model = "gpt-5.4-mini" # 提取用模型
consolidation_model = "gpt-5.4" # 全局整合用模型
工作原理:① 会话结束后自动提取关键知识 → ② 多线程知识整合为全局记忆 → ③ 新会话自动注入相关记忆。
其他进阶能力
⚡实用技巧与快捷键
TUI 交互技巧
| 操作 | 快捷键 | 说明 |
|---|---|---|
| 排队后续命令 | Tab | 执行中排队下一条命令 |
| 搜索历史提示词 | Ctrl+R | 搜索之前的输入 |
| 打开外部编辑器 | Ctrl+G | 用编辑器写长提示词 |
| 浏览 Draft 历史 | ↑/↓ | 空输入框中翻阅 |
| 编辑上一条消息 | Esc ×2 | 空输入框按两次 Esc |
| 复制最近输出 | Ctrl+O | 复制最后一段输出 |
Shell 集成
交互式# 用 ! 前缀直接运行 Shell 命令,输出作为上下文
!git status
!npm test
!ps aux | grep node
多根目录工作
bash# 在 frontend 启动,同时引入 backend 和 shared
codex --cd apps/frontend --add-dir ../backend --add-dir ../shared
会话管理
bashcodex resume # 交互式选择最近会话
codex resume --all # 显示所有目录的会话
codex resume --last # 跳到最近会话
codex resume <id> # 恢复指定会话
先准备好环境!启动前先激活虚拟环境、切到正确分支,避免 Codex 浪费 token 去探测环境:source venv/bin/activate && codex
🏆最佳实践
定制化构建顺序
模型选择策略
| 任务类型 | 推荐模型 | 推理努力 | 理由 |
|---|---|---|---|
| 快速查询 | gpt-5.4-mini | low | 最快最便宜 |
| 日常开发 | gpt-5.4 | medium | 平衡性能成本 |
| 架构设计 | gpt-5.5 | high | 最强推理 |
| 代码审查 | gpt-5.5 | high | 需深入理解 |
| 并行 Worker | gpt-5.4-mini | low | 快速且便宜 |
上下文管理优化
| 技巧 | 说明 | 节省 |
|---|---|---|
| 精确文件引用 | 用 /mention 指定文件而非整个目录 | 30~50% |
| 定期 /compact | 每 20 轮对话压缩一次 | 40~60% |
| 新任务 /clear | 开始新任务时清空历史 | 50~70% |
| 使用 Subagents | 将大任务拆分给子代理 | 50~70% |
⚔️Codex CLI vs Claude Code
两者都是顶级开源 AI 编程 CLI。以下是关键维度的对比,帮你选择适合自己的工具。
基础架构
| 维度 | Codex CLI | Claude Code |
|---|---|---|
| 编程语言 | Rust | TypeScript/Node.js |
| 配置格式 | TOML | JSON |
| 项目记忆 | AGENTS.md(层级+override) | CLAUDE.md(层级合并) |
| 启动速度/内存 | 极快/极低 | 快/较高 |
🔴 Codex CLI 独有
/goal长期任务自主执行- 内置图片生成(gpt-image-2)
- 原生 Windows 沙箱(不需 WSL2)
- Auto-Review AI 代理审批
- Remote TUI 远程连接
- 内置本地模型支持(
--oss) - requirements.toml 企业级约束
codex exec非交互自动化- ChatGPT 订阅直接使用
🟢 Claude Code 独有
- 正式 Team 协作(TeamCreate / SendMessage)
- Task 管理系统(TaskList / TaskUpdate)
- Worktree 管理
- 更简单有主见的配置
- Agent SDK(构建自定义智能体)
- LSP 集成(IDE 级代码理解)
- 更广泛的模型路由支持
场景选择
| 场景 | 推荐 | 理由 |
|---|---|---|
| 复杂长期任务 | Codex CLI | Goal 模式更成熟 |
| 团队协作 | Claude Code | 正式 Team 系统 |
| CI/CD 集成 | Codex CLI | codex exec 更方便 |
| 本地/离线开发 | Codex CLI | --oss 内置支持 |
| 企业安全管控 | Codex CLI | requirements.toml |
| 预算有限 | Codex CLI | ChatGPT 订阅即可 |
| 自定义 Agent 开发 | Claude Code | Agent SDK |
🎓答题闯关 · 答对才能解锁下一题
10 道由易到难的题目,覆盖安装、认证、配置、命令、Goal 模式等核心知识。必须答对当前题才能解锁下一题,全部通关即毕业。选错可以无限重试。
Codex CLI 知识闯关
共 14 题 · 答对解锁下一关 · 错了可重试
⌨️ 键盘党:Tab / ↑↓ 移动选项,回车或空格选中,再 Tab 到「确认答案」回车提交。
恭喜通关!你已毕业
你已经掌握了 Codex CLI 的核心知识。带上这份手册,去终端里大显身手吧!