设置页用量仪表盘:从会话日志汇总 token、请求、输出 token 与缓存命中率,含堆叠图,并按供应商、模型或工作区分组列表。
安装
# GitHub 源码(首次需按提示配置 allowBuilds 构建授权后重试)
dsh plugin --profile web add github:NOirBRight/dsh-usage-monitor
装任何插件都等于在你的机器上跑第三方代码,权限和你本人一样大——能读你的文件、用你的凭据、访问网络,工具审批管不到它。GitHub 来源的插件还会在安装时执行构建脚本——pnpm 默认拦截,所以安装可能停在 ERR_PNPM_GIT_DEP_PREPARE_NOT_ALLOWED 或 ERR_PNPM_IGNORED_BUILDS;dsh 会打印出需要添加的确切键名,把它加进该 profile 的 pnpm-workspace.yaml 的 allowBuilds 下,重跑一次即可装上。放行构建本身就是一次信任判断:请只安装可信来源,并尽量锁定 commit(github:owner/repo#sha)。
README
English | 中文
DeepSeek Harness 的用量看板。从会话日志里折出供应商上报的 token usage,在设置页画图。
兼容性
宿主 DSH peer 与开发依赖使用无上界的下限范围 >=0.1.7-alpha.2。锁文件解析为 DSH 0.1.7-rc.2 包与 Cordis 4.0.4。可选 peer 让插件在支持集以外仍可加载。
package.json#dsh.compatibility.dshReleases 将 DSH 0.1.7-alpha.2、0.1.7-rc.1 和 0.1.7-rc.2 记录为兼容证据,不是允许列表。未知的新宿主告警一次后仍按正常路径挂载。只有复现过的故障才会加入 blocklist。
展示
- Tokens、请求数、输出 token、缓存命中率
- 堆叠图:指标(Token / 请求)× 分组(供应商 / 模型 / 工作区)× 粒度(日 / 周)
- 近一周、近一月、自定义范围
- 响应式总览统一使用全宽 Token 汇总、紧凑次要指标、堆叠图和跟随当前 By 分组的 Token 占比卡片
- 窄屏下卡片收为单列,图例可横向滚动
不查询订阅额度。
Metric、By 或 Group 菜单打开时,Escape 只关闭菜单并将焦点还给触发按钮;没有打开的菜单时,Escape 仍交由设置窗口处理。
安装
宿主开发依赖解析为 rc.2 包集,见兼容性。从 GitHub 安装:
dsh plugin --profile web add --force https://github.com/NOirBRight/dsh-usage-monitor/releases/latest/download/dsh-usage-monitor-0.2.20.tgz
dsh web
仓库跟踪已构建的 lib 产物,GitHub 安装不需要允许构建脚本。源码检出可在 pnpm run build 后用 link 安装。
然后打开 设置 → 用量。
数据
通过公开的 ctx.sessionQuery.readSession 读取进行中与已落盘日志;sessionPersistence.list 只提供缓存 revision。Usage RPC 使用经过认证的 /api/plugin-rpc/usage-monitor Fetch 路由,不检查私有 persistence 方法或会话文件路径。无法读取的会话会省略;只返回折叠后的用量汇总。
发布
pnpm run check 按以下顺序运行完整门禁:单测、TypeScript 类型检查、确定性构建一致性校验(干净临时目录构建 vs 跟踪的 lib/)、构建,以及真实 npm pack + 不可变 fixtures/rc1-0.1.7 校验 + 离线安装 + Host/前端 bundle 导入冒烟。打包校验只读取仓库自有的 0.1.7-rc.1 manifest/tarballs,验证官方 tag/commit 与 registry 完整性,保留按版本区分的父边;隔离的全新 pnpm consumer 使用无效 registry、offline/no-scripts/no-audit/no-fund、空 NODE_PATH 和按父包作用域的本地 tarball 覆盖,不使用 --legacy-peer-deps 或 omit/force 绕过。Owner archive 只写入带前缀的临时目录。校验不会在比对前重写工作区 lib/,陈旧、缺失或手改的产物都会失败。
打 tag 前跑 pnpm run check:strict(顺序同样是单测、类型检查、构建一致性校验、构建、打包,并设置 PARITY_CHECK_HEAD=1;若已提交的 lib/ 与源码构建不一致则失败——即 v0.2.5 漂移防护)。以 src 为准,提交重建后的 lib/。
设置 → 用量的导航图标是 ctx.effect + MutationObserver 的 DOM 补丁;ctx.effect 释放与接受的 Alpha.4 DOM 风险见 src/client/nav-icon.ts。
正式版安装(Latest)
Session-log usage dashboard with responsive metric cards, charting, and provider shares. 发布包只包含构建后的 Host/Client 产物,不含兄弟仓库源码、本机路径或 link:/workspace: 依赖。打包校验使用冻结的 DSH 0.1.7-rc.1 依赖图;开发锁文件将 DSH 依赖解析为 0.1.7-rc.2。
Latest 安装命令(永久不含版本号):
dsh plugin --profile web add --force \
https://github.com/NOirBRight/dsh-usage-monitor/releases/latest/download/dsh-usage-monitor-0.2.20.tgz
固定版本安装命令:
dsh plugin --profile web add --force \
https://github.com/NOirBRight/dsh-usage-monitor/releases/download/v0.2.20/dsh-usage-monitor-0.2.20.tgz
更新、卸载与验证:
# 更新到最新 Release
dsh plugin --profile web add --force \
https://github.com/NOirBRight/dsh-usage-monitor/releases/latest/download/dsh-usage-monitor-0.2.20.tgz
# 验证加载与版本
dsh plugin --profile web list
# 只卸载本插件
dsh plugin --profile web remove dsh-usage-monitor
配置入口:Web 使用「设置」中的本插件页面;Host-only 插件使用 profile 的 dsh.profile.bundles 配置。先复制本 README 的最小 YAML/JSON 示例,再填写凭据或后端地址。
回滚:重新执行固定版本 v0.2.19 命令,确认插件列表后只重启一次 Web 服务。失败时查看 journalctl --user -u dsh-web.service,不要把源码 checkout 写入 production profile。
链接
同类插件
bowenliang123/dsh-context★ 1791
DSH 上下文洞察面板:Context 仪表盘 + /context命令 + Context 浏览器,查看 Context的分类组成、内容详情、演进趋势、压缩/注入事件、统计等一站式 Context 全生命周期管理。
Han-1413141/dsh-cost-meter★ 361
会话与当日 API 费用统计、预算图框(已用%)、官方余额、历史看板,支持峰谷计价与官方价格一键同步。
wssfk12138/dsh-damage-pulse★ 237
在 DSH Web 界面追踪 DeepSeek Token 用量、单次与会话费用及账户余额,并显示缓存感知的扣费动画。
zh667/TokenLedger★ 202
侧边栏用量面板:把 Token 归属到实际服务该请求的中转站,站点从已有的 provider 配置中读出,无需额外配置;含今日/本月/累计三窗口、按站点与模型下钻、一年活跃度热力图,以及 New API / Sub2API / DeepSeek 余额。
Ychris12138/dsh-usage-stats★ 167
多供应商用量看板:按供应商/模型统计 Token 与日期下钻,统一展示账户余额,并追踪 OpenCode Go / Z.ai 订阅额度。
PolinniZhong/dsh-personal-center★ 118
DeepSeek Harness 个人中心:跨会话用量统计、按模型成本估算、全局自定义指令、外观全局字号、数据驱动的桌面宠物(位图/矢量皮肤)与会话状态概览,纯本地离线运行。
社区评论
评论公开保存在 GitHub Discussions。加载评论会连接 GitHub 和 Giscus;发表内容需要 GitHub 账号。