用 Codex 修 bug:给报错原文、复现步骤和约束,让它先复现再改,最后重跑复现和测试,附 4 段提示词

怎么让 Codex 帮你修 bug?官方提示指南强调:复现步骤和约束比一句话描述更重要。给它报错原文、复现步骤、怀疑的文件和约束,要求先复现、再给补丁、再重跑复现并跑最小相关测试。本文给 4 段提示词和判断清单。

NNathaniel bigo··原创首发·AI 辅助撰写
6 分钟读完
资料核对于 2026-11-05 · 依据官方文档与公开资料整理 Plus 账号
本文根据 Codex 官方文档《Prompting Codex》和斜杠命令页整理,资料核对于 2026-11-05。配图为本站整理的示意图,不是软件截图。本站(bigolab.com)不是 OpenAI 官方网站。安装与配置见 /guides/codex-getting-started,本文只讲怎么描述 bug。

适用于谁

  • 代码跑出报错,自己卡住了,想让 Codex 帮忙定位和修复的人;
  • 提示词总是写成“这里有 bug,帮我修一下”,结果越修越乱的人;
  • 修好之后不知道怎么确认的人。

结论先说

  1. 官方说,复现步骤和约束比高层描述更重要。 “登录页有问题”远不如“点击登录后,控制台报 Cannot read properties of undefined,期望跳转首页”。
  2. 要给四样东西:复现步骤、怀疑的文件、约束、验证方式。
  3. 让它先复现再修。 官方示例写的是:先在本地复现 bug,然后提出补丁并运行检查。
  4. 约束写明白。 官方示例的约束包括不改 API 的形状、最小修复、可行时补一条回归测试。
  5. 修完让它重跑复现,并运行 lint 和最小相关的测试套件,报告用了什么命令、结果如何。

让 Codex 修 bug 的提示词四要素:复现步骤、怀疑的文件、约束、验证方式

图:本站根据 Codex 官方文档《Prompting Codex》 整理的示意图

一、先把线索收集好

动手前,先备齐下面这些,哪怕只有一部分:

  • 报错原文:完整复制,不要截取半句,更不要自己转述;
  • 复现步骤:从哪个页面或命令开始,做了什么,看到什么,期望看到什么;
  • 出现条件:是总是出现,还是特定数据、特定环境才出现;
  • 最近改了什么:如果是某次提交之后才出现的,告诉它大概的时间或提交;
  • 怀疑的文件:知道就用 @ 指给它,不知道就写“我不确定”。

官方在命令行里的做法是在仓库根目录启动 Codex;在 IDE 里,则是打开可能出问题的文件和最近的调用方。

二、4 段可以直接复制的提示词

方括号里是要你自己填的内容。

1. 标准格式:复现、定位、修复、验证

有个 bug 需要修复。
现象:[点击“提交订单”后页面白屏]
报错原文:
[粘贴完整报错]
复现步骤:[1. 打开 /cart;2. 选择一个商品;3. 点击提交]
期望:[跳转到订单确认页]
怀疑的文件:@[文件路径]
约束:不改接口的返回格式;改动尽量小;可行的话加一条回归测试。
请先在本地复现,确认能看到同样的报错;再解释原因,然后提出补丁;最后重新跑一次复现步骤,再运行相关的 lint 和最小范围的测试,告诉我命令和结果。

2. 只有报错,不知道从哪查

我在运行 [命令] 时遇到下面的报错,不知道原因。请先只读不改:
1. 解释这个报错通常是什么原因;
2. 在代码里找出最可能触发它的位置,说明理由;
3. 列出 2 到 3 种可能的原因,每种怎么验证。
先不要改文件。
[粘贴完整报错]

3. 偶发问题:先加日志,不乱改

这个问题只是偶尔出现,我没有稳定的复现步骤。请不要直接改逻辑。
请先帮我在 [相关函数] 附近加几处临时日志,记录关键变量的值,告诉我怎么运行和观察。拿到日志后我再发给你一起分析。
改动完成后列出你加了哪些日志,方便我之后删除。

4. 修完后让它自我复盘

请总结这次修复:1. 根本原因是什么;2. 改了哪些文件、各改了什么;3. 你运行了哪些命令,结果分别是什么;4. 还有哪些相关的地方可能有同样的问题;5. 我还应该手动检查什么。

