乐于分享
好东西不私藏

OpenAI 内部工程师曝光自家 AI 用法:先别急着写代码,让模型先做计划!

OpenAI 内部工程师曝光自家 AI 用法:先别急着写代码,让模型先做计划!
导读OpenAI 官方发布了一篇内部工程实践文章,披露了 Security、API、基础设施等多个技术团队每天使用 Codex 的真实工作流。核心方法论只有一条——先让模型在 Ask Mode 里生成实现计划,审完计划再让它动手改代码。一位产品工程师说自己整天开会,靠 Codex 在后台跑任务照样合并了 4 个 PR。

「先别写代码,先做计划」

大多数开发者用 AI 的方式,是把需求往对话框里一丢,然后等它吐代码。

OpenAI 自家工程师的用法完全相反。

2026 年 5 月,OpenAI 发布了一篇官方工程指南《How OpenAI uses Codex》,直接公开了内部团队每天怎么用自家 coding agent。这篇文章的内容来自对 OpenAI 工程师的访谈和内部使用数据,涉及 Security、Product Engineering、Frontend、API、Infrastructure、Performance Engineering 等多个技术团队。

▲ Alex Prompter 在 X 上转述了 OpenAI 的内部 AI 使用指南,称"这是他们团队做了但你可能没做的事"

这篇指南里最重要的一条实践,也是整个方法论的起点:

"For large changes, start by prompting Codex for an implementation plan using Ask mode, which then becomes the input for follow-up prompts when you switch to Code Mode."

「对大型改动,先让 Codex 在 Ask Mode 中生成实现计划,再把这个计划作为后续 Code Mode 的输入。」

翻译成大白话就是——先让模型做计划,你审完计划之后,它才能动手。

▲ OpenAI 官方文章开篇就写明:Codex 已在多个技术团队日常使用,材料来自工程师访谈与内部数据

Ask Mode 的底层逻辑:把审查前移

为什么要先让模型「问清楚」再动手?

OpenAI 官方原文的解释是:

"This two-step flow keeps Codex grounded and helps avoid errors in its output."

「两步流程能让 Codex 更有依据,减少输出错误。」

这里面的关键词是grounded——有依据、有锚点。

传统做法是直接让 AI 写完代码,然后你 review 一坨 diff。问题在于,如果模型从一开始就理解错了需求方向,那后面写的每一行代码都是在错误路径上越走越远。你花在 review 上的时间,大部分是在善后。

Ask Mode 的做法相当于在执行前插入了一个 checkpoint:让模型先列出它打算改哪些文件、怎么改、为什么这么改、有什么风险。你检查的对象从「已经写完的代码」前移到「即将执行的方案」。发现方向有偏差,改一句计划就行,不用推翻几百行代码。

这才是"让模型问清楚"的真正含义——把人类审查从事后救火变成事前把关。

▲ OpenAI 官方 best practices 页面:Start with Ask Mode 排在第一条

Prompt 要写成工程 Brief,别写成许愿

OpenAI 内部的第二条方法论,同样来自官方文章:

"Structure your prompt as if you are writing a Github Issue."

「把 prompt 写得像一个 GitHub Issue。」

什么意思?就是你给 AI 的指令不应该是「帮我优化一下这个页面」这种模糊需求,而应该包含:

  • 背景
    :这个功能当前的状态和已知问题
  • 目标
    :具体要达成什么效果
  • 文件路径和组件名
    :模型需要动哪些代码
  • 参考模块
    :「按照 module X 的方式实现」
  • diff 或文档片段
    :相关的上下文材料
  • 非目标
    :明确说清什么不用改

这和写一个好的 GitHub Issue 一模一样。工程师给同事派任务时不会只说「把这个弄好」,会把范围、约束、相关代码和验收标准全部列出来。给 AI 也一样。

prompt 的质量决定了模型输出的上限。而 prompt 的质量,取决于你愿意花多少工程化的功夫把上下文喂到位。

把 Codex 当异步任务队列:开会也能合 PR

OpenAI 内部工程师有一个用法让人印象深刻:

"I was in meetings all day and still merged 4 PRs because Codex was working in the background."

「我整天都在开会,但还是合并了 4 个 PR,因为 Codex 一直在后台工作。」

这背后的逻辑是——把 AI agent 当成一个异步任务队列

OpenAI 的工程师在主线开发中碰到低优先级的 bug、支线的重构任务或者临时发现的小问题,不会切分支、换上下文,而是直接给 Codex 发一个任务,让它在后台处理。等自己忙完了,回来 review 它生成的 PR。

另一位后端工程师的说法更具体:

"If I spot a drive-by fix, I fire a Codex task instead of swapping branches and review its PR when I'm free."

「发现一个顺手能修的问题,我会开一个 Codex 任务,等空了再看它的 PR。」

Codex 本身是云端沙盒里的 coding agent(据 TechCrunch 报道,它运行在 OpenAI 的云端虚拟机上,可以预加载 GitHub repo),处理简单功能、修 bug、跑测试等任务大约需要 1 到 30 分钟。这让「后台跑任务」在产品层面成立。

