Codex 这次能 pip install 进我的脚本了,但我没打算换掉天天用的 Claude Code

cover

哈喽,我是飞飞。

这两天微软 Build 开着,各家都在抢台面,OpenAI 趁这股热闹给 Codex 放了一波更新。一口气三样东西:一个能 pip install 进你代码的 Python SDK、一个把想法直接变成网页的 Sites、还有六个分工种的角色插件。

我是天天用 Claude Code 写代码、跑写作流水线的人,之前也用过一阵 Codex CLI。三样里头,前两样我扫一眼就划过去了,唯独那行 pip install openai-codex 让我停了下来,当晚就装上跑了一圈。

三样东西,对开发者真正有用的就一样

实话讲,OpenAI 这波更新的重心,根本不在开发者身上。

官方自己说,现在大概两成的 Codex 用户已经不写代码了,是做分析、做设计、跑销售、看投资的人。Sites 和那六个插件,摆明了冲这两成人去的。

对我这种靠写代码吃饭的人,能立刻拿来用、还能改我工作流的,就剩那个 Python SDK 一样。所以这个 SDK 我想多聊几句,Sites 和插件后面带一下就够了。

把 Codex 装进自己的 Python 脚本,是什么手感

以前想在程序里调 Codex,要么走 API 按 token 另算钱,要么自己写 subprocess 去裹命令行,绕得很。这次官方直接给了 SDK。

装起来是一句 pip install openai-codex,要 Python 3.10 往上。它在背后通过 JSON-RPC 控制你本地的 Codex app-server,发布版自带了一个钉死版本的运行时,装完就能用,不用你再去对 CLI 的版本。

最小的用法长这样:

1
2
3
4
5
6
from openai_codex import Codex, Sandbox

with Codex() as codex:
thread = codex.thread_start(model="gpt-5.4", sandbox=Sandbox.workspace_write)
result = thread.run("帮我定位并修掉 CI 里挂掉的那几个测试")
print(result.final_response)

逻辑很清爽。开一个 thread,往里 run 一段话,它干完把结果给你。同一个 thread 可以接着 run 第二句、第三句,让它顺着上一轮往下做。手头是异步程序的话,换成 AsyncCodexawait 就行。

沙箱给了三档,read_only 只读、workspace_write 能在工作区里写、full_access 完全放开,而且能按轮次切。比如先用 workspace_write 让它改代码,下一轮收紧成 read_only 只让它审一遍 diff,挺实用。

我照着官方的最小示例跑了一遍,把那句 prompt 换成中文,让它去翻我一个老项目里挂掉的测试。它真就自己开了 thread,读文件、给方案、动手改,最后 final_response 把干了啥讲清楚。整个过程我一次命令行都没碰,全在 Python 里走完了。

复用登录态这一下,省的是真金白银

这个 SDK 最戳我的地方,是它复用登录态。

Codex 是跟着 ChatGPT 账号走的,你订阅里本来就含它,登录信息存在 ~/.codex/auth.json 那个文件里。SDK 直接认这套登录,不用你再去开发者后台单独申一把按量计费的 API Key,塞进环境变量。

这一下省的是真钱。我之前为了在脚本里调一个编程 agent,专门开过一把 API Key,跑几天回头一看账单,零零碎碎也是一笔。现在装完直接拿到 thread 接口,跑在我订阅本来就有的额度里,心理上轻松不少。

对想把 agent 缝进自家内部工具、接进 CI、或者干脆做成一个小服务的人,这一步省掉的不只是钱,还有那串配 Key、管 Key、怕 Key 泄漏的破事。

它跟我天天用的 Claude Agent SDK,厚薄不一样

这套东西 Claude 早就有了,叫 Claude Agent SDK,一行 pip install claude-agent-sdk 装上,同样跑订阅、同样 Python 和 TS 都给、同样是 thread 模型。两家在「把自家编程 agent 做成能嵌的 SDK」这件事上,基本是对称的。

差别在控制的细。Codex SDK 给的是三档操作系统级沙箱,薄薄一层,直给。Claude Agent SDK 那边给的是 hooks、子 agent 编排、allowedToolscanUseTool 这种一个工具一个工具卡的治理,明显更厚。一句话,Codex SDK 走的是薄而直接的路子,Claude Agent SDK 这边刚好反过来,把治理做得很重。

