Codex CLI 怎么看 Token 用量?官方方法 + Vibe Usage
Codex CLI 自带的 codex usage 命令只有汇总数字,看不到按项目、按模型的细分。这篇讲清官方统计的局限和一个能补全画面的本地方案。
Codex CLI 是我最近用得越来越多的工具——尤其是大段重构和长任务,它的 Agent 循环比手敲提示更省心。但用得越多越发现一个问题:它的消耗远比我以为的多。
我第一次意识到这件事是某个周三晚上,跑了三个比较大的重构任务之后看 OpenAI billing——一晚上 14 美元。我以为我那天没用很多。
这篇讲清 Codex CLI 自带的统计方式、它能告诉你什么、它告诉不了你什么,以及怎么补全这个画面。
自带的 codex usage 命令
Codex CLI 装好之后,你可以在任何目录运行:
codex usage
输出大致长这样:
This week:
Sessions: 12
Input tokens: 4,231,000
Output tokens: 142,000
Estimated cost: $11.82
This month:
Sessions: 43
Input tokens: 18,450,000
Output tokens: 612,000
Estimated cost: $51.34
它能告诉你: 本周和本月的汇总 Token 数和估算费用。
它告诉不了你:
- 按项目拆分(这次任务在哪个项目跑的)
- 按模型拆分(你可能同时用了 gpt-5.4、gpt-5.5)
- 按天看趋势(哪一天突然冒尖了?为什么?)
- 按任务类型看(重构 vs 新功能 vs 调试 vs 解释代码——哪种最烧?)
- 缓存命中率
- 单次会话的 Token 分布(中位数、p90)
第 4 个最让我抓狂。我隐隐觉得「调试任务」比「写新代码」更烧,但 Codex 自带统计回答不了这个问题。
为什么 Codex 比 Claude Code 烧得猛
我的实测:在 Vibe Usage 上看,Codex 单用户的平均消耗高于 Claude Code 大约 60%。原因是 Agent 模式。
Codex 的工作模式是:你给一个任务,它自己规划步骤,自己读文件,自己写代码,自己跑测试,发现问题自己修,全部 done 才停。一次完整 cycle 里它会调用模型几十到几百次,每次调用都把当前上下文发回去。
而 Claude Code 是 chat 模式(虽然也支持 Agent,但默认更轻),单次任务调用模型的次数少得多。
所以即使你觉得"我才用 Codex 跑了一个任务",模型实际收到的请求可能是 200 次。Token 数会让人吃惊。
用本地日志补全画面
Codex CLI 把每次会话的完整记录写在 ~/.codex/sessions/——和 Claude Code 在 ~/.claude/projects/ 一样的逻辑。每场会话是一个 jsonl 文件,里面每个 message 带详细的 usage 字段。
只要有东西能定时扫这个目录、按你想要的维度聚合,就能补全 Codex 自带统计漏掉的部分。
我用的是 Vibe Usage——它原生支持读 Codex 的 sessions 日志,自动同步,零配置。装好之后我在它的界面上看到:
- 我的 Codex 会话里 87% 是 gpt-5.4,13% 是 gpt-5.5
- 缓存命中率高达 92%——比我以为的高很多(因为 Codex 把整个项目上下文反复发送,缓存命中实际帮了大忙)
- 上周三的消耗确实是异常值——比平时高 3 倍。点进去看是因为我那天试了一个重构任务,Codex 进入了 200 多次循环
- 我的某个 monorepo 项目占了 Codex 总消耗的 62%,因为它的文件树太大,每次上下文都要重新发送
这些信息没有任何一个能从 codex usage 看出来。
缓存命中率才是真正决定账单的东西
我装 Vibe Usage 之前以为 Codex 烧钱主要是 input token——毕竟看名字像。装上之后才发现:Codex 的 input token 里 90% 以上是缓存命中的,缓存价格只有原价的 10%。
也就是说,名义上你看到的 input 数字虽然吓人,实际计费的钱主要花在 output 和 cache miss 上。Output Token 只占 input 的 4% 左右,但单价是 input 的 5 倍——它才是真正的账单大头。
明白这件事之后,我开始注意:
- 让 Codex 在一个干净仓库里跑(项目文件少,每次循环消耗少)
- 避免让它给我大段总结(output token 贵)
- 大重构尽量一次跑完,不要中断重启(中断会清缓存)
这些优化把我月消耗从 50 美元压到了 30 美元出头。
怎么入手
如果你只是偶尔用 Codex,codex usage 够你看个大概;想认真省钱,先 打开 Vibe Usage 看自己 Codex 的真实消耗结构,看完再决定优化哪里。
我个人的经验是:第一周看到细分数据时的"意外",比之后所有优化加起来都更值钱。你会重新认识自己怎么用 Codex 的。