🎁 福利专区全网大模型免费应用 + 新用户福利 + 注册活动入口,低成本玩转 AI

Token 用量统计面板 Amer-CN/zcode-usage-stats

DeepSeek Harnessv0.1.0
Amer-CN5 天前有提交已提供中文文档扫描:含敏感能力

扫描全历史会话,用热力图与折线看清 Token 消耗

29.7/100
综合分
1
GitHub 星标
44
npm 周下载
—/5
用户评分

数据截至 2026/11/1 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。

安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add zcode-usage-stats
npm 源 · zcode-usage-stats 的发布者账号已校验与本仓库一致

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:仅索引
是什么[目录]—
dsh 原生插件 · other
暂无时间戳·判据 →
装得上吗[实装验证]✓
静态安装检查通过
未做真实安装
L4 · 真实安装等级说明 →
数据截至 2026/10/23·判据 →
安全吗[自动扫描]—
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
数据截至 2026/11/04·判据 →
还在维护吗[仓库]✓
活跃:最近一次提交在 5 天前
暂无时间戳·判据 →
图例:✓ 通过! 需注意— 未判定 / 无数据· 「未判定」= 本站尚无数据,不代表插件有问题
档位由哪些信号合成

本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。

验证判据与等级说明 →

可信度证据

安装兼容性检查✓ 自动检查通过
展开查看检查明细 ↓

以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。

✓npm 包zcode-usage-stats @ 0.1.0
✓Node 引擎未声明 engines.node
✓dsh CLI 依赖未声明 dsh 版本约束
✓入口文件main/exports/bin 已声明

验证方式:npm registry 存在性 + package.json 静态校验 · 最后检查 2026/9/21 23:54:40

安全扫描自动 · 静态分析源码
v2.7.0
🔵 扫描:含敏感能力尚无人工评估
展开查看扫描说明与证据 ↓

静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。

读写/删除本地文件发起外部网络请求
查看扫描证据(共 10 处,展示前 10 条)
  • 读取本地文件
    lib/index.mjs:166
    entries = await readdir(dir, { withFileTypes: true });
  • 读取本地文件
    lib/index.mjs:205
    const [current, kept] = await Promise.all([stat(file), stat(prev.file)]);
  • 读取本地文件
    lib/index.mjs:379
    const buf = await readFile(file);
  • 读取本地文件
    lib/index.mjs:451
    info = await stat(file);
  • 读取本地文件
    lib/index.mjs:666
    return JSON.parse(await readFile(path, "utf8"));
  • 写入本地文件
    lib/index.mjs:693
    await mkdir(dirname(path), { recursive: true });
  • 写入本地文件
    lib/index.mjs:694
    await writeFile(tmp, text, "utf8");
  • 写入本地文件
    lib/index.mjs:696
    await rename(tmp, path);
  • 写入本地文件
    lib/index.mjs:699
    await writeFile(path, text, "utf8");
  • 发起网络请求
    lib/client.js:1006
    const res = await fetch("/api/usage-stats" + (force ? "?refresh=1" : ""), { credentials: "same-origin" });
扫描于 2026/11/4(1 天前) · 范围 入口闭包 + 全包扫描 · 来源 npm 发布包

静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。

社区实装还没有人打卡 · 装过的第一个就是你
依赖的 DSH / Cordis 模块
@deepseek-ai/cordis@deepseek-ai/dsh-client-runtime@deepseek-ai/dsh-client-ui-slots
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

功能亮点

  • 全量会话Token统计
  • 日历热力图
  • 多模型趋势折线

非官方 DSH 插件:在 DeepSeek Harness 设置页渲染全量会话的 Token 用量统计——日历点阵热力图、多模型趋势折线、刻度环仪表盘,支持深浅主题与自定义时间范围。

README

