«

探索下Codex工具调用协议

时间:2026-6-24 09:46     作者:wanzi     分类:


我在codex里面告诉它:编写一个golang 协程案例到当前docs下


codex 啪啪啪的拿到大模型内容然后建立目录和文件,那这个过程是怎样的呢?我们假设有个简易版的codex,你问它,它只会回复而不会建立目录和文件。如此对比,我们来分析:

现在我们的 proxy 只打通了“模型文本输出”,没有打通 Codex 的“工具调用协议”。

你在 简易版Codex 里说:

编写一个 golang 协程案例到当前 docs 下

正常 Codex 要写文件,流程不是“模型自己写磁盘”。真实流程是:

Codex 客户端
-> 调模型
-> 模型返回 tool call,例如 apply_patch / shell command
-> Codex 客户端执行工具
-> 文件才真的落盘

但我们现在的链路是:

简易版 Codex
-> /v1/responses 或 /v1/chat/completions
-> 返回纯文本 delta
-> Codex 收到普通 assistant 文本

这里缺了关键一层:

模型返回 Codex 可识别的 tool_call

所以 Codex 最多会拿到类似:
可以在 docs 下创建一个 go_concurrency.md,内容如下...

但它不会真的动文件,因为它没有收到标准的工具调用事件。