前言¶
同时接了多家模型之后,很难回答一个具体问题:这个小时、这个模型、这个 provider 烧了多少 token。登各家控制台只能看到总额,接 Langfuse / Helicone 一类平台要改代码、请求要出网,自己写脚本解析日志又没有界面、下钻困难。下面介绍的 dsh-api-usage-dashboard 走另一条路:插件直接读 Harness 自己的会话记录,装完在左侧边栏出用量面板,不配接口、不贴 key、不出网。它由 LENS-Views 维护,在社区插件目录中归为客户端分类。
这是什么¶
dsh-api-usage-dashboard 是 DeepSeek Harness(DSH)插件。装完后侧边栏多一个柱状图图标,点开是模型 API 用量仪表盘:每个 provider、每个模型、每小时的调用次数与 token 数。数据来源是 Harness 的会话日志,之后新接的 provider 在第一次调用时会自动出现在图里,不需要额外登记。
包名就是 dsh-api-usage-dashboard,截至成稿时版本为 1.0.2,MIT 许可,零运行时依赖,要求 Node >= 20。作者署名包括 LENS-Views 与 DSH Agent(deepseek-flash),后者以纯文本方式署名。
核心功能¶
以下能力均来自 README 已实现项:
- 24 小时柱状图:固定 00:00–23:00 全刻度,没有调用的小时保留空槽,图形不会因”一天只有几小时”而失真。
- 按天钻取:日期选择器加最近 7 天快捷标签。
- 悬停显示虚线定位线与气泡(时间段 / tokens / 请求数),点击可钉住柱子对照。
- Tokens / 请求次数一键切换,Y 轴自动取整(1/2/5×10ⁿ)并带网格线。
- 每个 provider、每个模型各有固定颜色,颜色贯穿卡片、迷你图和明细表;tokens 用蓝,请求用琥珀。
- 每个模型一张 24 小时迷你柱图,便于看哪个在烧 token。
- 明细表:provider 汇总加模型明细,含调用、输入、缓存、输出、合计、占比。
- 跟随宿主主题、中英双语、60 秒自动刷新。
安装与启用¶
README 给出的安装方式是在 DSH 的插件管理器里走 install_bundle,不是命令行直接拼包名:
# 在 DeepSeek Harness 的插件管理器里选择 install_bundle
dsh-api-usage-dashboard
1、打开 DSH 插件管理器,选 install_bundle
2、输入包名 dsh-api-usage-dashboard(已发布到 npm),也可以指向本地目录
3、侧边栏点柱状图图标,完成
首次打开会扫一遍全部会话日志。README 给的参考是 23 个会话约 1–2 秒,之后走缓存,基本秒开。
不用 npm 时,README 另外给了两个入口:把仓库拷到本地用目录路径安装,或直接在 install_bundle 里填 github:LENS-Views/dsh-api-usage-dashboard。仓库是 public 的,没有构建步骤。
配置¶
cordis.patch.yml 的 config 三项全部有默认值,不改也能用:
- insert:
- id: api-usage-dashboard
name: 'dsh-api-usage-dashboard'
config:
cacheTtlMs: 20000 # 扫描结果缓存(毫秒),0 = 每次重扫
maxSessions: 0 # 只扫最近 N 个会话,0 = 全部
scanConcurrency: 4 # 并发读取会话数(1–8)
改宿主代码后,用插件管理器把 api-usage-dashboard 这一行关一次再开即可热重载;改浏览器代码刷新页面。
统计口径¶
| 指标 | 含义 |
|---|---|
| 调用次数 | 会话里记录的模型调用条数,含压缩摘要等非对话调用 |
| 输入 tokens | 未命中缓存的输入(inputTokens) |
| 缓存 tokens | 命中提示缓存的输入(cacheReadTokens) |
| 输出 tokens | 模型生成(outputTokens) |
| 合计 tokens | totalTokens = 输入 + 缓存 + 输出 |
同一 provider 下按模型分行;不同 provider 即使模型同名也分开统计。
隐私边界¶
- 只读本机
~/.dsh/sessions下的会话日志 - 不读取、不转发任何 API key
- 不向任何外部服务发请求
- 只注册一个
127.0.0.1路由,非本机请求直接 403
适用场景与注意¶
适合已经在 DSH 里跑了多家模型、想按 provider 和模型看小时级用量的人。它统计的是 Harness 实际发出的调用,绕过 Harness 的请求不会出现在图里;这也是它”不会算错”的前提。
两点要注意。第一,插件以当前 DSH 进程身份运行,可以读取整个 ~/.dsh/sessions,安装前应先核对源码与许可证,确认这个数据范围符合预期。第二,README 明确说明还没有金额(¥)字段,需要每个 provider 的单价才能补上;而自建网关通常不公开牌价,所以目前没有这一列。
小结¶
它的价值在于零配置:直接读现有会话日志做聚合,而不是维护并行计数器,避免与宿主漂移。目录页与源码:
- 目录页:https://www.skillhub.cn/plugins/LENS-Views/dsh-api-usage-dashboard
- GitHub:https://github.com/LENS-Views/dsh-api-usage-dashboard