由 DeepSeek 最新模型翻译生成
DeepSeek Harness(DSH)插件:ZCode 风格的 Token 用量统计面板 覆盖:全历史会话扫描 × 用量趋势 × 模型仪表盘 × 活跃热力图 × 深浅双主题 Typing SVG 一个装进 DSH 设置页的「Token 记账本」。扫描 ~/.dsh 下的全历史会话,把每一枚 token 按天、按小时、按模型算清楚:今天写了多少、哪个模型最费、哪天是巅峰。纯本地扫描、本地聚合、本地渲染——数据不出本机。 ⚠️ 非官方社区插件,与 DeepSeek / ZCode 无关联。"zcode" 仅为致敬对象与包名沿用。 📸 界面预览 | ☀️ 浅色主题 | 🌙 深色主题 | ✨ 功能特性 | 模块 | 说明 | | 📅 时间范围 | 今天 / 昨天 / 近 7 天 / 近 30 天 / 本月 / 上月 / 全部 / 自定义区间(起止自动校验防倒序) | | 🔥 活跃分布 | 日历点阵热力图:一格一天,点面积 = 当日 Token(sqrt 换算);每日 / 每周 / 累计三档分桶;峰值日虚线圈标注 | | 📈 用量趋势 | 一条线一个模型,圆点 = 当期用量,峰值直接标数;悬停看各模型分项,图例可点击显隐 |
展开完整文档(README 剩余 1 节)
DeepSeek Harness(DSH)插件:ZCode 风格的 Token 用量统计面板

覆盖:全历史会话扫描 × 用量趋势 × 模型仪表盘 × 活跃热力图 × 深浅双主题

Typing SVG

一个装进 DSH 设置页的「Token 记账本」。扫描 ~/.dsh 下的全历史会话,把每一枚 token 按天、按小时、按模型算清楚:今天写了多少、哪个模型最费、哪天是巅峰。纯本地扫描、本地聚合、本地渲染——数据不出本机。

⚠️ 非官方社区插件,与 DeepSeek / ZCode 无关联。"zcode" 仅为致敬对象与包名沿用。

📸 界面预览

| ☀️ 浅色主题 | 🌙 深色主题 |

✨ 功能特性

| 模块 | 说明 |
| 📅 时间范围 | 今天 / 昨天 / 近 7 天 / 近 30 天 / 本月 / 上月 / 全部 / 自定义区间(起止自动校验防倒序) |
| 🔥 活跃分布 | 日历点阵热力图:一格一天,点面积 = 当日 Token(sqrt 换算);每日 / 每周 / 累计三档分桶;峰值日虚线圈标注 |
| 📈 用量趋势 | 一条线一个模型,圆点 = 当期用量,峰值直接标数;悬停看各模型分项,图例可点击显隐 |
| 🍩 模型用量 | 刻度环仪表盘:100 刻 = 100%,每 10 刻一枚锚点;扇形命中区悬停查看模型明细;模型超过 6 个自动并「其他」防撞色 |
| 🧮 顶部指标 | 累计 Token / 单日峰值 / 最长会话时长 / 当前连续天数 / 最长连续天数 |
| ♿ 无障碍与体验 | WCAG AA 对比度(明暗双主题逐项核算)、prefers-reduced-motion 降级、透明命中层让小点也轻松悬停、深浅主题跟随 DSH |

📦 安装

前置:已安装 @deepseek-ai/dsh(及 DSH 插件命令依赖的 pnpm)。

dsh plugin --profile web add zcode-usage-stats

或从 GitHub 源安装:dsh plugin --profile web add github:Amer-CN/zcode-usage-stats。
0.1.2 起要求 DSH >= 0.2.1-rc.1。

国内镜像可能晚于 npm 官方源同步;若装到旧版,可临时把 npm_config_registry 指向 https://registry.npmjs.org/,或改用 GitHub 源。

安装后重启 DSH 进程,打开 设置 → 使用统计 即可看到统计页面。

通过插件市场「发现」安装(可选)

DSH 0.2.1 的「发现」市场是实验性功能,默认不启用、索引源为空。把本仓库的市场索引加入后,可以直接在「发现」里搜索安装:

1. 启用 DSH 的实验性插件市场(若你的版本提供「发现」标签页)
2. 插件 → 发现 → 添加索引源
3. 填入:

https://raw.githubusercontent.com/Amer-CN/zcode-usage-stats/main/plugin-market.json

