先说说对 Codex 评测的几个核心判断。
如果说 Cursor 是个需要你手把手带着结对编程才能干活的实习生,那 Codex 就更像个远程外包员工:任务甩过去,基本不用管,等它完成后验收一下。不合格?没问题,让它重做,直到满意为止。最关键的一点是,理论上你可以同时拥有无数个这样的外包员工。
不过话说回来,目前的 Codex 明显还是个半成品。限制不少,比如虚拟机环境一但安装好就断网,有严格的运行时长限制,单次能处理的活儿也很有限。坦白说,现在还不值得仅仅为了它去开通 ChatGPT Pro 的会员。
打个比方,这个外包员工的电脑不能联网,只能靠项目现有的代码和自身经验去改程序,完全凭自己的理解交付结果。而且,每次外包任务都是一锤子买卖——成果你要么全盘接受,要么全盘拒绝,没法做小幅度的二次修改。更麻烦的是,这位员工还比较“懒”,时间一到立刻下班,而且每一次任务还会随机换人,项目经验完全无法积累。但好一点的是,它会严格遵守你提供的文档规范(比如 AgentS.md)。
什么是 Codex?
就在昨天,OpenAI 发布了 Codex——一个强大的云端软件工程智能助手。它由专门针对编程及工具调用进行了大量强化学习的 codex-1 模型驱动,好处是能并行处理多个任务。开发者可以同时部署多个 Codex 智能体,协作起来效率相当可观。
年初的时候就记得 Sam Altman 提过这个智能体,说它能像真正的软件工程师一样在后台为你工作。那时候心里就挺期待的,毕竟很多繁琐的事情如果能交给它做,那可就省心多了。正好手头的活儿也需要这样一个帮手。
昨天 ChatGPT Pro 的订阅用户开始能体验了,于是花了几个小时,翻来覆去地好好测试了一番。
Codex 工作原理
Codex 的核心由两部分组成:Codex-CLI 和基于 Docker 的虚拟机技术。
Codex-CLI 是 OpenAI 最新发布的基于命令行的 AI 编程智能体。它能阅读你的代码,根据要求来解释、修复 Bug、更新代码。作为智能体,自然也能调用命令行工具——比如检索文件、创建文件、安装依赖包、运行测试等等。有趣的是,Codex-CLI 背后可以接入不同的模型,比如 OpenAI 的 o3 或者 Claude 3.7 sonnet。
虚拟机则提供了任务执行的环境,通过 Docker 实现。每一次任务开始,都会创建一个全新的虚拟机,支持 Python、Node.js、Swift、Rust、Go、Bun、Ja va 等语言环境。需要强调一点:这个虚拟机环境一开始是可以联网的,但在自动下载完项目代码、安装好所需的第三方库之后,就会彻底断开网络连接,后续再也不能访问互联网。
目前,OpenAI 的云端 Codex 和 Codex-CLI 还是有些区别的:
- • 云端 Codex 在虚拟机上自动运行,无需你自行搭建环境,每次任务都会自动初始化一个新环境。
- • 虚拟机环境开局联网,但装完项目依赖后立刻断网,后续只能连接大语言模型。
- • 云端 Codex 使用专为编程任务强化训练过的 codex-1 模型,更擅长写代码和调用命令行工具。
云端 Codex 的优缺点
弄清楚了背后的工作原理,它的优缺点就很好理解了。
优势明显:
- • 无需自建环境,随时随地——甚至手机上就能启动任务。
- • 支持多个任务并行运行。
- • 模型编程和调用工具的能力非常出色。
- • 能直接连接你的 GitHub 仓库。
- • 完成任务后,自动提交 Pull Request。
限制同样突出:
- • 完全不支持联网任务,没法查阅在线文档或更新依赖库版本。
- • 不能访问本地内网资源,只能读取托管在 GitHub 仓库中的文档。
- • 每次任务都会重新初始化环境,中断后无法在原结果上继续。
- • 单次任务执行时间受限,最多交互数次就强制结束。比如,用它做文件翻译任务,每次只能翻译大约 5 个文件,必须提交 PR 后才能重新开始。
- • 只能自动提交 PR,无法读取 PR 评论或 GitHub Issue 的信息,需要人工来复制任务细节。
- • 单个文件处理长度受限,文件稍长就没法处理,具体上限还没彻底摸清。
- • 当前虚拟机环境只支持 Python、Node.js、Swift、Rust、Go、Bun、Ja va 这几种语言。
- • 每次任务的输出字节数有限。由于 Codex 依赖 Codex-CLI 的 shell 命令输出,单次命令行最长输出仅 1600 字节,超出就报错:
Error: Output for session 'shell2' contained a line exceeding the max of 1600 bytes...
Codex 适用场景
结合自己和其他用户的测试反馈来看,目前 Codex 的可用场景其实不算太多,主要适合用在:
- • 代码解释与梳理——帮你搞清结构,但受限于单次处理长度。
- • 代码审查——阅读代码并给出改进建议(同样不能太长)。
- • 小型 Bug 修复——简单且明确的小缺陷,交给它再合适不过。
- • 小功能迭代——比如语言国际化、样式调整。但涉及网络更新(像升级 Next.js)就无能为力了。
- • 生产环境紧急修复——比如休假时突发故障,只带手机也能用 Codex 快速提交 PR 更新线上环境。
其他场景,暂时还真不敢想太多。毕竟 Codex 目前还只是“Research Preview”,技术限制摆在那里。
只有等 OpenAI 后续逐步放开联网限制、增加任务执行时长,并允许虚拟机做更灵活的定制,Codex 才有望在实际生产中发挥真正的高效。
Codex 这类 AI 编程智能体的未来:会替代程序员吗?
以现状来看,Codex 离取代程序员(哪怕只是初级)还有相当远的路要走,不必过度期待。但未来,它或许会改变软件开发的模式——让 AI 编程变得像今天的 AI 绘图一样:一个简单的任务,只需要不断地“抽卡”提示词就能完成。当然,这一切的前提是,你背后需要有专业的软件工程师或更高级的 AI 来帮你规划任务,合理拆解工作流程。
一些案例
分析代码库并根据建议更新 readme ✅
分析代码库的能力还不错,能逐个文件阅读,然后汇总,最终给出一些修改建议。


