OpenAI Codex 最佳实践:从一次性提示到可复用的工程化协作

OpenAI Codex 怎么用才靠谱?本文改写自官方 best-practices——好提示的四要素(目标/上下文/约束/完成标准)、难任务先规划、用 AGENTS.md 沉淀规则、按层级配置、测试与 /review 把关、用 MCP 接外部上下文、把重复活儿做成 skill 与 automation、用会话控制管理长任务,以及八个常见误区。文末附与 Claude Code 的对照。

阅读时长: 6 分钟
共 2794字
作者: longlikun

OpenAI Codex 是个"一个 agent 跨 CLI / IDE / App / 云"的编程助手——零配置也能用,但要在大型代码库里稳定产出,清晰的提示和一点点工程化设置会带来质的差别。这篇把官方的 best-practices 整理成中文,并在文末附上与 Claude Code 最佳实践的对照(很多理念是同构的,你可以横向迁移)。

一、第一步就用好:上下文与提示

Codex 即使在极简设置下也有价值,但好的提示在大代码库里会显著提升可靠性。官方推荐每条提示包含四个要素:

  • 目标(Goal):要改什么、建什么?
  • 上下文(Context):相关的文件、文件夹、文档、示例或报错——用 @ 提及。
  • 约束(Constraints):规范、架构、安全要求、约定。
  • 完成标准(Done when):什么算完成?比如"测试通过"“bug 解决”。

另外要按任务复杂度选推理档位:scoped 小任务用 Low,复杂改动用 Medium/High,超长的 agentic 工作用 Extra High。在 Codex App 里还能用语音听写更快地输入上下文。

二、难任务先规划,再写代码

复杂或含糊的任务,先规划再动手。三种方式:

  • Plan 模式:用 /planShift+Tab 切换,让 Codex 先收集上下文、提澄清问题,再开始实现。
  • Agent 访谈:让 Codex 反过来问你,把模糊想法逼成具体需求。
  • PLANS.md 模板:进阶工作流,用一个文件管理多步骤工作。

三、用 AGENTS.md 把指导沉淀成可复用

AGENTS.md面向 agent 的 README,会自动载入上下文。一份好的 AGENTS.md 应包含:

  • 仓库结构、重要目录
  • 项目怎么跑起来
  • 构建 / 测试 / lint 命令
  • 工程约定、PR 规范
  • 约束与禁止项
  • 完成标准与验证方法

/init 可以在当前目录生成起步模板。AGENTS.md 文件分多个层级:全局(~/.codex/AGENTS.md)、仓库根目录(AGENTS.md)、子目录级(AGENTS.md)——Codex 会从项目根目录一路读到当前工作目录,越近的文件越具体

进阶一点,每个目录里还可以放 AGENTS.override.md:Codex 会优先读取它,没有时才读同级的 AGENTS.md。如果你的团队已有其他说明文件名,可以用 project_doc_fallback_filenames 配置 fallback 名称;同时注意项目说明默认有 project_doc_max_bytes 上限(官方默认 32 KiB),太长会被截断,所以更推荐按目录拆小、保持主文件精简。

强调一句话:“一份简短而准确的 AGENTS.md,比一份充满含糊规则的长文件有用得多。” 当反复出现同类错误,就让 Codex 做个复盘(retrospective),据此更新指导。

这条和 Claude Code 把 CLAUDE.md “当代码维护、狠心精简"的理念完全一致——臃肿是大忌。

四、配置:让偏好跨会话一致

配置用来建立跨会话、跨界面的持久偏好,推荐三层结构:

  • 个人默认:~/.codex/config.toml
  • 仓库特定:.codex/config.toml
  • 一次性覆盖:命令行参数

配置项涵盖模型选择、推理强度、sandbox 模式、审批策略、profiles、MCP 设置,也包括 project_doc_fallback_filenamesproject_doc_max_bytes 这类项目说明文件加载规则。原则是:从默认权限起步,默认保持审批和 sandbox 收紧,只在信任的仓库或明确需要的工作流里逐步放宽。把环境搭对(正确的工作目录、写权限、模型默认值、工具/连接器)能从源头避免质量问题。

五、用测试和 review 提升可靠性

Codex 的工作流不该止于"生成代码”,还要验证:

  • 写或更新测试
  • 跑测试套件
  • 执行 lint 和格式化检查
  • 确认行为符合需求
  • review diff,找 bug 和回归

