Codex CLI 工作流实战教程

1 | 工具定位:为什么要在工作流里用 Codex CLI?

  • 终端原生:在 shell 内即可调用最新 OpenAI 模型完成“读‑写‑跑”全过程,免切 IDE 或浏览器
  • 可控自治:三档 Approval Mode(Suggest → Auto‑Edit → Full‑Auto)让你在安全与自动化间自由切换
  • 沙箱防护:本地运行+无网络沙箱,代码不出机器;Git 回滚随时兜底

2 | 环境准备

步骤 命令 / 要点
Node.js ≥ 22、macOS 12+/Ubuntu 20.04+(Win 需 WSL2)
全局安装 npm i -g @openai/codex
配置密钥 export OPENAI_API_KEY=<your‑key>
运行检查 codex –help(生成 shell‑completion 时用 codex completion zsh 等)

3 | 基础交互流程

# 1) 交互模式(Suggest,默认)
codex                      # 进入 REPL
codex "explain this repo"  # 带首 prompt

# 2) 半自动批量编辑
codex --auto-edit "migrate Jest->Vitest"

# 3) 全自动原型
codex --full-auto "scaffold a Rust REST API with Auth"
  • 回显中出现 patch / shell 时按 y/n 审核。
  • /mode 可随时热切模式。
  • 常用 flags:-m 选版本,-q 静默输出到 JSON。

4 | 五大典型工作流场景

场景 操作示例 价值
快速 bug 修复 codex "fix TypeError in src/price.ts line 42" AI 查读文件→生成补丁→跑测试,几乎零上下文切换
批量代码重构 codex –auto-edit "rename all *.jpeg to *.jpg & update imports" 多文件批改+git mv,避免脚本手搓错误
绿色字段开发 codex –full-auto "build a Next.js blog with MDX & Tailwind" 高自治原型,生成‑安装‑运行‑演示一条龙
安全扫描 / 代码评审 codex "review this repo for vulns and propose patches" 输出整改清单或直接修补 CVE
CI/CD 自动化 GitHub Action:codex -a auto-edit -q "update CHANGELOG" 在流水线做文档生成、测试修复、迁移脚本

5 | 高质量 Prompt 写法

参考官方 prompting guide,总结“三段式”

  1. 任务一句话:清晰描述结果;如“在 utils/priceUtils.js 中添加 10% 折扣”。
  2. 上下文要点:指定文件/函数/测试位置,避免大模型盲搜。
  3. 验收标准:告诉 Codex 何为完成—测试通过、CLI 退出码 0 或写入 final_output.md。

复杂任务可把说明写入 task.md 再 codex "$(cat task.md)"。


6 | 配置与团队协作

文件 作用
~/.codex/config.yaml 默认模型、错误策略等全局设置
~/.codex/instructions.md 个人偏好(如“始终用 pnpm”)。
CODEX.md / codex.md 项目内规则(目录结构、Lint 约束)

7 | 安全最佳实践

  • 最小权限:先用 Suggest ,确认稳定后再切 Auto‑Edit / Full‑Auto。
  • Git 保护:无版本控制时 Codex 会警告;务必启用分支或 pre‑commit。
  • 网络沙箱:Full‑Auto 下任何外网请求默认阻断,可手动白名单 。

8 | 升级 & 生态

codex --upgrade   # 一键更新
  • 与 Amazon Q Developer CLI 同属“Agentic Coding”范畴,但 Codex 完全开源、模型可换;Q CLI 更偏 AWS 生态和云资源自动化 。
  • 未来计划开放 命令白名单自定义子代理,适合构建企业级 Dev‑Agent 流水线(官方 Roadmap)。

结语

将 Codex CLI 嵌入你的日常 Git / CI / 脚本流程,就像给终端加了一位懂业务的副驾——小任务提高 5‑10× 效率,大型重构也有自动化沙盘保驾。现在就试试 codex "explain this repo",让它先“认识”你的代码,然后交给它更多细活!

echo ‘export OPENAI_API_KEY="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"’ >> ~/.zshrc

source ~/.zshrc

已有 0 条评论 新浪微博
滚动至顶部