dsh-quota-windows:在 DSH 侧边栏集中查看各 Provider 额度与余额

前言

在 DeepSeek Harness(DSH)里同时配置多家 LLM Provider 时,用量窗口、充值余额往往分散在各家的控制台或 CLI 里。切换网页、对照重置时间,既打断开发节奏,也容易在额度触顶后才察觉。下面介绍社区插件 dsh-quota-windows:在 DSH 左侧栏增加「额度窗口」入口,对已在设置中添加且插件适配器支持的 Provider,在同一页展示订阅用量窗口与账户余额(只读拉取)。

这是什么

dsh-quota-windows(GitHub:LXD-8/dsh-quota-windows)由维护者 LXD-8 发布,归类为 客户端 插件。它在 Harness 左侧边栏注册「额度窗口 / Quota windows」项,背后是一页网格卡片:每张卡对应一个已添加且具备公开 usage 或 balance API 的 Provider 家族,展示各时间窗口的已用比例、严重程度色条、重置时间,以及余额类钱包信息。未提供公开用量/余额接口的 Provider(例如 README 中提到的 OpenAI、Google、本地模型服务等)不会出现在页面上。

插件以 Host 端聚合快照、Web 端渲染的方式工作;所有查询均为只读。它以当前 dsh 进程权限运行,安装前宜自行查看源码与 MIT 许可证。

核心功能

动态发现 Provider

发现逻辑是动态的:Host 读取实时 LLM 路由(llm.listProviders()),与内置适配器注册表匹配。在 Settings 里添加、且其 family 有对应适配器的 Provider 会自动出现,无需改插件代码。没有公开 usage 或 balance API 的 Provider 不会匹配。

README 中列出的支持情况如下(路由 id 与数据类型以资料为准):

Family Route ids 数据
OpenCode Go opencode-go, opencode-go* 5 小时 / 本周 / 本月 usage windows
Claude anthropic(或独立 Claude Code 凭据) 5 小时 / 本周,Opus/Sonnet weekly,extra usage
DeepSeek deepseek, deepseek-official, deepseek-account(或独立登录账户) 充值 + bonus 钱包
OpenRouter openrouter credit balance(总额减用量)
Moonshot / Kimi moonshotai, moonshotai-cn 可用额 + voucher 余额
Z.ai / GLM zai, zai-coding-cn Coding Plan 额度窗口(5h / 周 / 其他周期)
MiniMax minimax, minimax-cn Token Plan session 用量

凭据按 Provider 从 settings profile 的 apiKeyEnv(回退到常规的 <ROUTE>_API_KEY)经 ctx.credentials 解析;Claude 读取 Claude CLI token,DeepSeek 走账户服务,二者不强制要求对应 DSH 路由处于 live 状态。

页面交互与展示

每张订阅类卡片按窗口分行,显示已用百分比、带严重程度颜色的进度条和重置时间。余额类卡片显示可用金额及钱包明细。概览区「最紧窗口」与「下次重置」瓦片可点击:会滚动到对应源卡片并短暂高亮。

各源卡片使用维护者手写的品牌强调色表(BRAND_ACCENTS);未列入表的 id 会回退到稳定哈希色,新支持的 Provider 仍可有区分色而无需改代码。

后端与前端分工

  • index.js(Host):匹配 live 路由与 ADAPTERS,读取各匹配项;成功结果缓存 60 秒,错误缓存 15 秒;提供 GET /quota-windows/api/snapshot(?refresh=1 可绕过缓存)。
  • client.js(Web):注册 sidebar.panellist 与 main 面板;进入页面时重读快照,之后每分钟轮询;卡片等宽网格布局(数量为 3 的倍数时三列,否则两列)。页面级错误边界避免渲染崩溃整页空白,并向 GET /quota-windows/api/client-error 上报。

安装与启用

bundle 名称为 dsh-quota-windows。资料提供两种方式。

方式一:本地 link 依赖(需先取得仓库到本机绝对路径,再以 profile 引用;正文不展开 clone 步骤,按 README 将路径写入 profile):

"dsh-quota-windows": "link:/absolute/path/to/dsh-quota-windows"

在 profile 中选择 quota-windows bundle,下次加载后侧边栏入口出现。

方式二:CLI 安装(desktop profile):

dsh plugin --profile desktop add github:LXD-8/dsh-quota-windows

package.json 中当前版本为 1.16.1;许可证 MIT。

典型用法

  1. 按上一节完成安装并重新加载 DSH(desktop profile 使用 CLI 时以你的 profile 名为准)。
  2. 在 Harness Settings 中照常添加需要监控的 Provider 并配置凭据(apiKeyEnv 或各家约定方式)。
  3. 打开左侧栏「额度窗口」,查看自动出现的 Provider 卡片;需要立即刷新数据时,可请求带 ?refresh=1 的快照 API(由 Host 提供)。
  4. 若使用反向代理等非本机 Host,可在 profile 补丁中配置 allowedHosts(见下文配置示例)。

可选配置写在 Loader schema 校验的 row config 中,例如 profile patch:

- id: quota-windows
  config:
    cacheSeconds: 60
    opencodeBaseUrl: https://opencode.ai/zen/go/v1
    opencodeCredentialRef: OPENCODE_GO1_API_KEY
    claudeCredentialsPath: ~/.claude/.credentials.json
    # Hosts allowed in addition to loopback/IP/same-origin, for a reverse proxy.
    allowedHosts:
      - quota.example.com

适用场景与注意

适合谁:在 DSH 中并行使用多家 API、需要在一屏内对照各家用量窗口与余额、且所用家族已在 README 适配表中的开发者。

务必注意:

  • 插件随 当前 dsh 进程权限 读取凭据并访问各家 API;安装前请阅读仓库源码与许可证,勿在不可信环境盲目启用。
  • Claude token 只读、不刷新;过期后卡片会提示重新登录 Claude Code。
  • OpenCode Zen 的 credit balance 未在 API-key API 暴露,页面仅展示 Go 订阅窗口。
  • 无公开 usage/balance 端点的 family 有意不展示;若日后出现公开接口,增加适配器即可。
  • Provider 失败会本地化 HTTP 状态、超时、空响应等前缀,具体细节仍保留 Provider 原文。
  • README 说明测试命令:node --test tests/*.test.mjs(覆盖解析器及部分适配器的 stub HTTP)。

社区插件目录 SkillHub 上的 dsh-quota-windows 为独立生态站点,与 DeepSeek / 幻方无官方从属关系;源码与说明以 GitHub 仓库 为准。

结尾

dsh-quota-windows 把「已添加且 API 可读的 Provider」的订阅窗口与余额收到 DSH 同一页,减少在控制台与 Harness 之间的切换。若你的日常路由落在 README 所列 family 内,可按官方 CLI 或 link 方式装入 desktop profile,从侧边栏「额度窗口」开始使用。

  • 目录页:https://www.skillhub.cn/plugins/LXD-8/dsh-quota-windows
  • GitHub:https://github.com/LXD-8/dsh-quota-windows
羽毛球分组比赛记分
小程序二维码

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

小夜