说到底,这俩对我不冲突。我手上的活大半在 Claude 生态里,CLAUDE.md、memory、一堆 skill 都是按 Claude Code 那套攒下来的,真要嵌 agent 进脚本,我自然先伸手够 Claude Agent SDK。但哪天接一个本来就绑 OpenAI 模型的项目,又只想要个薄包装加个系统沙箱,Codex SDK 就是顺手的那把。

我得说句公道话,Codex 这个 SDK 做得是真利索。装完即用、复用登录、三档沙箱划得清楚,OpenAI 把「让你把 Codex 嵌进任何地方」这件事想得很明白。

能嵌进脚本,不代表能让它在循环里闷头跑

但有个坑我得拍着良心提醒你,免得你像我一样差点想当然。

复用订阅登录确实省了 API 那笔钱,可订阅是有额度的。你把这个 SDK 接进 CI,或者塞进一个 while 循环让它反复跑,等于让一个 agent 替你连着烧额度。

跑测试、改代码、再跑一轮,几个回合下来,额度掉得比你手动用快得多。等哪天发现订阅到顶了、连手动那边都跟着用不了,才反应过来是后台脚本在默默烧。

Claude 那边已经把这事摆到明面上了。从 6 月 15 号起,Agent SDK 和 claude -p 的用量,会从一笔单独的月度额度里扣,跟你平时手动聊天的额度分开算。说白了,官方也看明白了,能嵌进程序的 agent 烧起额度来是另一个量级,得单独圈块地给它。

所以这把螺丝刀好用,但别当永动机使。我设想过把它接进我那条写作流水线的某个环节,让它夜里自己跑,转念一想还是先手动盯几轮,摸清楚一轮大概吃多少额度再说。能嵌进脚本,不代表能让它在没人看着的循环里闷头跑。

Sites 和那六个插件,是 Codex 想长成的另一个样子

回头说说前面被我划过去的那两样。

Sites 是让 Codex 把你的想法、计划、手头的活,直接产出成一个网页或者小应用。OpenAI 帮你托管,你甩个链接给同事,对方点开就能用、能改、能一起批注。

以前 Codex 给你的是一摞代码文件,你还得自己跑起来;现在它直接给你端上一个能用的东西。有人比喻得挺准,这是从给你食材,变成端上一整盘菜。

配套还有六个角色插件,数据分析、创意制作、销售、产品设计、股权投资、投行各一个,从插件目录里装,打包好了对应岗位要的上下文。另外那个叫 Annotations 的,能让你选中文档或表格里的某一块,让它只改这块,不用把整个任务重跑一遍。

这些功能的指向很清楚,OpenAI 想把 Codex 从一个写代码的 agent,做成一个白领干活的平台。野心是有的。

但现实是,Sites 还在 preview,先开给 ChatGPT 的 Business 和 Enterprise 计划,我这种个人开发者短期摸不到,东西还跑在人家托管的环境里。所以这块我现在只当个信号看,没法上手评。

我不会换,但桌上会多放一把螺丝刀

绕回最开头那个问题,这波更新会不会让我把 Codex 切成主力,把 Claude Code 换下来。

答案是不会。我的活、我攒的那套 skill 和记忆,根都扎在 Claude 生态里,换一次的成本远大过 Codex SDK 带来的那点新鲜。但我会把 Codex Python SDK 这把螺丝刀,认认真真放进工具箱。哪天项目本来就绑着 OpenAI,或者我只想要个薄薄的嵌入层加个系统沙箱,我会直接抄它。

工具这东西,到了某个阶段就不该是二选一。能嵌进自己脚本的编程 agent 越来越多,怎么按项目挑、按成本算,反倒成了新的手艺。

所以最后想认真问问你:你会把一个编程 agent 用 SDK 嵌进自己的脚本里吗?如果会,你最想让它在哪个环节替你自动跑起来,又是哪一步你怎么都不敢撒手、非得自己盯着?评论区聊聊。


参考资料

  • [[Codex-Python-SDK官方文档]]
  • [[Codex-Sites插件Annotations]]

相关洞察

  • [[Codex这波更新平台化与SDK]]