huantian1223/dsh-token-stats ↗★ 1
dsh-token-stats
Token usage statistics for DeepSeek Harness: cumulative/peak tokens, longest chat session, daily streaks and a rolling 12-month activity heatmap. Host half records real provider usage from session logs and serves a stats API; client half adds a Token Stats page to Web Settings plus a live session badge.
安装
npx -p @deepseek-ai/dsh dsh plugin --profile web add github:huantian1223/dsh-token-stats说明文档
阅读完整 README ↗dsh-token-stats
English | 中文
DeepSeek Harness(DSH)的 Token 用量统计插件。直接解析 DSH 会话日志(session.jsonl.zstd)中的真实 provider usage 数据,在 Web GUI 内提供完整的用量统计:累计/今日/峰值 Token、最长聊天时长、连续使用天数,以及 12 个月的活动热力图(每日/每周/累计),并按模型、工作区拆分明细。
功能
- 六张统计卡片:累计 Token 数、今日 Token(含占累计比例)、峰值 Token(单会话最高)、最长聊天时长、当前/最长连续天数
- Token 活动热力图:GitHub 风格 7 行日历网格,支持 每日 / 每周 / 累计 三种视图与 12个月 / 3个月 / 30天 时间范围切换(默认 3 个月),悬停显示当天用量,点击日期格子下钻查看当天各会话明细(显示会话标题),支持导出 CSV(当前范围按日数据)
- 消耗构成:输入 / 输出 / 缓存读取 / 缓存写入 / 推理,完整精确数字
- 按模型 / 工作区:各模型、各工作区消耗拆分
- 会话头部实时角标:当前会话已用 Token,点击弹出本会话明细(显示会话标题,一眼识别是哪个会话),可一键打开完整统计
- DeepSeek 账户余额:三处显示——角标右侧余额胶囊(¥)、点击胶囊打开独立余额弹窗(总余额/充值/赠送/可用状态/刷新按钮/更新时间)、完整统计页余额面板(含刷新按钮)。点击刷新即强制查询(
?force=1)并带刷新中反馈,15 分钟自动轮询兜底;API Key 仅存于 host 进程,不下发浏览器 - 独立统计页:
http://127.0.0.1:3080/token-stats(深色主题,15 秒自动刷新)
数据来源
所有数字均来自 DSH 会话日志中记录的真实 provider usage(inputTokens / outputTokens / cacheReadTokens / cacheWriteTokens / reasoningTokens),不估算、不抓包。插件在启动时回放历史会话日志,并通过 session/event 实时捕获新用量,30 秒增量复核。
数据存储于 $DSH_HOME/token-stats/usage.jsonl($DSH_HOME 即 DSH 数据根目录,默认 ~/.dsh,也可通过 DSH_HOME 环境变量指定)。
安装
插件通过 DSH 的 profile 插件机制安装(dsh plugin 管理,与 @liustack/modlens 同机制):
- 在 web profile 的
package.json添加依赖并加入 bundles 列表:
// data/profiles/web/package.json
{
"dependencies": {
"dsh-token-stats": "link:../../路径/dsh-token-stats" // 或 file: 或发布到 npm 后直接写版本号
},
"dsh": {
"profile": {
"bundles": ["@deepseek-ai/dsh-base", "@deepseek-ai/dsh-web-app", "dsh-token-stats"]
}
}
}
- 在 profile 目录执行
pnpm install - 重启 DSH(退出 → 启动)