如果你刚开始使用 Codex,或者刚接触编码代理,这份指南会帮你更快拿到更好的结果。它覆盖了在 CLI、IDE 扩展 和 Codex 应用 中让 Codex 更高效的核心习惯:从提示与规划,到验证、MCP、技能和自动化。
当你把 Codex 从“一次性助手”改成“可长期配置和打磨的队友”来使用时,它的效果最好。
一个实用的思路是:先给对任务上下文,用 AGENTS.md 存放长期有效的指导,按你的工作流配置 Codex,用 MCP 连接外部系统,把重复工作沉淀成技能,再把稳定流程自动化。
强力起步:上下文与提示
即使你的提示词不完美,Codex 也已经足够强,能产生实际价值。很多时候,你只做最少准备就把一个难题交给它,也能得到不错的结果。清晰的 prompting 不是“有用”的前提,但它确实会让结果更可靠,尤其是在大型代码库或高风险任务里。
如果你在大型或复杂仓库中工作,最大的突破点是给 Codex 正确的任务上下文,并明确你希望它如何完成。
一个好的默认提示结构是包含四件事:
- 目标(Goal):你想改什么、做什么?
- 上下文(Context):这个任务涉及哪些文件、目录、文档、示例或报错?你可以用
@指定相关文件。 - 约束(Constraints):Codex 应遵循哪些规范、架构、安全要求或约定?
- 完成标准(Done when):任务在什么条件下才算完成,例如测试通过、行为变化、或 Bug 不再复现?
这样能帮助 Codex 保持范围聚焦、减少主观假设,产出更容易评审的结果。
根据任务难度选择推理等级,并实际测试哪种设置最适合你的流程。不同用户、不同任务的最佳配置并不相同。
- Low:更快,适合边界清晰的任务
- Medium 或 High:适合更复杂的修改或调试
- Extra High:适合长链路、代理式、重推理任务
为了更快提供上下文,你可以在 Codex 应用里用语音听写,把想做的事直接说给 Codex,而不是全靠手打。
如果任务复杂、含糊、或难以准确描述,先让 Codex 做计划,再开始写代码。
下面几种方式都很好用:
使用 Plan 模式: 对大多数用户来说,这是最简单也最有效的选项。Plan 模式会让 Codex 先收集上下文、提出澄清问题,再形成更扎实的执行计划。可用 /plan 或 Shift+Tab 切换。
让 Codex 先“采访”你: 如果你有一个模糊想法,但不知道怎么描述清楚,让 Codex 先问你问题。告诉它要挑战你的假设,把模糊想法先变成可执行内容,再写代码。
使用 PLANS.md 模板: 对更高级流程,你可以配置 Codex 按 PLANS.md 或执行计划模板来处理长周期或多步骤工作。详情见 execution plans guide。
当某种提示模式验证有效后,下一步就是别再手动重复它。这正是 AGENTS.md 的价值所在。
可以把 AGENTS.md 理解成面向代理的开放格式 README。它会自动载入上下文,也是你和团队在仓库里固化 Codex 工作方式的最佳位置。
一个好的 AGENTS.md 应覆盖:
- 仓库结构与关键目录
- 项目运行方式
- 构建、测试、lint 命令
- 工程约定与 PR 期望
- 约束与禁止项
- 如何定义“完成”与验证方式
CLI 里的 /init 斜杠命令可以快速在当前目录脚手架出一个起始版 AGENTS.md。这会是很好的起点,但你应该按团队真实的构建、测试、评审和发布流程做调整。
你可以在不同层级放置 AGENTS.md:放在 ~/.codex 的全局 AGENTS.md 用于个人默认,仓库级文件用于共享规范,子目录里更具体的文件用于局部规则。离当前目录更近且更具体的文件优先级更高。
务求实用。短小且准确的 AGENTS.md,比冗长但模糊的规则清单更有价值。先写基础内容,只有当你观察到重复错误时,再追加新规则。
如果 AGENTS.md 越写越大,保持主文件精简,并把规划、代码评审、架构等任务细则拆到独立 markdown 文件后再引用。
当 Codex 在同一件事上犯错两次时,让它做一次复盘,然后更新 AGENTS.md。这样沉淀出来的指导会始终贴近真实摩擦点。
配置是让 Codex 在不同会话和不同界面保持一致行为的核心手段之一。比如,你可以配置模型默认值、推理强度、沙箱模式、审批策略、profiles 和 MCP 设置。
一个不错的起步模式是:
- 个人默认写在
~/.codex/config.toml(在 Codex 应用里:Settings → Configuration → Open config.toml) - 仓库特定行为写在
.codex/config.toml - 命令行覆盖只用于一次性场景(如果你在用 CLI)
config.toml 用于定义长期偏好,比如 MCP 服务器、profiles、多代理配置和实验特性。你可以直接编辑,也可以让 Codex 帮你改。
Codex 自带操作系统级沙箱能力,你主要可以控制两个关键旋钮:审批模式和沙箱模式。审批模式决定 Codex 在何时请求你批准命令;沙箱模式决定 Codex 是否能在目录中读写,以及代理可访问哪些文件。
如果你刚开始用编码代理,先用默认权限。默认情况下把审批和沙箱收紧,只有在信任仓库或明确场景确实需要时,再放宽权限。
注意:CLI、IDE 和 Codex 应用共享同一套配置层。更多信息见 sample configuration。
尽早把 Codex 配到你的真实环境。很多“质量问题”本质其实是“配置问题”:比如工作目录错了、没有写权限、模型默认不对、或者工具/连接器缺失。
别止步于“让 Codex 改代码”。你应该要求它在需要时补测试、运行相关检查、确认结果,并在你接受前先评审自己的改动。
Codex 可以帮你跑完整闭环,但前提是它知道什么叫“好结果”。这些标准可以来自你的提示,也可以来自 AGENTS.md。
这可以包括:
- 为改动编写或更新测试
- 运行正确的测试套件
- 检查 lint、格式化或类型检查
- 确认最终行为与需求一致
- 评审 diff,识别 bug、回归或高风险模式
在 Codex 应用里切换 diff 面板,可以直接在本地 review changes。点击具体行可提交反馈,反馈会作为下一轮 Codex 的上下文。
这里一个很实用的命令是 /review,它提供几种代码评审方式:
- 基于目标分支做 PR 风格评审
- 评审未提交改动
- 评审某个 commit
- 使用自定义评审指令
如果你和团队有 code_review.md 文件,并在 AGENTS.md 中引用,Codex 也可以按这套规范执行评审。对于想在不同仓库和贡献者间保持评审一致性的团队,这是非常强的模式。
Codex 不该只负责“写代码”。在正确指令下,它还可以帮你 测试、检查和评审。
如果你在用 GitHub Cloud,可以配置 Codex 为你的 PR 执行 code reviews for your PRs。在 OpenAI 内部,Codex 会评审 100% 的 PR。你可以开启自动评审,或在需要时 @Codex 触发响应式评审。
用 MCP 接入外部上下文
当 Codex 需要的上下文不在仓库内时,就该用 MCP。这样 Codex 可以直接连接你已经在用的工具和系统,你不必再把实时信息反复复制粘贴进提示词。
Model Context Protocol(MCP)是把 Codex 连接到外部工具和系统的开放标准。
以下场景适合使用 MCP:
- 所需上下文在仓库外
- 数据变化频繁
- 你希望 Codex 调用工具,而不是依赖粘贴说明
- 你需要在多个用户或项目间复用同一集成
Codex 同时支持带 OAuth 的 STDIO 和 Streamable HTTP 服务器。
在 Codex 应用中,进入 Settings → MCP servers 可查看自定义与推荐服务器。很多情况下,Codex 也可以帮你安装所需服务器,你只需要开口提。你也可以在 CLI 中使用 codex mcp add 命令,通过名称、URL 等参数添加自定义服务器。
只在工具能真正解锁工作流时再接入,不要一开始就把你所有工具都接上。先从 1~2 个能明确消除你高频手工循环的工具开始,再逐步扩展。
当某个流程开始可重复时,不要再依赖长提示或反复来回沟通。用 Skill 把这套方法打包成 SKILL.md、上下文和配套逻辑,让 Codex 稳定复用。技能可跨 CLI、IDE 扩展和 Codex 应用生效。
每个技能尽量只做一件事。先定义 2~3 个具体用例,写清输入和输出,并在描述里明确“这个技能做什么、何时使用”,还要包含用户真实会说的触发语句类型。
别一上来就覆盖所有边界情况。先用一个代表性任务跑通流程,再把它沉淀成技能并持续改进。只有当脚本或附加资产确实提升可靠性时再加入。
一个经验法则:如果你总在复用同一段提示,或总在纠正同一类流程,它大概率就该变成一个技能。
技能尤其适合这些重复任务:
- 日志分诊
- 发布说明草拟
- 按清单做 PR 评审
- 迁移规划
- 遥测或事故总结
- 标准化调试流程
$skill-creator 技能是脚手架第一个技能版本的最佳起点,而 $skill-installer 技能可用于本地安装。技能中最关键的部分之一是描述:它必须明确这个技能做什么、何时使用。
个人技能存储在 $HOME/.agents/skills,团队共享技能可以提交到仓库内的 .agents/skills。这对新同事 onboarding 特别有帮助。
当流程稳定后,你可以把它调度为后台定时任务。在 Codex 应用中,automations 允许你为重复任务选择项目、提示词、执行频率和执行环境。
一旦某件事对你来说开始重复,就可以在 Codex 应用的 Automations 页面创建自动化。你可以选择运行在哪个项目里、运行什么提示(也可以调用技能)、以及运行频率。你还可以选择让自动化在独立 git worktree 中运行,或直接在本地环境运行。更多见 git worktrees。
常见的高价值候选包括:
- 汇总最近提交
- 扫描潜在 bug
- 草拟发布说明
- 检查 CI 失败
- 生成站会摘要
- 定时运行可复用分析流程
一个很实用的规则是:技能定义“方法”,自动化定义“时间表”。如果流程还需要大量人工引导,先把它打磨成技能;一旦可预测,自动化就会成为真正的效率放大器。
自动化不只用于执行,也适合做复盘和维护。定期回顾近期会话,汇总重复摩擦点,并持续优化提示、指令和工作流配置。
Codex 会话不只是聊天记录,它是会持续累积上下文、决策和动作的工作线程,所以线程管理质量会显著影响结果质量。
Codex 应用里的线程管理最轻松,因为你可以 pin 线程并创建 worktree。如果你在用 CLI,这些 slash commands 特别实用:
/experimental:切换实验功能并写入config.toml/resume:恢复已保存会话/fork:在保留原始对话的同时分叉新线程/compact:当线程过长时,生成早期上下文摘要(注意 Codex 也会自动做对话压缩)/agent:在并行代理场景下切换活跃代理线程/theme:选择语法高亮主题/apps:在 Codex 中直接使用 ChatGPT Apps/status:查看当前会话状态
为每个“连贯工作单元”维护一个线程。如果工作仍属于同一个问题,通常留在同一线程更好,因为它保留了完整推理脉络。只有在工作真正分叉时再 fork。
使用 Codex 的 multi-agent 工作流,把边界清晰的工作从主线程卸载出去。让主代理专注核心问题,把探索、测试、分诊等任务交给子代理。
初次使用 Codex 时,常见误区有:
- 把长期规则都塞进提示词,而不是迁移到
AGENTS.md或技能 - 没告诉代理如何运行构建和测试,导致它无法验证自己的工作
- 多步骤复杂任务跳过规划
- 在没理解流程前就给 Codex 电脑的完全权限
- 多个实时线程操作同一批文件却不使用 git worktree
- 在手动流程尚不稳定时就急着自动化
- 把 Codex 当成必须步步盯着的工具,而不是并行协作伙伴
- 按“每个项目一个线程”而不是“每个任务一个线程”组织会话,导致上下文膨胀、结果随时间变差