根据建议,让它更新了一下 Readme。这种简单任务完成得不错——能根据项目情况分析,然后更新说明文件。


升级 nextjs 版本 ❌
想让它帮忙升级 nextjs 版本,但有点坑的是,配置完运行环境后不能联网,所以它最终没能完成这个简单但常见的版本升级任务。


处理 PR Review 结果 ❌
Codex 能提交 PR,但对于 PR 里的评论却没法直接处理——也就是说,它不能阅读 PR Review 的结果,只能在你单独给它说明之后才能理解。

批量转换代码语言 ✅ ❌
想让 Codex 把一个项目从 ReScript 重写成 TypeScript。但实际操作中遇到了两个问题:
- 每次执行任务算力有限,一次只能处理一部分文件。
- 执行完一次任务后,必须先提交代码合并 PR,否则在同一会话中继续新任务,之前的修改不会被应用。这一点和使用 Cursor 之类的 IDE 差别很大——Cursor 里一次交互完,再次交互时之前的修改还在;而在 Codex 里,每次交互都是一个全新的虚拟机。


引用外部文档 ❌
让它初始化一个 React Router v7 + cloudflare 的项目。先给它提供了文档链接,但无法阅读,只能按自己的知识库去生成——结果并不是我想要的。后来直接告诉它要执行的命令行,但它不能联网,所以也没法正常用命令行初始化项目。


长文翻译 ✅❌
测试了一下长文翻译能力——其实跟写代码没太大关系,纯粹是想试试 Codex 的另类用法。放了一个 300 多行的 Markdown 英文文件让它翻译。一开始它哗哗地写 python 脚本去安装 Google 翻译,后来发现自己不能联网,最后才用自己内置的能力来完成翻译。
然后又发现文件太长,于是把 300 多行拆成几次来翻译。翻译到第三段的时候,命令行 shell 溢出了(超出 1600 字节),没法继续。新开命令行窗口,内容少一点再继续翻译。
翻译到 255 行的时候,它说时间到了,得提交代码了!
准点下班!
最终只是翻译了一部分内容,但如果你没有仔细看日志,或者去检查结果,你是不知道它其实偷工减料了的!

又多测试了一次,这次让它直接翻译,不要使用外部工具。倒是少走了点弯路,但结果也只是翻译了一部分。
结论
开头已经总结得差不多了。现阶段可用性还不高,只能做一些简单的、不需要联网的任务。但未来可期——可以让它在后台同时执行多个任务,人只需要去验收结果就好。
