dsh-quota-board:在 Harness 侧栏集中查看各模型供应商额度与本机用量

前言

在 DeepSeek Harness 里同时配置多家模型供应商时,余额、套餐窗口和本机 token 消耗往往分散在不同后台或设置页。对话进行中要确认「还有没有额度」,通常要切出去查账单,或逐个打开供应商控制台。下面介绍社区插件 dsh-quota-board(维护者 Anixuil,分类为客户端插件):在侧栏底部、账号行上方增加入口,点开即可在同一浮窗里查看当前 profile 里已配置供应商的额度与本机用量,无需离开当前会话。

说明: 本文为第三方社区插件介绍。该项目与 DeepSeek 官方无隶属关系,也不属于官方插件市场。插件以当前 DSH 进程权限运行,安装前请自行查阅 GitHub 仓库 源码与 MIT 许可证。

这是什么

dsh-quota-board 是面向 DeepSeek Harness 桌面端的「模型供应商额度看板」。它把当前 profile 里所有已配置的模型供应商的余额、套餐额度,以及本机 token 用量集中展示;过期或不足时可在侧栏旁快速确认,而不必离开正在进行的对话。

供应商从哪里来

插件不直接读原始配置文件,也不猜测目录结构。Harness Loader 已将 profile 的 bundle 层、profile 层与 !!js 表达式合成完毕,插件读取已合成的行:

行 读到的东西
llm-pi-ai config.providers.<id>:displayName / api / baseURL / apiKeyEnv / models[]
llm-deepseek* 官方 DeepSeek 适配器的 baseURL / apiKeyEnv(默认 DEEPSEEK_API_KEY)
agent-default-model config.provider,用于标记「当前默认」供应商

因此在 Harness 里按原有方式在 profile 中增加 provider(改 llm-pi-ai 行)会立刻反映到看板,无需在插件里再登记一遍。插件配置里的 providers 字段仅用于补充「profile 里未声明的网关」,或对已发现条目做覆盖。

核心功能

内置 DeepSeek 与额外供应商

谁 怎么查额度
内置 DeepSeek(llm-deepseek 行) 登录后读 Harness 账号钱包(与「设置 → 账号与余额」同源);未登录时退回 GET {base}/user/balance
额外 其余全部(含火山引擎、中转站、自建网关) 通用探测器按需试探;探通后绑定并记住

登录 Harness 后,看板上的 DeepSeek 充值余额与赠金余额与设置页一致:插件调用宿主 deepseekAccount 服务(getState() 判断登录、getBalance() 取钱包)。钱包为充值与赠金相加,明细并排显示,负数标红。仅 api.deepseek.com / api.deepseek.ai 视为官方 DeepSeek;其他域名上的中转始终用自己的 API Key,不会误用账户余额。

密钥不落盘:各供应商的 apiKeyEnv 只是引用名,宿主按「凭证服务 → 启动环境 → 进程环境变量」解析,浏览器侧拿不到明文。

额度接口:通用探测与绑定

除 DeepSeek 与火山引擎有专用适配器外,其余走 generic 探测器,按顺序尝试常见余额路径(相对于 API 根,/v1 结尾会归一化):

/v1/usage  →  /user/balance  →  /v1/credits  →  /v1/dashboard/billing/usage  →  /usage  →  /api/usage

401/403 立即中止;404/405 继续下一项;单次超时则不再往下试。首次探通会把路径与响应类型写入:

~/.dsh/storages/quota-board/bindings.json

下次优先问绑定端点,失败再完整重探。要强制重探,删除对应键或在配置里用 fields.endpoint 钉死路径。

火山引擎使用账户 AK/SK 签名的 OpenAPI(Ark API Key 不能查账单)。命中跳过名单的供应商标记为 unsupported,卡片说明无法通过 API Key 查询账单。

设置页「额外供应商」上方会列出已发现的额外供应商(只读);需要覆盖时再点「覆盖」,在配置中生成条目。每条供应商可「测试连接」,用未保存的值先打一次请求。

本机 token 用量

不重放会话日志,直接读会话投影缓存:

~/.dsh/storages/session_projcache/sessions/<sessionId>.json

取 rows.tokenUsage.totals 与 rows.sessionStats,用 rows.modelSelection.lastUsed.provider 归因。该栏无需网络,断网可看;口径与供应商账单可能不一致(缓存计价、赠送额度等)。