4. 搜索 zcode-usage-stats 并安装

如果没有「发现」标签页,说明该实验性组合包未启用,直接使用上面的「添加插件」按包名安装即可。索引是第三方声明,实际安装版本由 npm 包 manifest 决定;本索引固定从 npm 官方源读取 0.1.2。

🚀 使用

- 顶部切换时间范围;「全部」显示自使用以来的所有数据。
- 趋势图悬停查看各模型分项,点击图例显隐对应模型。
- 「刷新」强制重新扫描全部会话。

⚙️ 工作原理

~/.dsh/sessions 会话日志(session[.vN].jsonl[.zstd]) │ ▼ 直接读取;多帧 zstd 逐帧解压按天 / 按小时 / 按模型聚合 ──► 内存 + 磁盘双层缓存(SWR) │ └─ 按会话文件 size+mtime 增量,只重读追加过的会话 ▼ GET /api/usage-stats(过宿主信任栅栏:Host/Origin + cookie) │ ▼ 设置页前端:手写 SVG 按实测容器宽度 1:1 出图

🎨 设计与实现

| 设计点 | 说明 |
| 图表 | 手写 SVG(日历点阵 / 发丝折线 / 刻度环),零运行时图表库依赖 |
| 配色 | 自研双轨色板:类目色 6 个跨色相承载模型身份,序数色单色相明度阶承载用量大小;两套主题均满足 WCAG AA,类目色两两色距核算保证一眼可分 |
| 排版 | 固定 px 字阶 + 4 的倍数间距阶梯;图表按 ResizeObserver 实测容器宽度 1:1 出图,不做等比缩放,字号真实可读 |
| 命中区 | 视觉元素不绑事件:热力图逐格透明矩形、刻度环整圈扇形 path,悬停不闪烁 |
| 服务端 | 直接读取会话日志并逐帧解压 zstd(Electron 自带 zstd 只解第一帧,故自行切帧);按文件 size+mtime 增量,冷扫描 20–30s、增量刷新 <2s;内存 + 磁盘双层缓存,SWR 过期后台刷新 |
| 安全 | /api/usage-stats 自行通过宿主 connection.requestRejection 信任栅栏鉴权 |

🔢 数据口径

| 指标 | 口径 |
| Token 用量 | 以 assistant/message 事件携带的全量 usage 为准(input + output + cacheRead + cacheWrite);流式 assistant/chunk 的 usage 不重复计 |
| Turns | 以 step/end 事件按新 turn 计数(覆盖 completed / failed / cancelled) |
| 模型归属 | 优先取消息自身 message.source.model(逐条准确),回退事件 data.model / request/context 当前模型,再回退 other |
| 活跃日 | 当天有 ≥1 条 usage 事件;连续天数按活跃日相邻日推算 |

🤝 兼容性

- 面向 DSH >= 0.2.1-rc.1(已在 0.2.1-rc.3 桌面版验证);package.json 的 dsh.engines 会阻止不兼容版本加载。
- 依赖宿主提供的 webServer、connection 服务;会话数据直接读 $DSH_HOME/sessions(默认 ~/.dsh/sessions)。
- 会话日志支持 v0–v4 与 zstd / 明文;同一会话目录迁移残留的 v3+v4 会按版本去重,不会重复计数。
- 不再依赖旧版客户端包 @deepseek-ai/dsh-client-runtime / dsh-client-ui-slots。

🗂️ 仓库结构

目录树(点击展开)

