iamfromchangsha/dsh-go-balance
iamfromchangsha★ 0JavaScriptLast synced: 2026-08-16
OpenCode Go subscription balance widget for DeepSeek Harness Web: rolling/weekly/monthly quota remaining at the right end of the composer tool row
README excerpt
dsh-go-balance 给 DeepSeek Harness(DSH)Web 界面加一个 OpenCode Go 订阅余额 小部件:在输入框工具行右侧(发送按钮旁)显示滚动 / 每周 / 每月三个配额窗口的 剩余百分比 ,数据直接来自 OpenCode Zen 用量接口(Go 订阅仪表页同源),不是估算值。 English 功能 - 真实余额,非估算 — 用您的 Go API 密钥轮询 https://opencode.ai/zen/go/v1/usage ,渲染与 Go 仪表页完全一致的数字。 - 紧凑胶囊 — Go 96% · 94% · 97% (滚动 / 每周 / 每月剩余),位于发送按钮右侧。 - 悬停明细 — 已用百分比、各窗口重置时间、数据更新时间。 - 警示配色 — 任一窗口剩余低于 30% 变黄、低于 15% 变红。 - 容错 — 刷新失败保留上次快照并淡化标记;未配置凭据或尚无数据时不渲染。 - 凭据安全 — API 密钥运行时经 DSH 凭据服务解析( OPENCODE ZERO API KEY ),只留在 host 进程内;本仓库不含任何密钥,也不会下发到浏览器。 截图 安装 然后重启 DSH( dsh web )。插件会自动加入 profile 的 bundle 层,无需其他配置。 也可以直接从 GitHub 仓库安装(例如镜像源尚未同步时): 本地开发目录安装: 凭据 插件通过 DSH 凭据服务读取 OPENCODE ZERO API KEY ( $DSH HOME/.credentials.yaml 或进程环境变量,即您 Go 订阅的 API 密钥),每次刷新时在 host 进程内解析。 配置 bundle 行暴露一个可选键: 键 默认值 含义 intervalMs 60000 host 轮询 OpenCode Zen 用量接口的间隔(毫秒)。 在 profile 补丁层( $DSH HOME/profiles/web/cordis.patch.yml )覆盖: 原理 一个 npm 包承载插件的两个半边: - 节点半边 ( lib/index.js )— goUsage 服务:经 ctx.credentials 解析 OPENCODE ZERO API KEY ,定时轮询 Zen 用量接口(请求发现缓存超过 30 秒也会顺手刷新),校验响应结构后在 GET /go-usage 提供快照。 - 浏览器半边 ( lib/client.js )— 注册进 conversation.input.right 插槽(输入框工具行右端),每 60 秒以及标签页重新可见时拉取 /go-usage 。 安全与健壮性 - 并发去重 — 刷新调用共享同一个在途 Promise,定时器与懒刷新永远不会并发打到上游 API。 - 错误脱敏 — 返回…
View full README on GitHub →