看板交互

侧栏左下角、账号行上方有「额度看板」按钮;浮窗 portal 到 <body>,按按钮位置贴边展开。关闭方式:再点按钮、点浮窗外、或按 Esc。侧栏按钮默认显示「默认展示供应商」的名称与剩余额度(套餐窗口显示百分比,钱包显示金额);未配置时跟随模型默认供应商。

仅浮窗打开时按 refreshSeconds 轮询;关闭即停止。挂载时有一次安静首读,便于按钮在未展开时也有数字(宿主约 20 秒缓存)。

配置入口:浮窗右上角齿轮 → 设置 → 插件 → 额度看板。

安装与启用

桌面端:侧栏「插件」→「+ 添加插件」→ 在输入框填写下列之一 → 安装 → 立即启用 → 重启 Harness(bundle 类插件不热加载)。

输入 效果
github:Anixuil/dsh-quota-board 安装 GitHub main 当前代码;升级需卸载重装
git+https://github.com/Anixuil/dsh-quota-board.git#v0.1.0 固定在 tag v0.1.0
dsh-quota-board(发布到 npm 后) 走 npm 版本管理,可用 @0.1.0 固定版本

安装时出现 [WARN] Issues with peer dependencies found 可忽略:peerDependencies 指向 Harness 自身的 @deepseek-ai/*,未发布到 npm,与官方插件情况相同。

本地开发可在同一输入框填本目录绝对路径;pnpm 记为 link:,改 index.js / client.js 后重启 Harness 生效。link 与实体安装互斥,切换前需处理 profile node_modules 中的链接,避免 Windows 上 ERR_PNPM_EPERM。

典型用法

手动指定未识别的网关

在设置 → 插件 → 额度看板 →「额外供应商」中添加卡片(无需手写 JSON)。写入 profile 的 cordis.patch.yml 示例:

providers:
  - id: my-gw
    displayName: 我的网关
    baseURL: https://gw.example.com/v1
    apiKeyEnv: MY_GW_KEY
    fields:
      endpoint: /api/me/quota
      remaining: data.credit
      unit: data.currency
    authHeader: x-api-key
    authPrefix: ''

常用字段:adapter(generic / deepseek / volcengine / unsupported)、fields.endpoint / remaining / used / unit / scale、authHeader / authPrefix;火山条目另用 accessKeyEnv / secretKeyEnv 引用 AK/SK 凭证名。

常用配置项(均有默认值)

字段 默认 说明
providers [] 额外或覆盖供应商列表
defaultProvider '' 侧栏按钮显示哪家(空 = 跟随模型默认)
lowThreshold 5 金额余额低于此值标红
refreshSeconds 60 浮窗打开时轮询间隔(最小 10 秒)
usageDays 14 本机用量柱状图天数(3–60)
timeoutMs 10000 单供应商接口超时(最小 2000)
deepseekBaseURL '' 所有 DeepSeek 行未写 baseURL 时的兜底
skipHosts '' 不探测的域名片段(逗号分隔)

可用额度主色为 DeepSeek 品牌蓝 #4d6bfe;剩余 ≤30% 琥珀色,≤10% 红色。

适用场景与注意

适合: 在 Harness 中同时使用 DeepSeek 账号与多家 OpenAI 兼容网关、中转或火山等供应商,希望在对话旁快速核对余额、套餐与本机用量曲线的开发者。

注意:

  1. 插件请求各供应商账单接口时使用的是你配置的 API Key 或火山 AK/SK,请确认密钥权限与来源可信。
  2. OpenAI 官方无公开 /v1/usage;通用探测器会按 README 所述顺序回退,对不上的网关需用 fields 手动映射。
  3. 社区插件随 Harness 与上游 API 变化可能需要更新;固定版本可用 git+https://github.com/Anixuil/dsh-quota-board.git#v0.1.0 或后续 npm 版本号。

结尾

dsh-quota-board 把 profile 里已有的供应商发现逻辑、DeepSeek 账号钱包与本机会话用量投影接到侧栏一处入口,并用探测绑定减少重复试错。若你正在维护多供应商的 Harness profile,可先按上文安装命令启用,再在浮窗中核对默认展示供应商与轮询间隔是否符合习惯。

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

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

Xiaoye