Back to home@xbyzzZ

dsh_token_usage

No description

Stars
0
Language
JavaScript
Created
Aug 20, 2026
Updated
Aug 20, 2026
GitHub repo

Introduction

dsh-token-usage

面向 DeepSeek Harness 的本地用量看板插件。

它只读 $DSH_HOME/sessions(默认 ~/.dsh/sessions)里的 session.jsonl.zstd,按最近 30 天汇总 provider 回报的 token usage,并在 Web 侧栏 设置上方 放一个入口。点击后打开用量弹窗:热力图 + 按模型表。

这是独立 bundle 插件,不改 DSH 源码,不替换整条侧栏,不引入 SQLite。

官方插件规范:

界面

用量弹窗:30 天热力图和按模型统计

  • 入口:sidebar.footer.action,在设置按钮上方
  • 弹窗:最近 30 天热力图、新产生 / 有用量的天 / 会话
  • 热力图:浅色白到蓝,暗色黑到蓝;没有用量为白 / 黑
  • 模型表:provider + 模型名、步数、输入、输出、缓存读、缓存写、推理
  • 空数据:还没有带 usage 的会话
  • 失败:读不了本地 JSONL,可再扫一次

数字口径

只统计会话日志里的 assistant/message.usage(同 turn/step 后写覆盖前写)。

  • 新产生 = inputTokens + outputTokens + cacheWriteTokens
  • 缓存读、推理单独列表,不并进热力图主数字
  • 没有 usage 的旧会话不按字数估算

安装

进入这个插件目录后执行:

dsh plugin --profile web add .

也可以传绝对路径:

dsh plugin --profile web add /path/to/dsh_dashbord

这会:

  1. $DSH_HOME/profiles/web 用 pnpm 装上 dsh-token-usage
  2. 把它追加进 package.jsondsh.profile.bundles

装完重启 DSH。左下角设置上方会出现「用量」。

如果 dsh plugin addpnpm v11.12.0 is a broken release,那是 profile 的 packageManager 钉死了坏版本,把 $DSH_HOME/profiles/web/package.json 里的 pin 改成 pnpm@11.22.0(或更新的可用版本)后再跑同一条命令。这和插件包无关。

插件自带 cordis.patch.yml。若要覆盖配置,记得 整段重写 config

- insert:
    - id: dsh-token-usage
      name: dsh-token-usage
      config:
        days: 30
        maxFiles: 4000
        maxFileBytes: 33554432

开发

node --test test/*.test.js

Host 在没有 connection 的 headless profile 里不会注册 RPC;Web profile 会通过 /token-usagesummary 接口取数。