全部教程ccusage 实战:Claude Code 用量摸透

ccusage 实战指南:把 Claude Code Token 用量摸透

我是 Quentin,OpenClaw 作者,OpenClaw 拼车(cp.bizq.net)的维护者。

跑 Claude Code 一段时间后,几乎每个人都会遇到这个问题:「我这个月到底烧了多少 token?哪个项目最费?什么时候会触发 5 小时窗口?」

我自己之前是写脚本读 ~/.claude/projects/*.jsonl 算的,直到发现了 ccusage——一个零安装、超快、专门读 Claude Code 本地日志的统计工具。这篇是从「装上到摸透」的完整实战。

用拼车跑 Claude Code 的话,一行接通 Max 20× 配额:

curl -fsSL https://cp.bizq.net/setup.sh | bash -s -- claude-max-20x

ccusage 是什么

ccusage 是一个 Node 写的 CLI 工具,做一件事:读你本地 ~/.claude/projects/ 下面的 JSONL 文件,按各种维度统计 token 用量和成本

它能告诉你:

  • 今天 / 本月 / 整个会话窗口烧了多少 input token、多少 output token
  • 5 小时计费窗口的进度
  • 哪个项目最费 token
  • 哪个模型(Opus / Sonnet / Haiku)成本占比最高
  • 当前活跃窗口的实时燃烧速率,预测什么时候用完

关键好处:完全离线(除了拉模型定价表那次)、零依赖、超小包体积。


快速开始

推荐:直接 bunx 跑(不安装)

ccusage 包体积只有几百 KB,完全没必要全局安装。bunx 启动 < 1 秒

# 用 bunx(最快)
bunx ccusage
 
# 用 npx
npx ccusage@latest
 
# 用 deno(要带权限标志)
deno run -E -R=$HOME/.claude/projects/ -S=homedir -N='raw.githubusercontent.com:443' npm:ccusage@latest

我自己机器上装了 bun,平时直接 alias cu="bunx ccusage",敲 cu 就出报告。

可选:全局安装

如果你在网络不好的环境(比如内网 / 飞机 wifi),可以全局装一次:

npm install -g ccusage

之后直接 ccusage 即可。


报告类型(核心命令)

ccusage              # 默认 = daily
ccusage daily        # 每日 token 和成本
ccusage monthly      # 按月汇总
ccusage session      # 按对话会话统计
ccusage blocks       # 5 小时计费窗口
ccusage statusline   # 状态栏紧凑显示(Beta)

每种各有用法,下面挨个讲。

daily:日报

最常用。看「今天 / 这一周每天烧多少」:

ccusage daily

输出长这样:

Date         Input    Output   Cache    Total    Cost ($)
2026-04-26   125k     45k      890k     1.06M    $4.21
2026-04-27   201k     78k      1.4M     1.68M    $7.83
2026-04-28   89k      34k      512k     635k     $2.77

Cache 那列是 prompt cache 的命中量。如果你 CLAUDE.md 写得好、上下文复用率高,这一列会非常显眼,真实成本下降 70%+

monthly:月报

月初做账用:

ccusage monthly

按月汇总,能看出哪个月「事故性」高(比如某周写一个新项目,token 直接翻 10 倍)。

session:会话报告

按对话会话分组,最适合用来定位「哪一次 Claude Code 跑死循环」

ccusage session

哪个 session token 异常大,对应的就是 Claude Code 当时陷入了 retry / loop。

blocks:5 小时窗口

这条最关键。Claude Pro / Max 订阅是按 5 小时滚动窗口算配额的。blocks 模式让你看到当前窗口和历史窗口:

ccusage blocks

输出:

Block Start          Tokens     Cost      Status
2026-04-28 09:00     1.2M       $4.50     Active
2026-04-28 04:00     2.8M       $11.20    Closed
2026-04-27 23:00     900k       $3.40     Closed

Active 那行就是当前窗口。离窗口结束还有 X 分钟--live 看更直观。

live 仪表板

ccusage blocks --live

实时仪表板,每秒刷新:

  • 当前活跃 block 的 token 进度条
  • 燃烧速率(tokens per minute)
  • 距离窗口重置剩余时间
  • 按当前速率预测的最终用量

写大代码的时候我开一个分屏挂着这个,配额快爆前提前切轻量任务


筛选和选项

按日期范围

# 5 月 25 到 30 号
ccusage daily --since 20250525 --until 20250530
 
# 只看今天往前 7 天
ccusage daily --since $(date -d '7 days ago' +%Y%m%d)

JSON 输出(喂给脚本)

ccusage daily --json > usage.json
ccusage monthly --json | jq '.[] | select(.cost > 50)'

我用这条搭配 cron + 飞书机器人做了个月用量 > 阈值自动报警,详细写法见底部「自动化场景」。

按模型成本细分

ccusage daily --breakdown

输出会多几行,按 Opus / Sonnet / Haiku 拆开:

2026-04-28
  └─ claude-opus-4         320k tokens   $9.60
  └─ claude-sonnet-4-5     1.2M tokens   $3.60
  └─ claude-haiku-3-5      200k tokens   $0.20

写代码任务,Opus 单价是 Sonnet 4 倍。看到 Opus 占比异常高,就是没配置好模型路由。

时区与本地化

ccusage daily --timezone Asia/Shanghai --locale zh-CN
ccusage daily --timezone UTC

默认是系统时区。我服务器都设 UTC、本地 macOS 设 Shanghai,跨机器对账时记得加 --timezone 对齐。


项目分析

按项目分组

--instances 把不同项目(按 ~/.claude/projects/<name>/ 切分)拆开:

ccusage daily --instances

输出:

Date         Project              Tokens     Cost
2026-04-28   openclaw-carpool     800k       $3.20
2026-04-28   bizq-backend         400k       $1.60
2026-04-28   nasdaq-bot           200k       $0.80

哪个项目偷偷在烧钱一目了然。

筛选特定项目

ccusage daily --project openclaw-carpool
ccusage daily --project openclaw-carpool --breakdown

我个人最常组合:

ccusage daily --instances --project myproject --json | jq '.[] | {date, cost, tokens}'

紧凑模式(截图 / 分享)

终端宽度小、或者要发截图的时候:

ccusage --compact
ccusage monthly --compact

强制启用紧凑表格,列变短,颜色简化,发图清晰。


OpenClaw 拼车场景下的注意事项

拼车场景跟独立订阅相比,有几个细节要知道:

1. ccusage 看到的依然是「你的」用量

ccusage 只读你本机 ~/.claude/projects/ 的日志,它看到的是这台机器跑过的 token 量。拼车后端的整体配额、其他席位用了多少,它看不到。

如果你想看「拼车账户全局还剩多少配额」,看 cp.bizq.net 控制台,或者用 claude-monitor 那个工具。

2. 成本数字是「按官方 API 价格估算」的

ccusage 显示的 $ 数字是按 Anthropic 公开 API 价格算出来的「如果你直接刷 API key 要付多少」。

跑 OpenClaw 拼车的时候你按席位月费付,跟这个 $ 数字没有直接关系。但是它能让你看清「我每月相当于消费了多少 API 钱」——这是衡量拼车价值的核心指标。

我自己的数据:一个月 ccusage 显示 $1200+,拼车席位月费按团队规模定制,账面上拼车一年回本几十次。

3. 5 小时窗口监控仍然有效

不管走拼车还是直连,Claude 后端的 5 小时滚动窗口配额是一样的。ccusage blocks --live 在拼车场景下完全有效,重要的窗口管理工具


自动化场景

每天发用量到飞书

~/.claude/cron/daily-usage.sh

#!/bin/bash
USAGE=$(bunx ccusage daily --json | jq '.[-1]')
TOKENS=$(echo "$USAGE" | jq '.totalTokens')
COST=$(echo "$USAGE" | jq '.cost')
 
curl -X POST "https://open.feishu.cn/open-apis/bot/v2/hook/<id>" \
  -H 'Content-Type: application/json' \
  -d "{\"msg_type\":\"text\",\"content\":{\"text\":\"今天 Claude Code 用了 ${TOKENS} tokens,成本估算 \$${COST}\"}}"

挂 crontab:

0 22 * * * /Users/me/.claude/cron/daily-usage.sh

状态栏集成

ccusage 提供了 statusline 模式,可以喂给 Claude Code 的 status hook:

ccusage statusline

具体 hook 怎么配,见 Claude Code 官方 hooks 文档。配好后终端 prompt 旁边能实时看 token 量。


离线模式

如果你在飞机上 / 限网环境跑,--offline 让 ccusage 不去拉最新定价表:

ccusage daily --offline

价格用打包时的 cached 表,对纯 Claude 模型够用了。


我自己的 ccusage 节奏

频率命令用途
写代码时常驻ccusage blocks --live监控 5 小时窗口
每天下班前看一眼ccusage daily --breakdown看 Opus vs Sonnet 比例
周一早上ccusage daily --since $(date -d '7 days ago' +%Y%m%d)周报
月初ccusage monthly月度成本评估
出 bug 怀疑死循环ccusage session找到那个异常 session

立即开始

ccusage 加 OpenClaw 拼车一起用:拼车解决配额问题,ccusage 解决可见性问题。

# 跑起来 Claude Code(拼车)
curl -fsSL https://cp.bizq.net/setup.sh | bash -s -- claude-max-20x
 
# 装好 bun 之后看用量
bunx ccusage

更多文档见 https://cp.bizq.net,也可以参考 claude-monitor 使用指南对比另一个用量监控工具。


相关文章