前言¶
DSH 的插件思路是「一切皆插件」。如果你已经使用 OpenCode GO 订阅,希望在 DSH web 的会话里看到滚动 5 小时、每周、每月配额,dsh-opencode-go-usage 可以把这部分信息接到侧边栏和聊天命令中。
这是什么¶
dsh-opencode-go-usage 是 yumusb 维护的 DSH 插件,许可证为 MIT。它提供三件事:DSH web 侧边栏中的 OpenCode GO plan 配额小部件、同源 usage 代理,以及 /opencode-go 聊天命令。
它兼容 DSH 0.1.1-rc.2 和 0.1.2-alpha.2。
核心功能¶
1、侧边栏小部件固定在 DSH web sidebar 底部,使用 sidebar.footer.action slot,展示 rolling(5h)、weekly、monthly 三个用量条,并显示对应窗口重置的相对倒计时。
2、侧边栏折叠时,小部件收缩为紧凑百分比 badge。
3、/opencode-go 命令可以在任意会话中以文本形式打印同一组用量数字。
4、插件注册同源代理路由 GET /opencode-go/usage,由 host 携带 API key 转发到官方 GO gateway;API key 不进入浏览器。
5、host 侧对上游 usage 调用缓存 30s;浏览器端每 60s 轮询同一同源路由。
前置条件¶
- DSH 已安装,且
webprofile 至少启动过一次,~/.dsh/profiles/web存在。 - Node.js
>= 18(用于fetch)。 - 拥有 OpenCode GO 订阅及其 API key。
安装与启用¶
先安装到 web profile:
dsh plugin --profile web add dsh-opencode-go-usage
然后保存 GO API key 为 DSH credential。可写入 ~/.dsh/.credentials.yaml:
OPENCODE_GO_API_KEY: <你的 API key>
最后重启 dsh web,并在浏览器中强制刷新页面。
典型用法¶
小部件:展开侧边栏时读取三条进度条和重置倒计时;折叠侧边栏时看百分比 badge。
聊天命令:在任意会话中输入:
/opencode-go
会输出 rolling(5h)、weekly、monthly 三个窗口对应的文本用量。
配置项¶
| 配置项 | 默认值 | 说明 |
|---|---|---|
apiKeyEnv |
OPENCODE_GO_API_KEY |
API key 对应的 credential / 环境变量名 |
baseUrl |
https://opencode.ai/zen/go |
gateway base URL |
cacheMs |
30000 |
host 侧上游缓存 TTL |
适用场景与注意¶
适合已有 OpenCode GO 订阅、使用 DSH web 插件生态,并希望在侧边栏或会话中查看配额的开发者。
插件会以当前 dsh 进程权限运行,安装前建议先检查源码和 MIT 许可证。需要保持 Node.js >= 18、DSH web profile 可用,以及有效的 OpenCode GO API key。
相关链接¶
- 目录页:
https://www.skillhub.cn/plugins/yumusb/dsh-opencode-go-usage - GitHub:
https://github.com/yumusb/dsh-opencode-go-usage