前言¶
DSH 的理念是「一切皆插件」,web 表面可以围绕现有宿主能力做扩展。使用 DSH 的开发者经常会同时配置多个 AI provider,需要频繁查看某个 key 还剩多少余额或额度;coding plan 还可能涉及 5 小时窗口、weekly pool 和 MCP monthly lane。
dsh-quota-panel 解决的是这个具体场景:在 dsh web 的产品 UI 右下角提供一个状态组件,把已配置 provider 的余额/额度集中显示出来。
这是什么¶
wenzetan/dsh-quota-panel 是一个面向 DeepSeek Harness(DSH)web surface 的 provider quota / balance widget。
它位于产品 UI 右下角,支持收起的 capsule 视图、展开的 card 视图和 settings panel。作者为 wenzetan,许可证为 MIT,版本号为 0.9.1-rc.1。
它自 v0.5 起是 dual-face 插件:宿主侧负责处理 provider 请求与凭证,浏览器侧通过 loopback-only RPC 通道渲染状态;组件运行在 shell.overlay 槽位,也就是右下角。
核心功能¶
自动发现 provider¶
该插件内置 provider catalog,包含 15 个 built-in providers。当某个 provider 的 key 在以下位置可解析时,对应行会自动出现:
$DSH_HOME/.credentials.yaml
.env
environment variables
也就是说,安装并重启 dsh web 后,已配置 key 的 provider 可以零配置出现在面板中。
移除 key 后,对应行会消失。
支持的 provider 类型¶
已核实的支持范围包括:
- DeepSeek
- OpenRouter
- SiliconFlow
- Moonshot
- StepFun
- xAI
- Zhipu GLM
- OpenCode Go
- ChatGPT subscription,Plus / Pro 通过 Codex login
- Volcengine Ark
- one-api / new-api style aggregators
- coding plans,包括 5-hour window、weekly pool 和 MCP monthly lane
状态显示¶
组件提供两种形态:
- 收起状态:minimal capsule,用独立的状态点和数值表示账户状态。
- 展开状态:完整 card,每个 provider 一行,包含状态点、名称、主数值、辅助信息,以及 usage 类 provider 的进度信息。
对 balance 行和 usage 行会做 per-account status grading。也就是说,不同账户或不同额度行可以分别显示状态,而不是整张卡片统一变色。
自动刷新¶
默认刷新间隔为 60 秒。
页面隐藏时会暂停刷新;刷新请求进行中时,重复点击不会触发并发请求。
设置面板¶
settings panel 支持以下本地设置:
- per-provider visibility
- refresh interval
- per-provider warn thresholds
- per-provider HTTP(S) proxy URL
- capsule display mode
- restore defaults
这些设置会立即生效,并持久化到浏览器 localStorage;已核实说明指出,它们不会被写入 profile,也不会上传。
代理支持¶
组件支持 per-row HTTP(S) proxy。对于无法从当前网络直连的 provider,可以为对应行配置代理地址。
已核实限制是:只接受 HTTP/HTTPS proxy,socks5 proxy 会被拒绝。
主题¶
组件主题由 Harness design tokens 驱动,跟随产品主题。它不单独携带一套固定配色。
安全边界¶
API keys 不会到达浏览器。浏览器侧只通过 loopback-only RPC 通道与宿主侧通信,接收的是 normalized views。
另外,该插件没有 npm dependencies,并且不需要 allowBuilds authorization。
安装与启用¶
已核实材料中没有给出官方安装命令,因此这里不补写安装命令。
可核实的包信息如下:
name: dsh-quota-panel
version: 0.9.1-rc.1
license: MIT
peerDependencies:
@deepseek-ai/cordis: ^4.0.1
react: *
文档中给出的启用流程是:
- 安装该插件。
- 重启
dsh web。 - 当 provider 的 key 在
$DSH_HOME/.credentials.yaml、.env或 environment variables 中可解析时,对应行自动出现。
典型用法¶
- 安装后重启
dsh web。已配置 key 的 provider 会自动出现在面板中,无需逐项手动添加。 - 删除某个 provider 的 key 后,对应行会消失。
- 在 settings panel 中调整 per-provider visibility、refresh interval、warn thresholds、capsule display mode 等本地设置。这些设置立即生效,并保存在浏览器
localStorage。 - 如果某个 provider 无法从当前网络直连,可以为其配置 HTTP(S) proxy URL。
- 如果缺少某个 provider,可以按 README 的建议提交 issue,提供 provider id 和 balance API URL。
适用场景与注意¶
适合:
- 使用 DSH web surface 的开发者。
- 已经配置一个或多个 provider API key,并需要频繁查看余额、额度、coding plan 窗口的用户。
- 需要在右下角快速查看 provider 状态,并希望减少手动打开 provider 控制台的场景。
不适合:
- 只暴露 usage/cost 查询、不暴露 remaining balance endpoint 的 provider。已核实说明中提到,OpenAI、Anthropic、Together、Groq、Mistral、Cohere、DashScope、Baichuan 目前尚未支持。
- 只能依赖 cookie 或 CLI 访问 quota 页面的 coding plan。已核实说明中提到,Qwen Token Plan、Xiaomi MiMo Token Plan 和 Qoder 目前不支持。
- 需要从 profile 插入 custom adapter 的场景。已核实说明指出,custom adapters cannot be plugged in from the profile。
- 需要把组件放到 sidebar、header 或 status bar 的场景。该组件限制在
shell.overlay槽位,即右下角。 - 需要 socks5 proxy 的场景。该组件只接受 HTTP/HTTPS proxy。
注意:
- 插件以当前 dsh 进程权限运行。安装前建议检查源码、许可证和 peerDependencies。
- 已核实许可证为 MIT。
- API keys 不会到达浏览器,浏览器只接收 normalized views。
- 本地设置保存在浏览器
localStorage,不会写入 profile 或上传。
结尾¶
dsh-quota-panel 是一个面向 DSH web surface 的轻量 provider quota / balance widget。它通过 built-in catalog 和 auto discovery 降低配置成本,用 capsule、card 和 settings panel 提供日常查看与调整入口,同时保持 API keys 不进入浏览器。
相关链接:
- 目录页:
https://www.skillhub.cn/plugins/wenzetan/dsh-quota-panel - GitHub:
https://github.com/wenzetan/dsh-quota-panel