一个完全在本机运行的 Codex Token 日历。每次启动时读取本地 Codex 会话记录,按天汇总后打开浏览器看板;刷新过程不调用模型,也不消耗 Codex 额度。
平时使用 Codex 时,很难直观看到自己每天用了多少 Token,也不容易了解一段时间内的使用趋势。因此做了这个本地日历看板,把已有会话记录中的 Token 统计按天汇总,用日历形式展示每日用量、活跃天数和峰值日期。
所有统计都在本机完成,只是帮助自己更清楚地了解 Codex 的使用情况。
- 按日展示输入、缓存输入、非缓存输入、输出和推理输出 Token。
- 展示缓存命中率、月度环比、日均用量与单次响应均值。
- 支持年度相对色阶与固定色阶,兼顾个人高峰和跨月比较。
- 提供当前指标的月度趋势图,并区分今天、未来日期和无使用日期。
- 汇总模型响应次数与本地会话文件数量。
- 提供官方 API 单价参考和基础费用估算。
- 无需安装依赖或启动 Web 服务,双击即可运行。
- 只在本机处理数据,不上传会话记录或统计结果。
- Windows 10 或 Windows 11。
- Windows PowerShell 5.1 或 PowerShell 7。
- 本机已有 Codex 会话记录。
下载或克隆本仓库,然后双击项目根目录中的 start-dashboard.cmd。
启动程序会:
- 从
$env:CODEX_HOME读取 Codex 数据;未设置时使用~/.codex。 - 扫描
sessions和archived_sessions下的 JSONL 会话记录。 - 只提取日期和 Token 统计,不读取或保存提示词、回答正文、凭据或项目内容。
- 更新本地数据文件,并用默认浏览器打开日历。
也可以只刷新数据:
powershell.exe -NoProfile -ExecutionPolicy Bypass `
-File .\scripts\refresh-data.ps1脚本只处理 token_count 事件中的时间戳和 Token 数字字段。生成的 data/usage-data.js 仅包含按日汇总结果,保存在本机,并已通过 .gitignore 排除,不会进入 Git 仓库。
本项目不包含遥测、网络上传或第三方分析代码。浏览器读取的是本地 HTML 和本地汇总数据。
- 总 Token = 输入 Token + 输出 Token。
- 缓存输入 Token 是输入 Token 的子集。
- 非缓存输入 Token = 输入 Token - 缓存输入 Token。
- 推理输出 Token 是输出 Token 的细分项,不与输出 Token 再次相加。
- 模型响应次数是出现
last_token_usage的事件数量。
脚本使用每次事件的 last_token_usage,不会累计会话内不断增长的 total_token_usage,从而避免重复计数。
看板只展示版本化的官方 API 单价和基础计算公式,不计算历史费用。个人 ChatGPT/Codex 订阅额度与 API 计费相互独立,不能根据这些 Token 直接推算订阅扣费。
基础 API 公式:
非缓存输入 Token × 输入单价
+ 缓存输入 Token × 缓存输入单价
+ 输出 Token × 输出单价
单价以每 100 万 Token 计,当前价格核对日期为 2026-07-15:
价格保存在 config/pricing.js。OpenAI 调整价格后,需要人工核对官方页面并更新该文件及核对日期。长上下文、缓存写入、区域处理和不同服务层级可能存在额外倍率,应以最新官方说明为准。
powershell.exe -NoProfile -ExecutionPolicy Bypass `
-File .\tests\test-refresh.ps1GitHub Actions 会在 Windows 环境中自动运行同一组测试。
本项目采用 MIT License。
