dsh-opencode-go-usage:在 DSH Web GUI 右下角实时显示 OpenCode Go 订阅用量

前言

如果你在 DSH 里使用 OpenCode Go 的订阅跑任务,滚动、周、月三档用量和各自的重置时间分散在服务端接口里。想确认还剩多少额度、什么时候重置,就得中断手头的工作去另外查。

dsh-opencode-go-usage 把这块信息做成一个悬浮小部件,常驻 DSH Web GUI 右下角,每 60 秒刷新一次,让你不用离开当前页面就能掌握用量。

这是什么

dsh-opencode-go-usage 是由 kkishapppy 维护的一个 DSH Web 插件,当前版本 0.1.0,MIT 协议。它的定位一句话可以说清:在 DSH Web GUI 右下角实时显示 OpenCode Go 订阅的滚动/周/月用量百分比与重置倒计时。

它分服务端和浏览器两个部分:服务端负责代理用量接口并保管 API key,浏览器部分负责渲染小部件。

核心功能

已实现的能力如下:

  • 右下角悬浮胶囊显示三档用量与重置倒计时,形如 ⓖ 滚动 0% · 周 2% (2天13时) · 月 1% (30天18时)
  • 每 60 秒自动刷新,窗口切回前台时立即刷新
  • 样式跟随 DSH 主题,基于 --dsw-alias-* token,深浅主题和皮肤自动适配
  • API key 只存在服务端(经 dsh 凭据服务解析),不落浏览器

安装与启用

安装只需要一条命令:

dsh plugin --profile web add dsh-opencode-go-usage

然后在 profiles/<profile>/cordis.patch.yml 中加入配置:

- id: opencode-go-usage
  config:
    apiKeyEnv: OPENCODE_GO_API_KEY   # 凭据名(默认 OPENCODE_GO_API_KEY)
    cacheMs: 60000                   # 服务端代理缓存毫秒

两个配置项的含义:

1、apiKeyEnv 指定凭据名,默认为 OPENCODE_GO_API_KEY。key 通过 dsh 凭据服务解析,可以在 .credentials.yaml 或 GUI Models 页配置,与 llm-pi-ai 同源。

2、cacheMs 控制服务端代理的缓存时长,默认 60000 毫秒。

工作原理

插件的数据流分两段:

1、服务端代理。插件在服务端请求 GET https://opencode.ai/zen/go/v1/usage(Bearer sk- 认证,OpenAI 兼容端点),并把结果暴露为 /plugins/dsh-opencode-go-usage/usage,带 60 秒缓存。API key 只在服务端出现,浏览器端拿不到。

2、浏览器渲染。小部件挂载在 document.body 顶层,使用 position: fixed 定位,不受容器 transform 或 backdrop-filter 的影响,保证始终显示在右下角。

开发与构建

如果要自行构建:

npm i
npx -y tsdown@0.22.2 --config ./tsdown.config.ts

改动的生效方式不同:

1、服务端改动需要重启 DSH。

2、client 改动硬刷新页面即可生效。

依赖方面,package.json 标注 private: true,peerDependencies 为 cordis ^4.0.0-rc.7react ^18.2.0;client inject 依赖 @deepseek-ai/dsh-client-runtime@deepseek-ai/dsh-client-ui-slots,platform 为 web。

适用场景与注意

这个插件适合通过 OpenCode Go 订阅使用 DSH、需要随时掌握用量与重置时间的开发者。如果你只在偶发场景下调用,60 秒一次的常驻显示可能不是必需的。

安装前注意:插件以当前 dsh 进程权限运行,API key 会经 dsh 凭据服务读取。建议安装前检查源码与许可证,确认无误再启用。

结尾

dsh-opencode-go-usage 解决的问题很具体:把 OpenCode Go 订阅的用量和重置时间放到眼前,不用额外操作。如果你正好有这个需求,可以试试。

  • GitHub:https://github.com/kkishapppy/dsh-opencode-go-usage
  • 社区目录页:https://www.skillhub.cn/plugins/kkishapppy/dsh-opencode-go-usage
羽毛球分组比赛记分
小程序二维码

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

小夜