如果想让它再做一遍代码审查,官方斜杠命令页写明 /review 会对未提交的改动或与基础分支的差异启动审查模式,详见 /guides/codex-code-review。

三、修完之后,你怎么判断

Codex 修完之后你怎么判断:没复现就改、改动过多、没有命令输出、测试通过但复现仍出错、涉及支付权限

图:本站根据 Codex 官方文档《Prompting Codex》 整理的示意图

  • 用你自己的复现步骤再走一遍,不要只看它的总结;
  • 看改动范围:用 Git 查看改了哪些文件,和 bug 无关的改动要让它撤销;
  • 看测试:是新增了回归测试,还是为了让测试通过而放宽、删除了原有测试;
  • 上线前:涉及支付、权限、数据删除的改动,自己逐行审查,并先在测试环境验证;
  • 失败了就回退:先确认工作区状态,改坏了用 Git 退回,再用更小的请求重试。

命令被拒绝或需要审批时的处理见 /guides/codex-permissions-sandbox。

四、几种常见 bug 怎么描述

下面是本站按开发经验整理的描述要点,不是官方清单:

  • 页面白屏或点击没反应:给浏览器控制台的完整报错、点击了哪个按钮、是否每次都出现。只说“没反应”,它只能猜;
  • 接口返回错误:给请求的地址、参数(去掉密钥)、返回的状态码和响应内容,以及你期望的返回;
  • 数据不对:给一条具体的输入和实际输出、期望输出,比“数据有问题”有用得多;
  • 命令行或脚本报错:给你运行的完整命令、完整输出,以及运行环境,比如系统和语言版本;
  • 只在线上出现:线上日志先去掉用户信息再给它,并说明本地能否复现;不能复现时,先按第 3 段提示词加日志,不要让它盲改。

描述得越具体,它越不需要猜,越不容易改到不该改的地方。同一个 bug 描述清楚之后,也可以顺手让它检查有没有别处存在同样的写法,但这类批量修改要分开确认,不要和修复混在一次改动里。

常见问题

Q:它说修好了,但我的问题还在?

把你的复现步骤和现在的现象告诉它,并要求“先复现,再说明为什么上一次的修复没有覆盖这个情况”。

Q:报错信息里有密钥、内部地址怎么办?

先去掉。贴日志前的检查见 /guides/ai-privacy-data-safety-checklist。

Q:需要选更强的模型吗?

复杂 bug 可以提高推理强度,见 /guides/codex-switch-model-reasoning-effort。Codex 随 ChatGPT 套餐提供,额度以官方页面为准,需要更多额度可以看看 /chongzhi/chatgpt-plus 里的说明。

参考资料

  • Codex 官方文档:Prompting Codex — https://learn.chatgpt.com/docs/prompting
  • Codex 官方文档:Slash commands — https://learn.chatgpt.com/docs/reference/slash-commands

