爱意满满的作品展示区。
wzzexe

用 Claude Code 给 Claude Code 写了个"年度报告":会话热力图、token 统计、自动日报

  •  
  •   wzzexe · 1 day ago · 826 views

    事情是这样的:最近 Claude Code 用得很重,但它不提供任何使用统计——我想知道自己每天跑了多少会话、烧了多少 token 、都干了些什么。

    于是我打开 Claude Code,让它给自己写一个统计工具。一天时间,从空仓库到发布 npm,而这个工具统计的第一批数据,就是"写它自己"的那几个会话——日报里能看到它自己的完整开发过程,相当套娃。

    Dashboard

    它做什么

    Claude Code 把所有会话记录都存在本地(~/.claude/projects/**/*.jsonl),里面有完整的时间戳、token 用量、模型、你发过的每条指令。cc-journal 解析这些文件,给你:

    • GitHub 风格活跃热力图——一眼看出哪天最肝,指标可切换(token / 会话数 / 指令数)
    • 每日 token 趋势——input / output / cache 分开统计(cache 量级大 100 倍,混算全是虚高)
    • 时段分布——看自己几点效率最高(我的午休低谷清晰可见)
    • 当日明细——每个会话什么时间、哪个项目、首条指令、花了多少 token
    • 每日工作日报——规则提取"今天干了什么",也可以调本机 claude CLI 浓缩成一段文字(走订阅,不用配 API key)

    几个设计点

    • 100% 本地离线,不上传任何数据,服务只监听 127.0.0.1,无遥测
    • 接第三方模型(Kimi / GLM / DeepSeek 等 Anthropic 兼容端点)同样能统计——模型名从会话记录里自动识别,不是写死的列表,模型分布图直接看到各家用量
    • token 按 message.id + requestId 去重(一次响应在记录里占多行,每行都带完整 usage,不去重数字会翻几倍)
    • Claude Code 默认 30 天清理旧记录,工具会把已解析的历史留在本地缓存里,从首次运行起热力图只增不减
    • 零框架:Node + 原生 JS + ECharts,唯一运行时依赖是 commander
    • 界面和 CLI 都支持中英文

    试用

    npx cc-journal serve
    

    一条命令,浏览器自动打开 Dashboard,首次解析几秒钟。

    GitHub:https://github.com/pickjason/cc-journal

    目前只支持 Claude Code,数据口径上踩过的坑都写在 README 里了。功能还比较初期,欢迎反馈和 PR 。

    4 replies    2026-06-12 10:56:08 +08:00
    xiaolan23213
        1
    xiaolan23213  
       1 day ago
    还挺好用的 已 star
    wzzexe
        2
    wzzexe  
    OP
       1 day ago
    @xiaolan23213 感谢支持
    imokkkk
        3
    imokkkk  
       1 day ago
    好用 star 支持
    wzzexe
        4
    wzzexe  
    OP
       1 day ago
    @imokkkk 感谢支持
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   920 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 53ms · UTC 22:22 · PVG 06:22 · LAX 15:22 · JFK 18:22
    ♥ Do have faith in what you're doing.