dsh-token-monitor:DSH 悬浮余额与对话 Token / 花费监控

前言

在 DeepSeek Harness(DSH)里跑长对话、多轮工具调用时,token 会悄悄累上去,账户余额和「这一会话到底花了多少」往往要另开页面或靠感觉估。社区插件 dsh-token-monitor(维护者 Ta9y)把这三件事收进主界面:贴在窗口右缘的窄竖条,悬停展开卡片,显示充值钱包余额、当前对话累计 token,以及按 DeepSeek 官方价目估算的本次对话花费。下面介绍它做什么、怎么装、怎么配,以及估算口径和已知限制。

这是什么

dsh-token-monitor 是标准 DSH bundle:host 半(index.js)负责读余额、累加 usage、价目抓取与 HTTP 路由;client 半(client.js)把 ui.js 注入页面。简介为「Floating token & cost monitor for DeepSeek Harness」。分类上属于模型推理相关能力;仓库当前约 1 个 GitHub star,许可证 MIT,package.json 版本 1.0.0。README 注明除一行说明外,插件主体由 DeepSeek Harness 生成。

界面与交互

竖条贴在窗口右边缘,可上下拖动,位置按视口比例记在浏览器 localStorage;浮窗与竖条垂直对齐。悬停约 320ms 才展开明细;鼠标停在标题栏「×」那一排时不展开,避免误触。切换会话会立即刷新(识别 DOM 选中态,宿主按标题或 id 反查)。界面语言跟随 DSH 应用(简体中文 / English)。

示意(来自 README):

┌──────────────────────┐ ┌──┐
│ ● 你的对话标题     × │ │¥ │
│ 余额        ¥25.87   │ │25│
│ 本对话     ≈¥0.42 25.4M│ │.8│
└──────────────────────┘ └──┘
        悬停后展开明细 ↑

核心功能

余额

通过 DSH 账号服务读取充值钱包(ctx.deepseekAccount.getBalance()),悬停可看赠送余额。默认每 60 秒查询一次,可在配置里改 balanceSeconds。

本对话 Token 消耗

对当前会话里每次模型调用的 usage 做累加。只统计主会话,不含子任务(subagent)。会话须是 Host 内存中的 live session;冷会话显示 —。

本次对话花费(估算)

按 DeepSeek 官方价目页 估算,分模型、分高峰 / 空闲时段。单位:元 / 百万 token。高峰为北京时间工作日 9:00–12:00、14:00–18:00,其余时段(含周末)按半价档计价;法定节假日未单独处理,结果仅为估算,不是账单金额。

计价要点:

  • 模型从会话的 requestContext() 读取;未知模型回落到 deepseek-flash。
  • 每次 usage 按调用发生时刻归入高峰桶或空闲桶,各用对应单价(含 cache hit / cache miss / output)。
  • Search / Fetch:统计 web_search / web_fetch 调用次数,按 5 元/千次 计价;官方说明 2026-11-01 00:00 前不计费,插件用配置项 searchBillingFrom 按日期决定是否计入。

价格自动更新

autoPrices: true 时,每月从官方价目页抓取一次,缓存 30 天,写入 prices.auto.json(含 fetchedAt);抓失败则继续用旧值。也可关闭自动抓取,仅使用 config.json 里手写的 prices。

安装与启用

插件同时带 host 与 client;安装后需重启一次 DSH 进程(host 半走 ESM 缓存,重载插件不会重新执行 host)。之后改 ui.js 或 config.json 刷新页面即可。

命令里的 <profile> 换成目标 profile 名,桌面版一般为 desktop。

从 GitHub 安装(README 推荐的一键方式)

dsh plugin --profile <profile> add github:Ta9y/dsh-token-monitor

图形界面

设置 → 插件 → 安装,粘贴 github:Ta9y/dsh-token-monitor。

npm(尚未可用)

README 写明包尚未发布到 npm,dsh plugin --profile <profile> add dsh-token-monitor 目前会 404,待发布后再用。

本地开发、手动 pnpm add file:... 等方式见仓库 README,本文不展开。

配置

插件目录下的 config.json 改完刷新页面生效,无需重启 DSH:

{
  "pollSeconds": 10,
  "balanceSeconds": 60,
  "autoPrices": true,
  "searchPer1000": 5,
  "fetchPer1000": 5,
  "searchBillingFrom": "2026-11-01",
  "prices": {
    "deepseek-flash": {
      "offpeak": { "cacheHit": 0.02, "cacheMiss": 1, "output": 4 },
      "peak":    { "cacheHit": 0.04, "cacheMiss": 2, "output": 8 }
    },
    "deepseek-v4-pro": {
      "offpeak": { "cacheHit": 0.15, "cacheMiss": 4.5, "output": 13.5 },
      "peak":    { "cacheHit": 0.3,  "cacheMiss": 9,   "output": 27 }
    }
  }
}

pollSeconds 控制页面轮询间隔;searchPer1000 / fetchPer1000 为 Search/Fetch 单价(元/千次)。

典型用法

安装并重启 DSH 后,打开桌面端或 Web 宿主界面,右侧会出现竖条。日常无需额外命令:

  1. 看竖条上的余额缩写与本对话 token 缩写。
  2. 悬停展开卡片,查看明细花费与分模型 breakdown(若有)。
  3. 切换左侧会话列表中的对话,监控条跟随当前选中会话更新。

若估算与心理预期差很多,先核对是否在高峰时段大量调用、是否含大量 web_search/web_fetch,以及是否为主会话(子任务不计入)。

隐私与本地文件

插件不读取登录令牌、不碰 API Key;余额仅经 DSH 账号接口。不向第三方发请求,出站仅为每月抓取官方价目页。数据在本机内存与 localStorage(竖条位置)。可能写入的文件包括:debug.log(可删)、token.txt(页面随机令牌)、prices.auto.json(价格缓存)。

适用场景与注意

适合:在 DSH 里长时间对话、需要一眼看到余额和当前会话 token/花费估算的开发者;希望价目随官网更新、又愿意接受「高峰/节假日简化规则」带来的误差。

环境与兼容:

  • 需要 DSH 0.2.x(@deepseek-ai/dsh-base + dsh-web-app)。
  • 桌面端经 dsh.client 注入;dsh web 经 index 注入。
  • README 写明目前仅在 Windows 的 desktop profile 上实测。

安全与信任:插件以当前 DSH 进程权限运行,安装前建议阅读 GitHub 源码 与 MIT 许可证。

DSH 生态强调「一切皆插件」;SkillHub 目录页 是社区收录,与 DeepSeek / 幻方无官方从属关系。

结尾

dsh-token-monitor 把余额、会话 token 和按官方价目估算的花费放进不挡内容的悬浮条,并支持拖动、语言跟随和按月抓价。若你在 Harness 里做模型推理相关开发、又希望成本可见,可按上文命令安装,记得重启 DSH 一次。

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

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

小夜