Nathaniel 的更多内容

  1. 01

    Claude Code 在 Windows 上的常见坑:Git Bash 还是 PowerShell、路径反斜杠、假报错、WSL 怎么选

    Windows 上用 Claude Code,装好之后最容易踩的是:用哪个 shell、路径写法不一致、grep 没匹配就报错、钩子没生效、WSL 和原生怎么选。本文逐条按官方文档整理原因和处理办法,附三段提示词和一张对照表。

    Claude0
  2. 02

    Claude Code Hooks 实战「提交前自动跑测试」:PreToolUse 拦住 git commit,测试不过就退出码 2,附 Windows 注意点

    只写一个完整例子:让 Claude Code 每次要执行 git commit 之前,先自动跑项目测试,没通过就拦下并把输出交给它修。本文按官方 Hooks 文档给出脚本、settings.json 配置、测试方法、排错和 Windows 的两处坑。

    Claude0
  3. 03

    Claude Code 自定义斜杠命令与 Skill 实战:从零写一个「生成更新日志」的 /release-notes,含传参、预执行命令和调试

    概念看过了,还是不知道从哪下手?本文按 Claude Code 官方「Extend Claude with skills」写一个完整可用的例子:用 /release-notes 根据 git 记录生成更新日志,覆盖目录、frontmatter、传参、预执行命令、预授权和调试。

    Claude0
  4. 04

    Claude Code 部署网站:先写 Dockerfile 和 compose 在本机跑通,再按清单上云服务器,别让它直接改线上

    想让 Claude Code 帮你把网站部署到云服务器。本文只写通用做法,按 Docker 官方文档讲:让它写 Dockerfile、.dockerignore 和 compose,在本机跑通,端口和数据卷怎么设,再给出上线清单,并说明为什么不要让它直接动线上机器。

    Claude0
  5. 05

    Claude Code 写爬虫与数据清洗:先查 robots.txt 和网站条款,控制频率,原始数据留一份再清洗

    想让 Claude Code 写爬虫抓数据再清洗。本文先讲合规:robots.txt 不是授权也不是安全措施、网站条款要自己读;再讲怎么用 Python 标准库检查规则、小样本先试、保存原始数据,以及用 pandas 清洗,附四段提示词。

    Claude0
  6. 06

    Claude Code 写 Chrome 扩展:按 Manifest V3 起步,加载未打包的扩展,改了哪些文件要重新加载

    想让 Claude Code 帮你写一个 Chrome 扩展。本文按 Chrome 官方扩展文档讲:manifest.json 的最小写法、在 chrome://extensions 加载未打包的扩展、哪些改动要刷新、怎么看控制台和报错,再给四段提示词,以及权限要尽量少。

    Claude0

同产品的其他教程

  1. 01

    OpenAI API 的 token 怎么算、怎么估算费用:input_tokens 计数接口、tiktoken 和隐藏的输出 token

    发请求前想知道会用多少 token?官方有 Responses 的 input_tokens 计数接口,能把文字、图片、文件、工具定义一起算准;本地 tiktoken 只适合纯文本。本文给 Python 和 Node 示例,讲输出 token 为什么可能比看到的多,以及怎么估算费用。

    ChatGPT0
  2. 02

    OpenAI API Node.js / TypeScript 快速上手:npm install openai、example.mjs 第一个请求,到流式、函数调用、联网搜索

    用 Node.js 调 OpenAI API:设置 OPENAI_API_KEY 环境变量,npm install openai,新建 example.mjs,用 client.responses.create 发出第一个请求。并列出图片、文件、流式、函数调用、联网搜索和错误捕获的 Node 写法。

    ChatGPT0
  3. 03

    OpenAI API 用量层级(usage tiers)与速率限制怎么提升:Free、Build、Launch、Grow 和后台 Limits 页

    OpenAI API 的限速不是固定的:官方按累计购买额度把组织分成 Free、Build、Launch、Grow 四个层级,达到门槛自动升级。本文讲 RPM、TPM 等指标、怎么在后台查自己的限额、响应头怎么读、花费上限和限速的区别,以及怎么让限额变得够用。

    ChatGPT0
  4. 04

    OpenAI API 报错 400、401、403、404、429、500、503 怎么排查:按官方错误码页逐个看原因和解决办法

    调用 OpenAI API 返回 400、401、403、404、429、500、503,各自什么意思?本文按官方 Error codes 页,每个状态码一节,写清官方给的原因和解决办法,并说明 404 在官方页面里的位置、429 的六种情形,附 Python 和 Node 的错误捕获写法。

    ChatGPT0
  5. 05

    OpenAI Realtime API 是什么:语音到语音会话、WebRTC 与 WebSocket、临时密钥和事件机制

    Realtime API 让模型直接处理音频,做可以随时打断的语音助手。本文按官方文档讲它是什么、什么时候用、浏览器接入的流程、session 与事件、可用声音、60 分钟会话上限、安全标识,以及它和转写、文字转语音的分工。

    ChatGPT0
  6. 06

    OpenAI 图像生成 API 怎么用:gpt-image 系列、images.generate 与 Responses 工具、尺寸质量和遮罩编辑

    用 OpenAI API 生成或编辑图片,有 Image API 和 Responses 里的 image_generation 工具两条路。本文按官方文档给 Python 和 Node 示例,讲 gpt-image 模型选择、尺寸质量格式参数、遮罩编辑、被拦截时的错误处理,以及需要组织验证的提醒。

    ChatGPT0

0 条评论

登录 后参与评论

还没有评论,来抢沙发~