iamfromchangsha/dsh-go-balance 预览 preview

iamfromchangsha/dsh-go-balance

OpenCode Go 订阅余额小组件,适用于 DeepSeek Harness Web:在编辑器工具行右端显示滚动/每周/每月剩余配额。

Project Overview项目介绍

This is a purpose-built plugin for the DeepSeek Harness (DSH) web interface, adding a small OpenCode Go subscription balance widget to the right of the input bar’s send button. The widget displays the remaining quota percentage for three different billing windows: rolling, weekly, and monthly. All data is pulled directly from the official OpenCode Zen usage API, so it matches the numbers shown on your OpenCode Go dashboard exactly, no estimates are used. To install the plugin, you can use the built-in DSH plugin manager, which supports installing from the official registry, the public GitHub repository, or a local development directory.

The widget is compact, fitting neatly in the existing UI layout without taking extra space or disrupting your workflow. When you hover over the widget, a tooltip pops up with extra details including total used percentage, the reset time for each quota window, and the last time the data was refreshed. If any quota drops below 30%, the widget changes color to yellow as a warning, and it turns red if the remaining quota drops below 15%. If a refresh request fails, the widget keeps the last valid snapshot and marks it as stale, and it will not render at all if you have not configured your API credentials.

The plugin stores your API key securely via DSH’s built-in credential service, so the key never leaves the host process and is never exposed to the browser. It includes multiple security hardening features, like concurrency deduplication to avoid spamming the OpenCode API, rate limiting for the plugin’s API endpoint, and scrubbing of sensitive data from logs. You must have an active OpenCode Go subscription and a configured API key to use this plugin, and it only works with the DSH web interface. The plugin is released under the open source MIT license, with no usage costs or restrictions beyond the terms of the license.

这是一个专为DeepSeek Harness(DSH)Web界面开发的原生插件,它在输入框工具栏右侧、发送按钮旁新增了一个OpenCode Go订阅余额小部件。该部件会显示滚动、每周、每月三个配额窗口的剩余百分比,数据直接来自OpenCode Zen用量接口,是和Go订阅仪表页同源的真实数值而非估算值。

面向使用DSH作为OpenCode客户端的Go订阅用户,该插件提供了多项实用功能。鼠标悬停在部件上可以查看已用百分比、各窗口重置时间和数据更新时间;任一窗口余额低于30%会变黄警示,低于15%变红提醒;刷新失败会保留上次快照,未配置凭据时不会渲染占位。

你可以通过DSH官方插件命令安装,也可以直接从GitHub仓库或本地开发目录进行安装。使用需要你拥有有效的OpenCode Go订阅,并且在DSH凭据服务中配置好OPENCODE_ZERO_API_KEY,插件仅支持DSH Web界面,采用MIT许可开源分发。

Pre-install check安装前体检Compatibility · Security兼容性 · 安全性 1 warning1 项注意
  • Only 2 stars - very few users, little community feedback星标只有 2,几乎没人在用,遇到问题缺少社区反馈
DSH walks through these 9 checksDSH 会逐条核对这 9 项

Compatibility兼容性

  • DSH, Node, OS and profile requirementsDSH 版本 / Node 版本 / 操作系统 / profile 是否满足要求
  • External dependencies and runtimes (Electron / Python / Docker, ...)外部依赖与运行时(Electron / Python / Docker 等)是否齐备
  • Conflicts with installed plugins: command names, skill / tool names, ports, duplicate MCP registration与已装插件是否冲突:命令名、skill / tool 重名、端口占用、重复 MCP 注册

Security安全性

  • Repo matches the facts registered here; archived or abandoned?仓库是否与页面登记一致,是否归档或长期停更
  • Safety of preinstall / install / postinstall and install.sh / setup.ps1preinstall / install / postinstall 与 install.sh、setup.ps1 是否安全
  • curl|bash, download-then-execute, obfuscation, unrelated domains → stop immediatelycurl|bash、下载即执行、混淆代码、无关域名 → 立刻停止
  • Typosquatting or unmaintained packages among the new dependencies新增依赖里有没有 typosquatting 或无人维护的包
  • Requested permissions vs. what the feature actually needs申请了哪些权限、是否超出功能所需(filesystem / network / shell / clipboard)
  • Any sudo / admin requirement, plus uninstall and rollback是否要求 sudo / 管理员权限,以及卸载与回滚方式

Anything uncertain must be marked unknown with a note on how to confirm it. This site's signal screen is a static snapshot, not a security audit.拿不准的必须标「未知」并说明要我怎么确认。本站的信号筛查是静态快照,不能替代安全审计。

Or use CLI install (for developers)或使用命令行安装(适合开发者)

CLI Install命令行安装

dsh plugin --profile web add dsh-go-balance

把 iamfromchangsha/dsh-go-balance 加入你的 DSH 配置(web profile)即可启用。

READMEREADME

dsh-go-balance

Awesome DSH Plugin

给 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 plugin --profile web add dsh-go-balance

然后重启 DSH(dsh web)。插件会自动加入 profile 的 bundle 层,无需其他配置。

也可以直接从 GitHub 仓库安装(例如镜像源尚未同步时):

dsh plugin --profile web add github:iamfromchangsha/dsh-go-balance

本地开发目录安装:

# 在插件仓库目录下执行(相对路径锚定到当前目录)
dsh plugin --profile web add file:./

凭据

插件通过 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)覆盖:

- id: go-balance
  config:
    intervalMs: 120000

原理

一个 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。
  • 错误脱敏与密钥安全 — 返回浏览器的错误只含 code(和可选的 HTTP status);DNS 失败等内部细节仅写入 host 日志,且日志中的密钥串一律替换为 [REDACTED]。密钥只经 Authorization: Bearer 发给 opencode.ai,仅存在于 host 进程内存,不落盘、不进日志、不过 /go-usage。
  • 路由防护 — DSH webServer 本身不强制鉴权("No TLS, auth, or origin policy"),默认只绑定回环地址即为边界;/go-usage 另拒绝非回环 Origin 的浏览器跨站读取(403),并带每地址 120 次/分钟的内存级速率限制(429)。快照只含配额百分比与重置时间,绝不含密钥或身份信息。
  • 范围校验 — percent 必须是 [0, 100] 内的有限数字,上游返回畸形值会丢弃整份快照并保留上次有效数据。

开发

node --check lib/index.js && node --check lib/client.js

lib/client.js 随仓库提交并随包发布,安装时无需构建。

已知限制

  • 需要有效的 OpenCode Go 订阅,且 DSH host 上配置了 OPENCODE_ZERO_API_KEY 凭据。
  • 仅支持 Web 界面(渲染的插槽属于 DSH Web UI)。
  • 快照是面向用户的账户额度参考,不是计费记录。

License

MIT

← 上一个 Prev dsh-plugin-template 下一个 Next dsh-system-monitor →