这个项目能做什么

cost-xray 是一款面向 AI 编程代理的本地捕获与成本归因工具。它不是在事后读取本地记录,而是拦截 Claude Code 和 Codex 实际发送的 API 请求,然后将每个请求拆解为其组成部分并定价。 它为何存在:基于日志的用量工具会显示一次调用或一个会话的总成本,但请求时上下文——系统提示、注入的工具 schema、MCP 块、工具结果、缓存读/写、先前的思考块——是在请求时组装的,从不会写入记录。这个不可见的前缀可能占上下文的很大一部分。cost-xray 读取原始网络请求,因此可以将 token 和费用归因到 schema、MCP 服务器、工具和消息桶,直至单个工具调用。 工作原理:mitmproxy 作为本地捕获跳点运行。Claude Code 通过反向代理模式配合 base-URL 覆盖进行捕获(无需证书);Codex 使用正向代理加上一个仅由 codex 命令信任的作用域本地 CA。代理绑定到 127.0.0.1,不发送任何遥测数据,并在写入 ~/.cost-xray/ 下的磁盘之前对 Authorization 头、API 密钥、cookie 以及疑似机密的请求体字段进行脱敏。分析在请求路径之外的一个独立物化器中运行,因此 token 化和定价不会给实时中继增加延迟。捕获的流量按唯一块去重并带有每轮增量,即使对于百万 token 的会话也能保持较小的磁盘占用。 README 中描述的功能:按来源的成本归因,拆分为新 token、缓存读、缓存写和输出 token,并定价到单个调用;上下文窗口占用拆分为来源级行;检测已配置但被注入每个请求却从未被调用的 MCP 服务器和工具;针对 Claude 的一种 token 化方法,使用 tiktoken 估算并对照提供商自身的用量总计进行比例校准(总计精确,按来源拆分近似);可自我修复的包装器,可重启代理或回退到直接执行代理;以及一个实时 TUI。 安装是一个通过 curl 管道执行的安装脚本,会提示选择要捕获哪些代理,或接受 COST_XRAY_AGENTS=claude|codex|all。捕获仅向前进行,并且需要一个新的终端。cx CLI 会打开 TUI 并管理服务(status、stop、start、restart、install、uninstall)。要求是 macOS 或 Linux、受支持的代理,无需 API 密钥或账户。采用 MIT 许可。