AI 在这里扮演的角色更接近一个不会打断你的异步队列,不再是一个需要你盯着的对话窗口。

AGENTS.md:给 AI 写一份「入职手册」

OpenAI 的第五条方法论涉及一个具体的文件机制——AGENTS.md。

"Codex reads AGENTS.md files before doing any work."

「Codex 在开始任何工作之前,都会先读取 AGENTS.md 文件。」

▲ OpenAI Developers 文档明确写道:Codex 在开始工作前会读取 AGENTS.md

AGENTS.md 的作用类似于给 AI agent 写的「入职指南」。你在这个文件里写清楚:

  • 命名约定
    :变量用 camelCase 还是 snake_case
  • 测试命令
    :跑测试用什么脚本
  • 业务逻辑
    :哪些字段有特殊含义
  • 已知坑点
    :哪些依赖有版本问题
  • 禁区
    :哪些文件不能碰

人类新同事入职,会看 README 和 CONTRIBUTING.md。AI agent 入职,看的是 AGENTS.md。

OpenAI 的官方文档还建议按层级维护这个文件——全局一份、项目级一份,不同 repo 可以有不同覆盖。这样 Codex 在不同项目里都能快速进入状态,不用你每次都在 prompt 里重复说明上下文。

Best of N:同一个问题,让模型跑多个方案

OpenAI 内部的第六条实践是Best of N——同一个任务,让 Codex 同时生成多个方案,然后人类 review 比较,选最好的那个。

这在高风险决策场景特别有用。比如一个性能优化的方案,可能有三四种不同路径(改索引、改查询、加缓存、重构数据结构),让模型分别生成,你再对比权衡,比只看一个方案要靠谱得多。

但这里有一个容易忽略的成本:多个候选方案意味着更多的审查工作。如果你没有足够的测试覆盖和 code review 流程,Best of N 只是增加了表面上的选择,并没有提高实际质量。

开发者社区怎么看?

OpenAI 的官方指南发出来之后,Hacker News 上的开发者讨论也提供了一些不同角度。

▲ Hacker News 上关于 Codex App 的讨论,开发者关注点远不止模型能力

有人认为 Codex 免费开放和提高限额本质上是推动 adoption 的营销动作,提醒大家不要把官方宣传直接等同于实际使用率。

也有开发者分享了真实体验,说 Claude Code 和 Codex 在不同任务上互有胜负:

"Sometimes I can sit with Claude Code for an hour... try it with Codex and have it solved in five minutes, and also the opposite happens."

「有时候用 Claude Code 卡了一小时的问题,Codex 五分钟就解决了;反过来也一样。」

这说明 coding agent 的可靠性仍然取决于具体任务类型、工程 harness 和上下文配置。没有哪个模型在所有场景下都更强。

还有大量关于 native app、Electron、系统集成和资源占用的讨论。开发者关心的不只是模型输出的质量,还有整套工具的完整体验——权限管理、OS 适配、上下文窗口、CPU 和内存占用。

边界在哪里?

需要提醒的是,OpenAI 这篇文章的定位是Codex 研究预览阶段的内部工程实践,不代表所有 AI 工具的通用定律。

几个关键边界:

Ask Mode 需要人类把关。让模型先生成计划确实有用,但计划本身也可能遗漏测试路径、忽略安全约束。人类仍然要审查计划的完整性,不能把「先问」等同于「问了就对」。

「整天开会还合了 4 个 PR」是个人案例。这来自 OpenAI 一位工程师的描述,用来说明异步工作流的可能性。但把它理解成"每个人每天都能多合 4 个 PR"就过头了。

AGENTS.md 提供的是上下文,不代替安全保障。它告诉模型项目里的约定和禁区,但权限隔离、CI 流水线、自动化测试这些真正的安全边界还得靠别的机制。

Forbes 把 Codex 在内部的使用描述为"自主运行数据平台",但 OpenAI 官方原文始终在人机协作的框架下讨论这些实践。不要把媒体的措辞直接当成 OpenAI 的承诺。

给开发者的 Checklist

把 OpenAI 内部实践提炼成可操作的清单:

1. 先 Ask,再 Code。让模型列出实现计划、涉及的文件、风险点和测试路径,你审完再让它执行。

2. Prompt 按 Issue 标准写。背景、目标、非目标、文件路径、参考模块、验收标准,一个都不少。

3. 给 repo 维护 AGENTS.md。写清命名规范、测试命令、依赖版本、业务逻辑和禁区。

4. 低优先级任务扔给 agent 异步处理。不打断主线工作流,空了再 review。

5. 高风险决策用 Best of N。让模型生成多个方案,但一定要有 review 和测试兜底。

6. 不要把任何一个 agent 当万能工具。不同模型在不同任务上表现不同,根据实际效果切换。

真正拉开差距的地方在于,能不能把模型接入自己已有的工程流程——任务分解、上下文管理、审查机制和测试覆盖——而不只是知道某个万能 prompt。

工具在进化,但工程纪律不会过时。


— END —

— END —