Codex 在 VS Code 里看 Diff 报 Oops, an error has occurred 怎么解决
Codex 改完文件,你想看看它到底改了什么,点开 Codex Diff 标签页,结果是一句什么信息都没有的:
Oops, an error has occurred
对应 GitHub 上的 issue #35058(已关闭,50 条评论),另有 #35481(已关闭)是同一条报错在 VS Code 中的另一次汇报。
这篇先给社区办法,再给一份**「试过但无效」清单**——因为对这条报错来说,知道什么不用试,跟知道该试什么一样省时间。
一、先说清楚证据状态
Codex 仓库里没有 troubleshooting 文档。 这一点我核实过:用 GitHub 的代码搜索按文件名找,以及遍历仓库目录,都没有找到官方的排错文档。
所以本文给的全部是社区证据,来自 issue #35058 的评论区。官方没有对这条给出过文档化的解法。 后面提到的做法请按「社区办法」对待——它在很多人身上有效,但不是官方结论。
二、社区办法:降级扩展到指定版本
issue #35058 里有两条高赞评论给的是同一个办法,版本号也一致:
把 OpenAI Codex 扩展降级到 26.715.61943,并关掉自动更新。
评论里给的操作步骤:
- 打开 VS Code
- 打开扩展视图:
Ctrl + Shift + X - 搜索 OpenAI Codex 扩展
- 打开扩展的详情页
- 点击卸载按钮旁边的齿轮图标
- 选择 Install Specific Version(安装指定版本)
- 选
26.715.61943
另一条评论补充了关键的一步:降级之后要禁用自动更新,否则它会自己升回去,问题又回来了。
关自动更新的位置在扩展的齿轮菜单里(VS Code 里通常是 Auto Update 相关的选项),也可以在设置里针对单个扩展关闭。
这个版本号值得记住,因为它是这条报错里唯一具体、可操作的信息。
三、试过但无效的五种做法
issue #35058 的原报告者在提交之前列出了自己试过的做法,全都没用:
- 重新打开工作区
- 新建一个 Codex chat
- 清除 VS Code 的 workspaceStorage
- 重装 Codex 扩展
- 换一个仓库测试
这份清单的价值不亚于解法。
因为这五条恰恰是遇到编辑器插件问题时最容易想到、也最常被推荐的做法。原报告者已经替所有人试过了——你可以直接跳过这五步。
尤其是「重装扩展」这条要特别注意:重装 ≠ 降级。 重装装的是最新版,如果问题是新版本引入的,重装一百次也是同样的结果。必须明确选择指定版本。
原报告者还给了一条重要的排除信息:Git 本身工作正常,git diff 能正确显示改动。 这说明问题在扩展的 diff 展示环节,不在 Git、不在文件系统、也不在 Codex 是否真的改了文件——它改了,只是那个标签页显示不出来。
四、原报告里的环境信息
issue 里记录的环境:
- macOS,Apple Silicon
- VS Code 1.128.0
- Codex 扩展
openai.chatgpt版本26.721.30844
原报告者还说明:这个问题在每一个仓库里都会出现,包括一个新打开的空工作区。
「新工作区也复现」这条信息很有用——它排除了「某个特定项目的 Git 状态有问题」这个方向。不用去查你的仓库有什么特殊之处。
至于是不是只在 macOS 上出现,issue 的标题里写了 macOS,但评论区有人只说「同样问题」没说平台。本文不下「这是 macOS 专属问题」的结论,因为证据不足以支撑。
五、如果降级也不管用
降级是社区办法,不保证对所有人有效。如果试了没用:
第一,确认降级真的生效了。 在扩展详情页看当前版本号是不是 26.715.61943。VS Code 有时候需要重载窗口(Developer: Reload Window)才生效。
第二,确认自动更新真的关了。 如果它在你不注意的时候升回去了,问题会「莫名其妙复发」。
第三,用 git diff 作为替代。 原报告者已经确认 Git 本身是正常的。看改动这件事不一定非要用那个标签页——命令行的 git diff、VS Code 自带的源代码管理视图,都能看。
这一条听起来像退让,但实际很务实:你的目的是看改了什么,不是修好那个标签页。
第四,升级到更新的版本试试。 这跟降级方向相反,但也值得一试——如果这个问题在后续版本里被修了,那升级才是正解。降级是针对「新版本引入的问题」的临时办法,不是长期方案。
六、扩展类问题的通用判断
从这个案例能提取出几条对所有编辑器扩展都适用的判断方法:
问题是不是跟着版本走? 如果你能回忆起「升级之后开始出现」,那降级验证是最快的确认手段。反过来,如果装上就一直有,那更可能是环境问题。
核心功能坏了还是外围功能坏了? 这个案例里 Codex 改文件是正常的,只有 diff 展示坏了——说明主链路没问题,可以继续用,只是换个方式看结果。这个判断能决定你是「必须马上修」还是「先绕过去接着干活」。
有没有可替代的路径? git diff 就是替代路径。很多扩展的功能都有原生的替代方案,卡住的时候先绕过去,比停下来排查划算。
别在「重装」上耗时间。 重装解决的是「安装损坏」,而大多数扩展问题是「代码有 bug」或者「配置不对」——这两类重装都无效。
七、降级之后怎么管理版本
降级是临时办法,长期挂在旧版本上有代价——你会错过后续所有的功能和修复。所以降级之后要有个跟进节奏。
建议的做法:
- 在日历上给自己留个提醒,比如两周后回来看一次。到时候去看那条 issue 的状态,或者直接升到最新版试一次
- 升级前先记下当前能用的版本号(也就是
26.715.61943)。这样万一新版还是有问题,你能立刻退回来,不用再去翻 issue 找版本号 - 测试的成本很低:升级 → 打开 Diff 看一眼 → 不行就退回去。整个过程一两分钟
别把「关掉自动更新」当成一劳永逸的方案。 自动更新关掉之后,你不只是躲开了这个问题,也躲开了所有安全修复和新功能——这个代价随时间累积。
另一个值得注意的点:如果你在团队里,把这个版本号和「要关自动更新」告诉同事。否则会出现「你的能看 Diff、别人的不能」这种排查起来很浪费时间的局面——而真相只是版本不同。
八、总结
- 社区办法:降级 OpenAI Codex 扩展到
26.715.61943,并关掉自动更新。 通过扩展详情页齿轮图标里的 Install Specific Version 来选版本。 - 这是社区办法,不是官方解法——Codex 仓库里没有 troubleshooting 文档。
- 五种试过无效的做法:重开工作区、新建 chat、清 workspaceStorage、重装扩展、换仓库测试。直接跳过。
- 重装 ≠ 降级,重装装的是最新版,问题照旧。
- Git 本身是正常的——
git diff能看到改动,卡住时先用它顶上。 - 扩展类问题的判断:跟着版本走的用降级验证;核心功能没坏就先绕过去接着干活。
本文引用的 issue 编号、版本号与操作步骤均来自 openai/codex 仓库 issue #35058(已关闭)与 #35481(已关闭)的公开内容,核对日 2026-08-08。Codex 仓库内没有官方 troubleshooting 文档,本文所述做法均为社区经验,官方未确认。版本与产品行为会变化,以官方为准。