我的 Claude 用量去哪了?按项目查看用量
最后更新:2026年9月30日
Claude Code 把每个会话写入你电脑上 ~/.claude/projects 下的文件,每个项目一个文件夹。其中每条回答都带有 Token 数量。按文件夹加总,就得到你按项目的用量——前提是每条消息只计一次,而且只有过去 30 天,因为 Claude Code 默认只保留这么久。你在 claude.ai 或 Claude App 中做的事不在其中。
本页说明这些数字在哪里、加总时的两个陷阱,以及本地文件无法告诉你的内容。关于 Claude Code 的事实来自 Anthropic 的文档,列在文末。
Claude Code 把它记在哪里
存在 ~/.claude/projects 下的会话记录中,每个项目一个文件夹,每个会话一个 JSONL 文件。模型的每条回答都带有一个 usage 块,包含输入、输出和缓存 Token。
- 路径:
~/.claude/projects/<project>/<session>.jsonl。文件夹名称是把斜杠换成短横线的项目路径,例如-Users-you-work-my-repo。子代理写入会话旁边的subagents/文件夹。 - 格式:每行一个 JSON 对象。来自模型的行包含一个
message,其中有id、model和一个usage块:input_tokens、output_tokens、cache_creation_input_tokens、cache_read_input_tokens。 - 明文:这些文件没有加密。经过工具的所有内容都在里面——文件内容、命令输出、粘贴的文字。
Anthropic 说明了文件在哪里、包含什么,但没有说明每行的结构。它可能随任何版本改变,所以读取这些文件的脚本遇到不认识的行时应跳过,而不是报错。
为什么简单相加会偏高
Claude Code 可能会把同一条回答多次写入记录,例如在流式输出时或会话分支时。每个消息 ID 只计一次,否则合计会高出很多。
这样一来,同一个消息 ID 会出现在多行,每行都有一个 usage 块。每个 ID 只保留一行——输出最大的那行——其余舍弃。在我自己的电脑上,简单相加的结果高出约 2.7 倍。跨文件也是如此:恢复或分支的会话可能把之前的回答复制到新文件中。
30 天后就没了
只能追溯到会话记录保留的时间。记录超过 cleanupPeriodDays 后,Claude Code 会将其删除,默认为 30 天。如果想看更久,就调高这个值,或自己保存合计。
- 设置:
~/.claude/settings.json中的cleanupPeriodDays,例如{"cleanupPeriodDays": 90}。最小值为 1;0 会被拒绝。 - 例外:你在 Claude Desktop 或 Cowork 中启动或最后继续的会话,无论多久都会保留,除非你设置了
desktopSessionCleanupPeriodDays(Claude Code 2.1.248 或更高版本)。 - 代价:保留期越长,磁盘上的明文就越多。如果你只想要数字,更安全的做法是把合计另存别处,保留期设短一些。
按项目的 Token,大致估算
去重之后,按项目文件夹加总用量。有三点能让结果更公平:
- Worktree:每个 worktree 都有自己的文件夹。把它们加到所属的仓库中。
- 看权重,而不只看数量:一百万次缓存读取的成本远低于一百万个输出 Token。按 API 标价为每种类型计价,权重会更公平。这是一把尺子,不是账单——在 Pro 或 Max 上,你不按 Token 付费。
- 占窗口的比例,只是估算:Anthropic 没有说明 Token 如何换算成 5 小时窗口或每周窗口中的百分比。任何按项目的比例都是估算,也应标明是估算。
哪些内容无法看到
claude.ai 和 Claude App 中的对话不会在你的电脑上留下记录。它们同样消耗相同的会话限额和每周限额,所以窗口中有一部分无法追溯到某个项目。
另一台电脑上的 Claude Code、已删除的会话记录,以及同一台电脑上的第二个账户,也是如此。如果你的窗口上涨幅度超出本地 Token 能解释的范围,剩下的通常就去了这些地方。
在 AI Cockpit 中
从 Mac 6.8 起,用量窗口替你完成这项工作。它显示你的 Claude 和 Codex 配额用在了哪里——按项目、模型、思考力度和小时,最多回溯 365 天。
- 两种指标并排:原始 Token,以及按 API 标价折算的金额,并注明不是账单。
- 估算比例:占 5 小时窗口和 7 天窗口的比例,另有星期 × 小时热力图。
- 只计一次:回答按消息 ID 去重。Worktree 计入其上级仓库。
- 超过 30 天:App 读回 Claude Code 仍保留的内容,此后自己保存合计——只有数字,存在本地,从不保存你会话的文字。
- 创建分析会保存一份独立的 HTML 报告;也可导出 CSV。项目名称可以匿名化。
这个窗口只在 Mac 上提供;它读取的是电脑上的文件。限额本身——每个窗口用了多少、何时重置——见监控 Claude 用量限额。
简短解答
Claude Code 把我的 Token 用量存在哪里?
存在 ~/.claude/projects 下的会话记录中,每个项目一个文件夹,每个会话一个 JSONL 文件。模型的每条回答都带有一个 usage 块,包含输入、输出和缓存 Token。
为什么我的 Token 合计偏高?
Claude Code 可能会把同一条回答多次写入记录,例如在流式输出时或会话分支时。每个消息 ID 只计一次,否则合计会高出很多。
我能看到多久以前的 Claude Code 用量?
只能追溯到会话记录保留的时间。记录超过 cleanupPeriodDays 后,Claude Code 会将其删除,默认为 30 天。如果想看更久,就调高这个值,或自己保存合计。
为什么我在 claude.ai 上的使用没有出现?
claude.ai 和 Claude App 中的对话不会在你的电脑上留下记录。它们同样消耗相同的会话限额和每周限额,所以窗口中有一部分无法追溯到某个项目。
来源
Anthropic 经常更新 Claude Code;以下页面核对于 2026年9月29日。
- Explore the .claude directory——会话记录、保留期、明文存储
- Settings reference: cleanupPeriodDays
- Use Claude Code with your Pro or Max plan——共享限额