dsh-token-usage:在 DSH Desktop 里看本机 Token 消耗

前言

在 DeepSeek Harness Desktop 里跑多模型、多会话时,Token 消耗分散在 Session 日志里,很难一眼看出「哪天用得多、哪个模型占大头、最近有没有连续在用」。社区插件 dsh-token-usage(维护者 SeyanaA)在客户端侧栏增加 Token 用量 入口,把 DSH 已有的 Session 日志折叠成本地面板,不联网、不上报、不改会话内容。

这是什么

dsh-token-usage 是面向 DeepSeek Harness Desktop 的客户端插件:左侧栏「新会话」下方新增 Token 用量,主面板提供热力消耗图、每日趋势折线图、模型消耗百分比环形图(按 provider 区分同名模型)。数据全部来自本机 ~/.dsh/sessions/... 的 Session 日志;统计与缓存均在本地完成,缓存为 $DSH_HOME/dsh-token-usage/cache.json,只含每日/每会话的 token 计数,不含消息正文。仓库:https://github.com/SeyanaA/dsh-token-usage;目录页:https://www.skillhub.cn/plugins/SeyanaA/dsh-token-usage。许可证 MIT,当前 package 版本 0.1.1。

环境要求

  • DeepSeek Harness Desktop ≥ 0.2.0-rc.1(依赖 sessionPersistence / sessionQuery / llm / webServer 等宿主服务与客户端 slots API);
  • 已在 macOS + DSH Desktop 0.2.1-rc.3(profile:desktop)上验证;
  • Node.js 无需单独安装(DSH 自带运行时,engines.node >= 22)。

核心功能

页面自上而下:5 张总览卡、Token 活动热力图、时间范围选择、每日 Token 趋势图、模型用量(环形图 + 列表),右下角刷新按钮与最近更新时间;深/浅色主题自适应。图表为手写 SVG/CSS,无第三方图表库。

模块 说明
总览卡 ×5 累计 Token、峰值 Token(单日最高)、最长聊天时长、当前连续天数、最长连续天数
Token 活动热力图 12 个完整自然月窗口;列对齐周一→周日;每日 / 每周 / 累计切换;悬停显示该格 tokens
每日 Token 趋势图 按模型分线;悬停显示日期、各模型 tokens 与合计;占比小于 1% 的模型不单独画线
时间范围 近 7 日 / 近 30 日,趋势图与模型占比随之切换
模型用量 环形占比 + 列表;悬停高亮对应段;同名模型按供应商追加后缀(如 DeepSeek V4.1 Flash · OpenCode)

统计口径(摘自 README):包含主会话、subagent、crew 子任务的模型调用;不包含标题生成、网页搜索等未写入主 agent assistant/message.usage 的辅助调用。最长聊天时长按相邻间隔 ≤ 10 分钟的连续活动块计算;模型身份由 provider + model 共同确定。

安装与启用

插件以 本地 bundle 形式安装到 DSH profile(默认 desktop)。安装后保留插件目录,不要删除或移动(profile 通过 link: 引用它)。

方式一:让 DSH Agent 安装(推荐)

  1. 把仓库放到本地固定目录(README 示例):
git clone https://github.com/SeyanaA/dsh-token-usage.git ~/dsh-token-usage
  1. 在 DeepSeek Harness 新建对话,对 Agent 说明(路径改为你本机绝对路径):

把 /Users/你的用户名/dsh-token-usage 作为本地插件安装到当前 profile。

Agent 会调用 plugin_manager 的 install_bundle,target 为该目录绝对路径。

  1. 若侧栏未立刻出现 Token 用量,完全退出并重新打开 DeepSeek Harness。

成功标志:左侧栏「新会话」下方出现 Token 用量,点开后可见统计卡与图表。

方式二:手动安装

  1. 将仓库或 Release 解压到固定目录,例如 ~/.dsh/local-plugins/dsh-token-usage。

  2. 编辑 ~/.dsh/profiles/desktop/package.json(其他 profile 替换 desktop):

{
  "dependencies": {
    "dsh-token-usage": "link:/Users/你的用户名/.dsh/local-plugins/dsh-token-usage"
  },
  "dsh": {
    "profile": {
      "bundles": [
        "dsh-token-usage"
      ]
    }
  }
}
  1. 在 profile 目录执行:
cd ~/.dsh/profiles/desktop
pnpm install

若无本机 pnpm,可用 DSH 自带 pnpm(macOS 路径示例,版本可能不同):

node "/Applications/DeepSeek Harness.app/Contents/Resources/runtime/primary-runtime/dependencies/pnpm/bin/pnpm.cjs" install
  1. 完全退出并重新打开 DeepSeek Harness。

方式三:从 Release 安装

  1. 在 Releases 下载 dsh-token-usage-0.1.0.zip(同页有 SHA256SUMS.txt);
  2. 解压到例如 ~/dsh-token-usage(目录内应直接有 package.json、index.js、client.js);
  3. 按方式一或方式二注册 bundle。

更新:在插件目录 git pull 后,让 Agent 再次 install_bundle 同一目录,或重启 DSH(Node 侧需重启;客户端页面部分支持热加载)。

卸载:Agent 调用 remove_bundle(target:dsh-token-usage);或手动删除 package.json 中对应 dependencies 与 dsh.profile.bundles 项,再 pnpm install 并重启 DSH。

典型用法

安装并重启后,从侧栏进入 Token 用量 即可浏览总览与图表,无需额外配置项。

  1. 用 时间范围(近 7 日 / 近 30 日)切换趋势图与模型占比区间。
  2. 在 Token 活动 卡片切换 每日 / 每周 / 累计,悬停热力格查看该格 tokens;跨月时窗口按自然月整体切换。
  3. 点击右下角 刷新 更新数据;正在进行的会话每次刷新会重新读取,已结束会话按 revision 增量缓存。

若数字全为 0:当前 profile 尚未产生模型对话,先聊一轮再打开面板。若面板空白或一直加载:确认安装目录未被移动,并重启 DSH 以加载宿主路由。

适用场景与注意

适合谁:需要在 DSH Desktop 本机查看 Token 趋势、模型占比与活动热力的开发者;关心数据是否出本机的用户(插件不发起网络请求)。

权限与安全:插件以当前 DSH 进程权限读取 Session 日志并写本地缓存。安装前应阅读仓库源码与 MIT 许可证;社区目录 skillhub.cn 为独立站点,与 DeepSeek / 幻方无官方从属关系。

开发与自测(可选):克隆仓库后在本目录运行 node test/run.mjs,无需额外依赖;CI 在 GitHub Actions 上跑同一命令。

结尾

dsh-token-usage 把 DSH 已记录的 Session 日志折成可读的 Token 面板:热力图看长期节奏,折线图看按模型分的日趋势,环形图看区间占比,且全程本地计算。进一步了解可访问目录页 https://www.skillhub.cn/plugins/SeyanaA/dsh-token-usage 与 GitHub https://github.com/SeyanaA/dsh-token-usage。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