SuperAPI AI 工具集

contextburn

contextburn 是一个本地分析工具,读取 Claude Code 已写入磁盘的会话记录(transcripts),计算你为 tokens 付费后,其中多大比例真正变成了模型输出,以及多大比例是智能体在重复读取已经发送过的上下文。它通过两个口径呈现:按 token 数统计和按成本加权统计,帮助你了解会话的“有效工作”占比。工具完全本地运行,无任何网络调用。

访问官网

工具介绍

用途

contextburn 读取 Claude Code 已经写在你机器上的会话记录,告诉你所付费的 tokens 中,有多大比例真正变成了模型输出,以及有多大比例是智能体在重新读取它已经发送过的上下文。

普通的 token 计数器回答“我花了多少”,contextburn 回答“其中有多少是真正的工作”。它给出一个归一化的占比,因此可以跨会话、跨模型和跨工作方式进行比较。

为什么是两个数字

按 token 数看,占比几乎不变。因为智能体每一步都会重新发送累积的上下文,重复读取主导了不管你怎么做——它描述的是智能体本身。

按成本加权看,占比会变动,因为缓存读取的定价远低于新输入和输出。它取决于你如何运行会话——它描述的是你。

上面提到的对比来自一个受控实验,附带数据集和分析脚本:“Clear Every Third Task: A Measured U-Curve in the Context Economy of Coding Agents”。在 U 曲线报告背后的 36 次运行会话日志上展示真实输出,机器上没有其他东西。视频带 DOI:10.5281/zenodo.22713920。这些运行本身是公开的:Hugging Face(DOI 10.57967/hf/10366)、Kaggle、OSF(DOI 10.17605/OSF.IO/5QTWY)。

主要能力

  • 读取本地 Claude Code 会话记录(~/.claude/projects/**/*.jsonl)。所有数据不离开机器——完全无网络调用。
  • 按消息 id 去重使用记录,并保留逐元素最大值。流式运行时会为同一次调用写入早期快照和最终记录:两者都算会重复计数,只保留第一个则会把输出减半。
  • 使用按模型价格加权成本占比,价格表保存在 bin/contextburn 顶部。价格变化时在那里更新。
  • 提供语言文件,因为菜单栏应用从 Finder 启动时环境变量不会传给它:echo ru > ~/.config/contextburn/lang 可切换应用和 CLI 的语言。
  • 让智能体在会话中途读取自己的运行效率。包内附带一个无依赖的 MCP 服务器(stdio),提供两个工具:run_efficiency 以结构化数据返回占比,spend_breakdown 返回完整报告。
  • 也可以安装为 Claude Code 插件,它会注册同一个服务器。

编辑器扩展

  • 兼容 VS Code 的编辑器(VSCodium、Cursor、Windsurf、Gitpod 等)——Open VSX:arsentev-ai.contextburn。在本地 CLI 之上提供一个状态栏计量器;源码在 editors/vscode。
  • Raycast——源码在 editors/raycast,商店提交待定。

菜单栏应用(macOS)

app/main.swift 是一个小型状态栏应用。它每分钟轮询一次 contextburn --json,显示当前燃烧率和每小时图表;点击某个柱可查看该小时的明细。

如果 CLI 不在 ~/bin 或常见的 Homebrew 路径中,请设置 CONTEXTBURN_BIN=/path/to/contextburn。

适用场景与限制

  • 目前仅支持 Claude Code 会话记录。
  • 成本加权占比的时效性仅取决于 bin/contextburn 中的价格表。

其他信息

  • 软件 DOI(所有版本):10.5281/zenodo.22712985。GitHub 的“Cite this repository”按钮提供引用;元数据在 CITATION.cff 中。
  • 作者:Evgenii Arsentev — arsentev.ai · ORCID 0000-0002-9120-7298。
  • 该项目在第一天以 tokmon 发布,后改名以避免与同名无关工具混淆;TOKMON_* 环境变量仍然有效。
  • 许可证:MIT——见 LICENSE。