前言¶
DSH 的 web profile 可以在对话界面里加载扩展组件。使用 OpenCode Go 订阅时,界面上不容易持续看到 5h 滚动、每周、每月三个用量窗口的剩余比例和重置时间,往往到窗口接近耗尽、请求被限流前才发现问题。
下面介绍 dsh-opencode-go-usage。它是一个 dsh bundle,在 DeepSeek Harness web GUI 的 composer dock,也就是输入框上方,显示 OpenCode Go 订阅用量。
这是什么¶
dsh-opencode-go-usage 由 v587d 维护,用于 DSH web profile。它的定位很具体:在对话界面中增加一个用量 chip,把 5h 滚动、每周、每月三个窗口的百分比和重置倒计时显示在输入框上方。
它不是 DSH 的核心组件,也不替代 OpenCode Go 的账户管理。它只在当前 DSH web 界面中提供用量查看、阈值提示和凭据配置入口。
核心功能¶
三个用量窗口¶
显示 5h 滚动、每周、每月三个窗口的百分比与重置倒计时。窗口接近上限时,可以提前看到剩余时间,而不是等请求被限流后才处理。
按阈值着色¶
显示状态按阈值着色:
- 正常
- 黄色警告:
≥80% - 红色错误:
≥90%或已限流
数据新鲜度¶
chip 上会显示最近一次成功抓取时间,格式为 upd HH:MM。这样可以看到数据是否仍然有效。
轮询与缓存¶
插件每 10s 轮询一次,切回标签页时会立即刷新。host 端有 300s 缓存,TTL 可配置;失败后有 60s 冷却,避免频繁请求。
Provider 感知¶
仅当会话当前模型走 opencode-go provider 时显示。切换到其它 provider 后会自动隐藏,切回后会恢复。
详情面板与手动刷新¶
点击 chip 可以展开详情面板。面板中可以看到各窗口的重置倒计时,并支持手动刷新。
内置 Set 凭据编辑器¶
详情面板左下角有 Set 入口,可以配置 workspace id 与 cookie。已设置的值以掩码形式展示,不需要直接查看完整凭据。
优雅降级¶
配置缺失或 HTTP 失败时,插件会进入降级状态。此时点击 chip 可以直接进入 Set 面板处理凭据配置。
Cookie 只在 host 侧¶
cookie 仅在 host 侧使用。浏览器只访问同源 JSON 端点,不把 cookie 发送到浏览器。
安装与启用¶
安装前需要满足:
- DeepSeek Harness
0.1.0-rc.6或更新,且使用 web profile PATH上有pnpm
先执行安装命令,把插件加入 web profile:
dsh plugin --profile web add github:v587d/dsh-opencode-go-usage
安装后重启 dsh web 并刷新页面。完成后,chip 会出现在输入框上方的 dock。
如果只想先验证插件层是否已经组合,可以运行:
dsh --profile web --dump-config
这一步用于检查当前 web profile 的插件组合,不需要先打开浏览器页面。
典型用法¶
在界面里配置凭据¶
1、点击输入框上方 dock 中的 chip。
2、展开详情面板。
3、点击左下角 Set。
4、输入 workspace id 与 cookie。
5、点击外部、按 Esc 或保存确认。
配置完成后立即生效。编辑器中的凭据值会以掩码形式展示,不会直接暴露完整字符串。
使用环境变量¶
也可以用环境变量提供凭据:
export OPENCODE_GO_COOKIE="<cookie>"
export OPENCODE_GO_WORKSPACE_ID="<workspace-id>"
环境变量优先级高于配置文件。
使用配置文件¶
也可以把凭据写入配置文件:
$DSH_HOME/ocgo-usage.json
默认路径是:
~/.dsh/ocgo-usage.json
写入后建议设置文件权限:
chmod 600 ~/.dsh/ocgo-usage.json
配置优先级为:环境变量 > 配置文件 > 内置默认。
可选覆盖项¶
可以通过以下环境变量覆盖部分行为:
OPENCODE_GO_BASE_URL
OPENCODE_GO_CACHE_TTL
OPENCODE_GO_TIMEOUT_MS
其中 OPENCODE_GO_CACHE_TTL 用于调整 host 端缓存 TTL。组合层配置中的 enabled 是总开关,默认值为 true。
适用场景与注意¶
这个插件适合在 DSH web profile 中使用 OpenCode Go 订阅的用户。如果你希望在输入框附近持续看到 5h、每周、每月用量,并希望在阈值升高前发现,它可以作为一个轻量入口。
需要注意的是,cookie 是 OpenCode Go 会话凭据。它是完整用户会话,可以访问账户内的所有 workspace、订阅与账单信息,应当像密码一样对待。
插件不记录 cookie,也不把 cookie 发送到浏览器。配置编辑器只把新值写入:
$DSH_HOME/ocgo-usage.json
如果 cookie 过期或被吊销,页面会 302 跳转到登录页,chip 会显示:
<err:http302>
重新登录后,可以通过 Set 面板更新 cookie。
安装前建议检查源码与许可证。该插件以当前 dsh 进程权限运行,许可证为 MIT。
相关链接¶
目录页:
https://www.skillhub.cn/plugins/v587d/dsh-opencode-go-usage
GitHub 仓库:
https://github.com/v587d/dsh-opencode-go-usage