/review 命令支持多种 review 模式:对照基分支的 PR 式 review、未提交改动 review、commit review、自定义 review 指令。团队可以维护一个 code_review.md、在 AGENTS.md 里引用它,让 Codex 应用一致的 review 标准。接上 GitHub Cloud 还能自动 review PR——官方提到 OpenAI 内部 100% 的 PR 都用 Codex review

六、用 MCP 接入外部上下文

MCP(Model Context Protocol)把 Codex 连到外部工具和系统,省去手动复制信息。什么时候该上 MCP:

  • 上下文在仓库之外
  • 数据频繁变化
  • 用工具比"复制一堆说明"更合适
  • 可复用的集成能让多人/多项目受益

Codex 支持 STDIO 和 Streamable HTTP(带 OAuth)两种 server,在 App 里 Settings → MCP servers 添加,或 CLI 里 codex mcp add

注意官方的告诫:“只在真正解锁某个工作流时才加工具”,别一上来把所有能连的服务都连上。

七、把重复活儿做成 skill

Skill 把指令打包成可复用的工作流,跨 CLI / IDE / App 通用。设计原则:

  • 单一职责:一个 skill 干一件事
  • 清晰的输入输出,配 2~3 个具体用例
  • 描述性标题,点明用途和适用场景
  • 用户真正会说的触发短语

适合做成 skill 的场景:日志排查、发布说明起草、PR review、迁移规划、遥测汇总、调试流程。用 $skill-creator 这个 skill 能脚手架出初版,迭代期间存本地。存放位置:$HOME/.agents/skills(个人)、.agents/skills(团队仓库)。

关键还是描述:“它应该说清这个 skill 做什么、什么时候用。”

八、用 automation 调度重复工作

当工作流稳定下来,就可以在 Automations 标签里做后台定时调度:指定项目、提示(里面调用 skill)、执行节奏。适合:提交摘要、bug 扫描、发布说明、CI 失败检查、站会汇总、可复用分析。

一句话点透二者关系:“skill 定义方法,automation 定义节奏。” 而且 automation 不只是执行任务,还支持复盘维护——回看会话、找摩擦点、迭代改进。

九、用会话控制管理长任务

会话会不断累积上下文和决策,管理得好对质量影响很大。CLI 关键命令:

命令 作用
/resume 恢复保存的对话
/fork 保留记录的同时分叉出一条新线
/compact 把前面冗长的上下文总结压缩
/agent 在多个并行 agent 线程间切换
/status 查看当前会话状态
/experimental 开关实验特性
/apps 在 Codex 内访问 ChatGPT apps
/theme 调语法高亮

原则:一条线程对应一个完整的工作单元,真正分叉时才 /fork。把有边界的任务(探索、测试、排查)交给 subagent,让主 agent 保持专注。

十、八个常见误区

误区 正解
持久规则塞进提示里 写进 AGENTS.md 或 skill
对 agent 藏着构建/测试命令细节 明确告诉它怎么跑
多步任务跳过规划 /plan
过早授予全部权限 从默认权限起步,先保持收紧,再按需放宽
多条活跃线程改同一批文件却不用 worktree 用 git worktree 隔离
不可靠的工作流也自动化 先让流程稳定再上 automation
事事盯着、不敢放手 善用并行
一个项目一条线程(而非一任务一线程) 按任务拆线程,避免上下文劣化

小结与对照

Codex 的最佳实践可以浓缩成一条主线:把"一次性的提示"逐步沉淀为"可复用的工程资产"——好提示(四要素)→ 先规划 → AGENTS.md 固化规则 → 配置统一偏好 → 测试/review 把关 → MCP 接外部 → skill 封装 → automation 调度 → 会话控制收尾。

如果你也在用 Claude Code,会发现两者理念高度同构,概念几乎一一对应:

主题 Codex Claude Code
项目级持久指令 AGENTS.md CLAUDE.md(也读 AGENTS.md)
先想后做 /plan 模式 plan 模式
权限/隔离 sandbox + 审批策略 六种权限模式
上下文压缩 /compact /compact/clear
隔离探索 subagent subagent
并行隔离 git worktree --worktree
可复用工作流 skill skill
接外部工具 MCP MCP

关于

关注我获取更多资讯

月球基地博客公众号二维码,扫码关注获取更多 AI 与编程资讯
📢 公众号
月球基地博客作者个人微信二维码,扫码交流 AI 与编程话题
💬 个人号
使用 Hugo 构建
主题 StackJimmy 设计