zcode-usage-stats/
├── package.json # 插件清单(dsh 客户端注入声明) ├── cordis.patch.yml # DSH 补丁声明 ├── plugin-market.json # DSH「发现」市场索引(format 1) ├── LICENSE # MIT ├── README.md # 本文件 ├── assets/ │ ├── usage-stats.png # 浅色主题截图 │ └── usage-stats2.png # 深色主题截图 ├── build/ │ ├── body.js # 前端真源:界面 + 手写 SVG 图表 │ ├── panel.css # 前端真源:样式与配色变量 │ └── assemble.cjs # 合成脚本:body.js + panel.css → client.new.js ├── tests/ │ ├── acceptance.sh # 前端验收门禁:15 项检查(一条命令跑完) │ ├── harness.cjs # 渲染挂具:模拟容器宽度渲染出预览 HTML │ ├── assert.cjs # 几何断言:三张图的尺寸/可读性 │ ├── contrast.cjs # WCAG 对比度核算(明暗两套) │ ├── preset-conformance.cjs # custom 色板合规校验 │ ├── host-scan.cjs # 宿主侧回归:多帧 zstd / 增量 / 去重 / 超时续扫 │ └── preview-.html # 渲染产物(gitignore) └── lib/ ├── index.mjs # 宿主侧:读取会话日志 + 增量聚合 + 双层缓存 + API └── client.js # 前端合成产物(勿直接编辑,见「从源码构建」)

🛠️ 从源码构建

lib/client.js 是合成产物,请勿直接编辑。前端真源在 build/:

1. 编辑 build/body.js(界面 + 图表)与 build/panel.css(样式 + 配色变量)
2. 合成
node build/assemble.cjs

3. 用合成结果覆盖部署文件
cp build/client.new.js lib/client.js

4. 前端验收(15 项必须全过) bash tests/acceptance.sh

5. 宿主侧回归(Node 24 / Electron 运行时均可)
node tests/host-scan.cjs
验收脚本会按真实面板宽度渲染出预览 HTML(tests/preview-.html),并跑几何断言、WCAG 对比度与色板合规检查。默认读取本机 ~/.dsh 下的用量缓存;可用 USAGE_CACHE=/path/to/cache.json bash tests/acceptance.sh 指定其它缓存,缓存不可用时自动改用内置合成数据。

宿主侧改动需要重启 DSH 进程才会生效(前端 lib/client.js 是热更新,刷新页面即可)。tests/host-scan.cjs 用合成会话覆盖多帧 zstd、v3/v4 去重、增量重读、半帧容错与超时续扫。

发布新版本时记得同步 plugin-market.json 里对应版本的 version 与 publishTimestamp,否则「发现」市场仍会指向旧版本。

提 PR 请改 build/ 下的源文件,并在描述里附上 bash tests/acceptance.sh 的输出。

📜 版本历史

当前 v0.1.2(2026-10-30)· DSH 0.2.1 适配与性能修复

| 版本 | 内容 |
| v0.1.2 | 适配 DSH 0.2.1-rc.3:宿主侧改为直接读取会话日志并逐帧解压多帧 zstd(Electron 只解首帧会导致数据为空/超时),按文件 size+mtime 增量扫描;修复 1400+ 会话时 60s 超时只回传约 10% 数据、缓存停在旧日期的问题;模型归属改用 message.source.model;v3/v4 迁移残留去重;热力图改为分位分档并修正低档点色/最小半径,避免真实数据下热力图看起来全空;npm 0.1.2 发布并附 DSH「发现」市场索引 |
| v0.1.1 | 缓存目录跟随当前 profile(不再硬编码 profiles/web),读取旧路径做一次性迁移;补充 dsh.engines / 兼容性声明 |
| v0.1.0 | 初始开源版本:以 qianxiao1213/zcode-usage-stats 原版为基线,重写全部图表界面与配色(活跃分布 / 用量趋势 / 模型用量三图 + 自研双轨色板),补齐双主题截图与文档 |

🙏 许可与致谢

- 代码以 MIT License 发布,见 LICENSE。
- 上游致谢:基于 qianxiao1213/zcode-usage-stats 重构——图表界面与配色全部重写,数据聚合层在其基线上演进。
- 本插件为非官方社区项目,与 DeepSeek / ZCode 无关联。

Made by @Amer-CN

数据只在本机算,哪也不去。
预览分享卡片长什么样 ↓Amer-CN/zcode-usage-stats
分享 · DeepSeek Harness Hub
Amer-CN/zcode-usage-stats

扫描全历史会话,用热力图与折线看清 Token 消耗

这个插件是你维护的吗?
作者本人可认领并核对本条目;认领通过后,详情页会显示「作者已认领」标记。
认领条目 →
回到顶部