Liu-ty/dsh-balance-display ↗★ 1
dsh-balance-display
DeepSeek API balance overlay for DeepSeek Harness
安装
npx -p @deepseek-ai/dsh dsh plugin --profile web add github:Liu-ty/dsh-balance-display说明文档
阅读完整 README ↗dsh-balance-display
English | 简体中文
dsh-balance-display 是一个标准可安装的 DeepSeek Harness bundle,在 shell.overlay 中显示可折叠的 DeepSeek API 账户余额面板。
Host 在每次刷新时通过 Harness credentials 服务解析 DEEPSEEK_API_KEY,并调用官方 GET https://api.deepseek.com/user/balance。浏览器只会收到经过校验的余额字段、可用状态、检查时间或稳定错误码。API Key 不会发送到浏览器,不会由本插件持久化,也不会进入日志、错误详情或测试快照。
功能
- 显示 CNY 和 USD 的总余额、赠送余额与充值余额
- 显示账户可用状态和最后刷新时间
- 支持折叠、手动刷新以及仅手动/1/5/15 分钟自动刷新
- 页面不可见时停止周期刷新,重新可见时立即刷新
- 使用 Harness 深浅色主题 token,提供 zh-CN/en-US 词典
- 明确显示无凭证、401、超时、网络、上游错误和异常响应
- 不保存历史余额,不生成虚构数据,不把本地 token 估算称为真实账单,也不建立供应商抽象
要求
- 使用当前 profile bundle 机制和 Web profile 的 DeepSeek Harness
- Node.js
^22.19.0 || >=24.0.0 - 如需真实余额,通过 Harness credentials 提供
DEEPSEEK_API_KEY
没有凭证时插件仍可加载,并明确显示未配置凭证。
安装
从本地 checkout 安装:
dsh plugin --profile web add F:\path\to\dsh-balance-display
dsh --profile web --dump-config
dsh --profile web
从预构建 Release tarball 安装:
dsh plugin --profile web add .\dsh-balance-display-0.1.0.tgz
从固定的 v0.1.0 源码 tag 安装:
dsh plugin --profile web add github:Liu-ty/dsh-balance-display#v0.1.0
Git 安装会取得源码并运行本包的 prepare 构建。pnpm 可能先拒绝执行,直到 profile 的 pnpm-workspace.yaml 明确包含:
allowBuilds:
dsh-balance-display: true
这个授权意味着允许包代码在安装时、在智能体沙箱之外于本机执行。授权前应审查源码并固定 tag 或 commit。Release tarball 已包含构建产物,不需要构建授权。
配置
bundle 插入一个 Host/Client row:
- id: balance-display
name: dsh-balance-display
inject: [credentials, webServer]
config:
requestTimeoutMs: 10000
如需修改超时,在 profile 或 home 的 cordis.patch.yml 中覆盖完整 row;值必须为正整数。自动刷新间隔和折叠状态是浏览器本地偏好,本插件不保存余额值。
安全模型
- Host 每次余额操作重新解析凭证,不缓存凭证。
- Authorization 只添加到发往 DeepSeek 的请求。
- DeepSeek 的非成功响应正文不会转发或记录。
- 成功响应按官方字段集校验,并缩减为用于显示的字段。
- Host 响应带有
Cache-Control: no-store。 - 插件不向模型添加输入,也不参与 token 计费估算。
开发
pnpm install
pnpm run typecheck
pnpm run test
pnpm run build
pnpm pack