2025最强AI编程神器!OpenAI Codex CLI 从入门到精通 — 保姆级全攻略(建议收
🔥 2025最强AI编程神器!OpenAI Codex CLI 从入门到精通 — 保姆级全攻略(建议收藏)
📌 作者按: 本文覆盖 Codex CLI 的全部功能和用法,从安装到高阶骚操作一网打尽。全文约 8000 字,建议先收藏再慢慢看。
适用版本: Codex CLI (开源版) — GitHub:
openai/codex
📑 目录
文章目录
- 🔥 2025最强AI编程神器!OpenAI Codex CLI 从入门到精通 — 保姆级全攻略(建议收藏)
-
- 📑 目录
- @[toc]
- 一、Codex CLI 是什么?凭什么说它是终端里的「AI程序员」?
-
- 二、安装篇 — 3 分钟搞定环境
-
- 三、快速入门 — 5 分钟上手核心用法
-
- 四、三大审批模式详解 — Codex 的「权限管理」
-
- 五、配置文件全解 — 打造你的专属 Codex
-
- 六、模型配置 — 不止 OpenAI,想用什么模型用什么模型
-
- 七、实战场景大全 — 30 个高频用法
-
- 八、高级技巧 — 从入门到「离谱」
-
- 九、沙箱安全机制详解
-
- 十、环境变量完整参考
- 十一、命令行参数速查表
- 十二、交互模式内置命令
- 十三、CI/CD 集成 — 让 Codex 进入你的流水线
-
- 十四、性能优化与省钱技巧
-
- 十五、常见问题排查(FAQ)
-
- 十六、.codexignore — 控制 Codex 的「视野」
- 十七、进阶:自定义 Codex 工作流
-
- 十八、完整实战案例 — 从零构建一个博客 API
- 十九、速查卡片(打印贴桌上)
- 二十、结语
文章目录
- 🔥 2025最强AI编程神器!OpenAI Codex CLI 从入门到精通 — 保姆级全攻略(建议收藏)
-
- 📑 目录
- @[toc]
- 一、Codex CLI 是什么?凭什么说它是终端里的「AI程序员」?
- 二、安装篇 — 3 分钟搞定环境
- 三、快速入门 — 5 分钟上手核心用法
- 四、三大审批模式详解 — Codex 的「权限管理」
- 五、配置文件全解 — 打造你的专属 Codex
- 六、模型配置 — 不止 OpenAI,想用什么模型用什么模型
- 七、实战场景大全 — 30 个高频用法
- 八、高级技巧 — 从入门到「离谱」
- 九、沙箱安全机制详解
- 十、环境变量完整参考
- 十一、命令行参数速查表
- 十二、交互模式内置命令
- 十三、CI/CD 集成 — 让 Codex 进入你的流水线
- 十四、性能优化与省钱技巧
- 十五、常见问题排查(FAQ)
- 十六、.codexignore — 控制 Codex 的「视野」
- 十七、进阶:自定义 Codex 工作流
- 十八、完整实战案例 — 从零构建一个博客 API
- 十九、速查卡片(打印贴桌上)
- 二十、结语
一、Codex CLI 是什么?凭什么说它是终端里的「AI程序员」?
1.1 一句话定义
Codex CLI 是 OpenAI 开源的终端 AI 编程代理——你用自然语言描述需求,它直接在你的本地仓库里读代码、写代码、执行命令、自动修 Bug,而且全程在本地沙箱中运行。
1.2 它能做什么?
✅ 用自然语言写代码 / 重构代码
✅ 自动读懂整个项目并做修改
✅ 执行 Shell 命令(编译/测试/部署)
✅ 一键修复 Bug、解决 Git 冲突
✅ 多文件编辑、跨文件重构
✅ 自动生成 commit message 并提交
✅ 支持接入多种 AI 模型(OpenAI / Azure / Ollama / Gemini 等)
1.3 与 Cursor / Copilot 的区别
| 特性 | Codex CLI | Cursor | GitHub Copilot |
|---|---|---|---|
| 运行环境 | 终端 | IDE | IDE插件 |
| 开源 | ✅ 完全开源 | ❌ | ❌ |
| 自主执行命令 | ✅ | ⚠️ 有限 | ❌ |
| 多文件编辑 | ✅ | ✅ | ⚠️ |
| 本地沙箱隔离 | ✅ | ❌ | ❌ |
| 可接入任意模型 | ✅ | ❌ | ❌ |
| 价格 | API 按量计费 | $20/月 | $10/月 |
二、安装篇 — 3 分钟搞定环境
2.1 前置条件
# 需要 Node.js >= 22
node -v # 检查版本
# 如果版本不够,用 nvm 升级
nvm install 22
nvm use 22
2.2 全局安装(推荐)
npm install -g @openai/codex
2.3 验证安装
codex --version
codex --help
2.4 设置 API Key
# 方式一:环境变量(推荐写入 .bashrc / .zshrc)
export OPENAI_API_KEY="sk-xxxxxxxxxxxxxxxxxxxxxxxx"
# 方式二:第一次运行 codex 时会交互式提示你输入
codex
2.5 从源码安装(想魔改的同学)
git clone https://github.com/openai/codex.git
cd codex
npm install
npm run build
npm link # 全局链接
三、快速入门 — 5 分钟上手核心用法
3.1 交互模式(最常用)
# 直接进入交互式对话
cd your-project
codex
进入后你可以像聊天一样输入:
> 帮我看看这个项目是做什么的
> 给 src/utils.py 添加一个日志装饰器
> 运行测试并修复失败的用例
3.2 单次命令模式
# 用 -q (quiet) 直接给任务,执行完退出
codex "在 README.md 中添加安装说明"
# 带引号的完整任务描述
codex "找到所有 TODO 注释,统计数量并生成报告"
3.3 管道模式(Pipeline)
# 把其他命令的输出通过管道传给 Codex
cat error.log | codex "分析这个错误日志,找出根本原因"
git diff HEAD~3 | codex "总结最近3次提交的改动"
find . -name "*.py" | head -20 | codex "分析这个项目的文件结构"
四、三大审批模式详解 — Codex 的「权限管理」
🔑 这是 Codex 最核心的安全机制,必须掌握!
4.1 模式总览
codex --approval-mode suggest # 建议模式(最保守)
codex --approval-mode auto-edit # 自动编辑模式(中间)
codex --approval-mode full-auto # 全自动模式(最激进)
4.2 详细对比
┌────────────────────────────────────────────────────────────┐
│ suggest (默认,最安全) │
│ 📖 读取文件:✅ 自动 │
│ ✏️ 编辑文件:❌ 需要你确认 │
│ 🖥️ 执行命令:❌ 需要你确认 │
│ 适用场景:初次使用、不熟悉的项目、生产环境 │
├────────────────────────────────────────────────────────────┤
│ auto-edit (推荐日常使用) │
│ 📖 读取文件:✅ 自动 │
│ ✏️ 编辑文件:✅ 自动执行 │
│ 🖥️ 执行命令:❌ 需要你确认 │
│ 适用场景:日常开发、代码重构、写新功能 │
├────────────────────────────────────────────────────────────┤
│ full-auto (CI/CD 神器) │
│ 📖 读取文件:✅ 自动 │
│ ✏️ 编辑文件:✅ 自动执行 │
│ 🖥️ 执行命令:✅ 自动执行(沙箱内) │
│ 适用场景:自动化脚本、CI/CD、批量处理 │
└────────────────────────────────────────────────────────────┘
4.3 实际使用示例
# 场景1:让 Codex 自由发挥,全自动修 Bug
codex --approval-mode full-auto "运行 pytest,修复所有失败的测试"
# 场景2:让它改代码但命令要我确认
codex --approval-mode auto-edit "把项目中所有 var 替换成 const/let"
# 场景3:只看建议不动手
codex --approval-mode suggest "审查 src/ 目录下的安全隐患"
4.4 审批快捷键
在交互模式中,当 Codex 请求权限时:
| 按键 | 作用 |
|---|---|
y / Enter |
同意执行 |
n |
拒绝 |
e |
先编辑再执行 |
a |
本次会话全部自动同意 |
五、配置文件全解 — 打造你的专属 Codex
5.1 配置文件位置
~/.codex/config.yaml # 全局配置
~/.codex/instructions.md # 全局系统指令
.codex/config.yaml # 项目级配置(放在项目根目录)
5.2 config.yaml 完整配置项
# ~/.codex/config.yaml
# 默认模型
model: o4-mini
# 默认审批模式: suggest | auto-edit | full-auto
approvalMode: auto-edit
# AI 服务提供商配置
provider:
name: openai # openai | azure | ollama | gemini | openrouter 等
# baseURL: https://api.openai.com/v1 # 自定义 API 地址
# apiKey: sk-xxx # 也可以在这里配置 key(不推荐,建议用环境变量)
# 沙箱网络访问白名单
fullAutoErrorPatterns:
- "npm install"
- "pip install"
# 历史记录
history: true
# 通知
notify: true
5.3 instructions.md — 给 Codex 立规矩
<!-- ~/.codex/instructions.md -->
<!-- 全局指令:对所有项目生效 -->
## 你的身份
你是一个资深全栈工程师,精通 Python/TypeScript/Go。
## 代码风格
- Python 使用 Black 格式化,行宽 88
- TypeScript 使用 Prettier,分号可选
- 所有函数必须有 docstring/JSDoc
- 变量命名使用 snake_case (Python) / camelCase (TS)
## 安全规则
- 永远不要硬编码密码或 API Key
- SQL 查询必须使用参数化
- 用户输入必须验证和转义
## 提交规范
- Commit message 使用 Conventional Commits 格式
- 示例:feat(auth): add JWT token refresh
5.4 项目级指令 — CODEX.md
在项目根目录创建 CODEX.md(或 .codex/instructions.md),Codex 启动时会自动读取:
<!-- /your-project/CODEX.md -->
# 项目上下文
这是一个 FastAPI + React 的电商平台。
## 技术栈
- 后端:Python 3.12 + FastAPI + SQLAlchemy
- 前端:React 18 + TypeScript + Zustand
- 数据库:PostgreSQL 15
- 缓存:Redis 7
## 开发规范
- API 路由放在 `app/routers/` 下
- 数据模型放在 `app/models/` 下
- 测试文件与源文件同名,放在 `tests/` 对应目录
## 常用命令
- 运行后端:`uvicorn app.main:app --reload`
- 运行测试:`pytest -v`
- 数据库迁移:`alembic upgrade head`
## 注意事项
- 不要修改 `alembic/versions/` 下的已有迁移文件
- 环境变量从 `.env` 文件读取,使用 pydantic-settings
六、模型配置 — 不止 OpenAI,想用什么模型用什么模型
6.1 使用 OpenAI 官方模型
# 默认使用 o4-mini
codex
# 指定模型
codex --model gpt-4.1 "重构这个函数"
codex --model o3 "设计一个微服务架构"
codex --model o4-mini "修复这个 bug"
# 可用模型列表
# o4-mini (默认,快速且便宜)
# o3 (最强推理)
# gpt-4.1 (综合能力强)
# gpt-4.1-mini
# gpt-4.1-nano (最便宜)
6.2 接入 Azure OpenAI
export AZURE_OPENAI_API_KEY="your-azure-key"
export AZURE_OPENAI_ENDPOINT="https://your-resource.openai.azure.com"
codex --provider azure --model gpt-4.1
6.3 接入本地模型(Ollama)
# 先启动 Ollama
ollama serve
ollama pull deepseek-coder-v2
# 使用 Ollama
export OPENAI_API_KEY="ollama" # 随便填
codex --provider openai-compatible \
--model deepseek-coder-v2 \
--base-url http://localhost:11434/v1
6.4 接入 Google Gemini
export GEMINI_API_KEY="your-gemini-key"
codex --provider gemini --model gemini-2.5-pro
6.5 接入 OpenRouter(一个 key 用百种模型)
export OPENROUTER_API_KEY="sk-or-xxxx"
codex --provider openrouter --model anthropic/claude-sonnet-4
codex --provider openrouter --model deepseek/deepseek-r1
6.6 在 config.yaml 中配置(免得每次敲参数)
# ~/.codex/config.yaml
model: deepseek-coder-v2
providers:
openai-compatible:
baseURL: http://localhost:11434/v1
envKey: OPENAI_API_KEY
七、实战场景大全 — 30 个高频用法
7.1 🆕 项目初始化
codex "创建一个 FastAPI 项目,包含以下结构:
- app/main.py (入口)
- app/routers/ (路由)
- app/models/ (数据模型)
- app/schemas/ (Pydantic Schema)
- tests/ (测试)
- requirements.txt
- Dockerfile
- docker-compose.yml
- README.md"
7.2 🐛 自动修 Bug
# 方式一:直接描述问题
codex "用户登录时报 500 错误,请排查 src/auth.py 并修复"
# 方式二:把错误日志喂给它
codex "$(cat error.log) 请分析并修复这个错误"
# 方式三:全自动跑测试 + 修复
codex --approval-mode full-auto "运行 pytest,分析失败原因并修复代码,直到所有测试通过"
7.3 📝 代码审查
# 审查某个文件
codex "审查 src/payment.py 的代码质量,关注安全性、性能、可维护性"
# 审查最近的改动
git diff HEAD~5 | codex "审查这些改动,列出潜在问题"
# 审查整个 PR
git diff main...feature-branch | codex "作为高级工程师审查这个 PR"
7.4 ♻️ 代码重构
codex "将 src/utils.py 中超过 50 行的函数拆分成更小的函数"
codex "把 src/ 下所有 class-based 组件改成 React Hooks 函数组件"
codex "给 src/api/ 下的所有函数添加类型注解和 docstring"
7.5 🧪 自动写测试
codex "为 src/services/order.py 中的所有公开方法编写单元测试,
使用 pytest + pytest-mock,覆盖正常流程和异常边界"
7.6 📖 自动写文档
codex "分析整个 src/ 目录,生成完整的 API 文档(Markdown 格式),
包含每个模块的说明、函数签名、参数说明、返回值、使用示例"
7.7 🔄 数据库迁移
codex "我在 app/models/user.py 中新增了 phone_number 字段,
请帮我创建 Alembic 迁移脚本并测试"
7.8 🐳 Docker / DevOps
codex "为这个项目编写生产环境的 Dockerfile(多阶段构建)和 docker-compose.yml(含 PostgreSQL + Redis)"
codex "编写 GitHub Actions CI/CD 配置,包含 lint、test、build、deploy 步骤"
7.9 🔍 项目分析
codex "分析这个项目的整体架构,画出模块依赖关系(用 Mermaid 图),
并指出设计上的问题"
7.10 🌐 Git 操作
codex "把当前所有改动按功能分成多个语义化的 commit"
codex "分析 git log 最近 20 条记录,生成本周的开发周报"
codex "解决当前的 merge conflict"
八、高级技巧 — 从入门到「离谱」
8.1 🔗 多步骤任务链
codex --approval-mode full-auto \
"请依次执行以下步骤:
1. 分析 src/ 下的代码,找出所有没有错误处理的函数
2. 为这些函数添加适当的 try-except 和日志记录
3. 为新增的错误处理编写单元测试
4. 运行 pytest 确保全部通过
5. git add 并 commit,message 格式:fix: add error handling to xxx
6. 输出改动总结报告到 CHANGELOG.md"
8.2 🔀 并行双 Codex 互相审查
#!/bin/bash
# dual_codex.sh — 双 Codex 协作
mkdir -p .codex
# 并行:A 开发,B 开发
codex --approval-mode full-auto \
"实现 src/auth.py 用户认证模块,完成后摘要写入 .codex/a_done.md" &
codex --approval-mode full-auto \
"实现 src/payment.py 支付模块,完成后摘要写入 .codex/b_done.md" &
wait
# 并行:交叉审查
codex --approval-mode full-auto \
"审查 src/payment.py,问题写入 .codex/review_payment.md" &
codex --approval-mode full-auto \
"审查 src/auth.py,问题写入 .codex/review_auth.md" &
wait
# 并行:修复
codex --approval-mode full-auto \
"按 .codex/review_auth.md 修复 src/auth.py" &
codex --approval-mode full-auto \
"按 .codex/review_payment.md 修复 src/payment.py" &
wait
echo "✅ 开发 → 审查 → 修复 全流程完成!"
8.3 🔄 Watch 模式 — 文件变化自动响应
# 配合 fswatch / inotifywait 实现
fswatch -o src/ | while read; do
codex --approval-mode full-auto -q \
"src/ 目录有文件变化,运行 pytest 并修复失败的测试"
done
8.4 📊 批量处理多个仓库
#!/bin/bash
# batch_codex.sh
REPOS=("project-a" "project-b" "project-c")
for repo in "${REPOS[@]}"; do
echo "处理 $repo ..."
cd ~/workspace/$repo
codex --approval-mode full-auto -q \
"升级所有依赖到最新版本,修复 breaking changes,确保测试通过" &
done
wait
echo "全部仓库处理完成!"
8.5 🧠 上下文增强技巧
# 技巧1:先让 Codex 了解项目再干活
codex "先阅读 README.md、CODEX.md 和 src/ 下的核心文件,
理解项目架构后再实现用户头像上传功能"
# 技巧2:提供参考实现
codex "参考 src/routers/users.py 的风格,
用同样的模式实现 src/routers/products.py"
# 技巧3:给出具体约束
codex "实现搜索功能,要求:
- 使用 Elasticsearch
- 支持中文分词
- 响应时间 < 200ms
- 参考 docs/search-spec.md 的接口规范"
九、沙箱安全机制详解
9.1 Codex 的安全模型
┌──────────────────────────────────────────┐
│ Codex 沙箱 │
│ │
│ ✅ 可以: │
│ - 读取项目目录下的文件 │
│ - 在项目目录下创建/编辑文件 │
│ - 执行受限的 Shell 命令 │
│ - 访问白名单域名的网络 │
│ │
│ ❌ 不能: │
│ - 访问项目目录外的文件系统 │
│ - 随意访问互联网 │
│ - 修改系统配置 │
│ - 安装系统级软件 │
│ - 访问其他用户的数据 │
└──────────────────────────────────────────┘
9.2 不同系统的沙箱实现
| 操作系统 | 沙箱技术 | 隔离级别 |
|---|---|---|
| macOS | Apple Seatbelt (sandbox-exec) |
⭐⭐⭐⭐ 强 |
| Linux | Docker 容器 / Landlock | ⭐⭐⭐⭐ 强 |
| Windows | WSL2 中运行(借用 Linux 沙箱) | ⭐⭐⭐ 中 |
9.3 网络白名单配置
在 full-auto 模式下,默认禁止网络访问。需要网络时:
# ~/.codex/config.yaml
sandbox:
networking: true # 开启网络(谨慎!)
# 或者只允许特定域名
allowedDomains:
- "registry.npmjs.org"
- "pypi.org"
- "api.github.com"
十、环境变量完整参考
# ============ API Keys ============
export OPENAI_API_KEY="sk-..." # OpenAI
export AZURE_OPENAI_API_KEY="..." # Azure
export GEMINI_API_KEY="..." # Google Gemini
export OPENROUTER_API_KEY="sk-or-..." # OpenRouter
export ANTHROPIC_API_KEY="sk-ant-..." # Anthropic (如通过 compatible)
# ============ API 端点 ============
export OPENAI_BASE_URL="https://api.openai.com/v1" # 自定义端点
export OPENAI_ORG_ID="org-xxx" # 组织 ID
# ============ 代理配置 ============
export HTTP_PROXY="http://127.0.0.1:7890"
export HTTPS_PROXY="http://127.0.0.1:7890"
# ============ Codex 行为 ============
export CODEX_HOME="~/.codex" # 配置目录
export CODEX_SANDBOX_TYPE="docker" # 沙箱类型
十一、命令行参数速查表
codex [options] [prompt]
选项:
--model, -m <model> 指定模型 (默认: o4-mini)
--approval-mode, -a <mode> 审批模式: suggest | auto-edit | full-auto
--provider <provider> AI 提供商
--base-url <url> 自定义 API 地址
--quiet, -q 安静模式,减少输出
--json JSON 格式输出(适合脚本解析)
--config <path> 指定配置文件路径
--no-sandbox 禁用沙箱(⚠️ 危险)
--version, -v 显示版本号
--help, -h 显示帮助
十二、交互模式内置命令
在交互式会话中,可以使用以下特殊命令:
/help 显示帮助信息
/model <name> 切换模型
/approval <mode> 切换审批模式
/context 查看当前上下文大小
/clear 清空对话历史
/history 查看对话历史
/undo 撤销上一次文件修改
/diff 查看当前所有文件改动
/quit 或 /exit 退出 Codex
快捷键:
Ctrl + C 中断当前操作
Ctrl + D 退出
Tab 自动补全文件名
↑ / ↓ 浏览历史输入
十三、CI/CD 集成 — 让 Codex 进入你的流水线
13.1 GitHub Actions 集成
# .github/workflows/codex-review.yml
name: Codex Code Review
on:
pull_request:
types: [opened, synchronize]
jobs:
codex-review:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- uses: actions/setup-node@v4
with:
node-version: '22'
- name: Install Codex
run: npm install -g @openai/codex
- name: Run Codex Review
env:
OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}
run: |
DIFF=$(git diff origin/main...HEAD)
echo "$DIFF" | codex --approval-mode suggest -q \
"审查这个 PR 的改动,输出 Markdown 格式的审查报告" \
> review.md
- name: Post Review Comment
uses: actions/github-script@v7
with:
script: |
const fs = require('fs');
const review = fs.readFileSync('review.md', 'utf8');
github.rest.issues.createComment({
owner: context.repo.owner,
repo: context.repo.repo,
issue_number: context.issue.number,
body: review
});
13.2 Git Hook 集成
# .git/hooks/pre-commit
#!/bin/bash
# 提交前自动让 Codex 审查
STAGED_FILES=$(git diff --cached --name-only --diff-filter=ACM)
if [ -n "$STAGED_FILES" ]; then
echo "🔍 Codex 正在审查你的代码..."
git diff --cached | codex --approval-mode suggest -q \
"快速审查这些改动,如果有严重问题就报告,没有就说 LGTM"
fi
十四、性能优化与省钱技巧
14.1 Token 用量优化
# 1. 限定操作范围,减少上下文
codex "只看 src/auth.py 文件,优化 login 函数" # ✅
codex "优化项目中所有的认证相关代码" # ❌ 太宽泛
# 2. 使用更便宜的模型做简单任务
codex -m gpt-4.1-nano "给这个函数加注释"
codex -m o3 "设计分布式锁方案" # 复杂任务用强模型
# 3. 用 -q 模式避免多余输出
codex -q "快速修复 linter 报错"
14.2 响应速度优化
# 使用小模型加速
codex -m o4-mini "简单的格式化任务"
# 本地模型零延迟
codex --provider openai-compatible \
--base-url http://localhost:11434/v1 \
-m codellama "补全这个函数"
14.3 模型选择策略
简单任务(注释/格式化/重命名)→ gpt-4.1-nano / gpt-4.1-mini
日常开发(写功能/修 Bug) → o4-mini(默认,性价比最高)
复杂任务(架构设计/算法) → o3 / gpt-4.1
代码审查(需要深度理解) → gpt-4.1 / o3
十五、常见问题排查(FAQ)
Q1: 报错 OPENAI_API_KEY not set
# 检查是否设置了环境变量
echo $OPENAI_API_KEY
# 如果用的是 zsh,确保写入了 ~/.zshrc
echo 'export OPENAI_API_KEY="sk-xxx"' >> ~/.zshrc
source ~/.zshrc
Q2: 沙箱启动失败(macOS)
# macOS 需要允许终端的完全磁盘访问权限
# 系统设置 → 隐私与安全 → 完全磁盘访问 → 添加你的终端 App
# 或者临时禁用沙箱(不推荐)
codex --no-sandbox "你的任务"
Q3: 网络超时(中国大陆用户)
# 方案1:配置代理
export HTTPS_PROXY="http://127.0.0.1:7890"
# 方案2:使用国内中转 API
export OPENAI_BASE_URL="https://your-proxy.com/v1"
# 方案3:使用本地模型
codex --base-url http://localhost:11434/v1 -m qwen2.5-coder
Q4: Codex 修改了不该改的文件
# 用 /undo 撤销
/undo
# 或者用 Git 恢复
git checkout -- path/to/file
git stash # 暂存所有改动
# 预防:在 CODEX.md 中明确说明
# "不要修改 migrations/、vendor/、dist/ 目录下的任何文件"
Q5: Token 超限 / 上下文太长
# 缩小任务范围
codex "只关注 src/api/auth.py 这一个文件"
# 使用 .codexignore 排除无关文件
echo "node_modules/
dist/
*.min.js
*.lock" > .codexignore
十六、.codexignore — 控制 Codex 的「视野」
项目根目录创建 .codexignore,语法同 .gitignore:
# .codexignore
# 依赖目录(太大了)
node_modules/
vendor/
venv/
.venv/
# 构建产物
dist/
build/
*.min.js
*.min.css
# 敏感文件
.env
.env.local
*.pem
*.key
# 大文件
*.zip
*.tar.gz
*.sqlite
*.db
# 锁文件(通常不需要 AI 看)
package-lock.json
yarn.lock
poetry.lock
Pipfile.lock
十七、进阶:自定义 Codex 工作流
17.1 Makefile 集成
# Makefile
.PHONY: ai-review ai-test ai-docs ai-refactor
# AI 代码审查
ai-review:
@git diff --staged | codex -q "审查这些改动,Markdown 格式输出"
# AI 驱动测试
ai-test:
@codex --approval-mode full-auto -q \
"运行测试,修复失败的用例,直到全部通过"
# AI 生成文档
ai-docs:
@codex --approval-mode auto-edit -q \
"为 src/ 下所有公开函数生成 docstring"
# AI 重构
ai-refactor:
@codex --approval-mode auto-edit \
"识别代码异味(code smell)并重构,保持功能不变"
使用:
make ai-review
make ai-test
17.2 VS Code 任务集成
// .vscode/tasks.json
{
"version": "2.0.0",
"tasks": [
{
"label": "Codex: Fix Current File",
"type": "shell",
"command": "codex --approval-mode auto-edit '审查并优化 ${file}'",
"group": "build"
},
{
"label": "Codex: Write Tests",
"type": "shell",
"command": "codex --approval-mode auto-edit '为 ${file} 编写单元测试'",
"group": "test"
}
]
}
十八、完整实战案例 — 从零构建一个博客 API
# Step 1: 初始化项目
codex --approval-mode full-auto \
"创建一个 FastAPI 博客 API 项目:
- 用户注册/登录(JWT 认证)
- 文章 CRUD
- 评论功能
- 使用 SQLAlchemy + PostgreSQL
- 包含 Dockerfile 和 docker-compose.yml
- 包含完整的 pytest 测试
- 包含 API 文档(自动生成)"
# Step 2: AI 审查
codex "以资深工程师身份审查整个项目,重点关注:
1. 安全性(SQL注入、XSS、CSRF)
2. 性能(N+1 查询、缺少索引)
3. 代码质量(重复代码、命名规范)
输出详细的审查报告"
# Step 3: 按审查意见修复
codex --approval-mode full-auto \
"根据刚才的审查报告,修复所有问题"
# Step 4: 运行测试
codex --approval-mode full-auto \
"运行 pytest -v,确保所有测试通过,
失败的就修复,直到 100% 通过"
# Step 5: 生成部署文档
codex "生成完整的部署文档 DEPLOY.md,包括:
- 本地开发环境搭建
- Docker 部署步骤
- 生产环境配置清单
- 监控和日志方案"
十九、速查卡片(打印贴桌上)
╔══════════════════════════════════════════════════════════╗
║ CODEX CLI 速查卡 ║
╠══════════════════════════════════════════════════════════╣
║ ║
║ 安装: npm i -g @openai/codex ║
║ Key: export OPENAI_API_KEY="sk-..." ║
║ ║
║ 基本用法: ║
║ codex # 交互模式 ║
║ codex "任务描述" # 单次任务 ║
║ cat file | codex "分析" # 管道输入 ║
║ ║
║ 审批模式 (-a): ║
║ suggest → 只建议,不动手 ║
║ auto-edit → 自动改文件,命令要确认 ║
║ full-auto → 全自动(⚠️沙箱内) ║
║ ║
║ 模型 (-m): ║
║ o4-mini → 默认,性价比之王 ║
║ gpt-4.1 → 强力综合模型 ║
║ o3 → 最强推理 ║
║ ║
║ 配置文件: ║
║ ~/.codex/config.yaml # 全局配置 ║
║ ~/.codex/instructions.md # 全局指令 ║
║ 项目/CODEX.md # 项目指令(自动读取) ║
║ 项目/.codexignore # 忽略文件 ║
║ ║
║ 交互命令: ║
║ /undo /diff /model /clear /help /exit ║
║ ║
╚══════════════════════════════════════════════════════════╝
二十、结语
Codex CLI 的本质是把 AI 从「建议者」变成了「执行者」。它不只是告诉你该怎么改,而是直接帮你改好、测好、提交好。
掌握了本文的内容,你已经覆盖了 Codex CLI 100% 的功能面。建议从
suggest模式开始,熟悉后切到auto-edit,最终在信任的项目中使用full-auto释放全部生产力。
🌟 如果这篇文章对你有帮助,别忘了点赞收藏!有问题欢迎评论区交流~
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐


所有评论(0)