前言¶
DeepSeek Harness (DSH) 的理念是“一切皆插件”。在本地或通过 API 开发智能体时,实时掌握 OpenCode Zen 余额和 Go 使用窗口是必要的。dsh-opencode-usage 是一个 Web GUI 插件,它将 OpenCode Zen 余额和 Go 使用窗口直接显示在 composer 工具行中,通过一个同心圆按钮即可查看 5 小时/每周/每月的滚动使用情况。
插件定位¶
- 插件名:
dsh-opencode-usage - 维护者:
zzh799 - 核心价值:在 DSH Web 界面中,通过 composer 工具行查看 OpenCode Zen 余额和 Go 使用窗口。
核心功能¶
插件主要提供以下能力:
- 环形图展示:在 composer 按钮上展示滚动 5 小时、每周、每月的使用窗口。
- 使用面板:点击按钮打开面板,显示窗口详情,支持手动刷新。
- 内置配置编辑:面板内提供配置编辑器,仅掩码显示 cookie 尾部,全量 cookie 不会离开主机。
- 智能 Cookie 规范化:支持粘贴原始 auth token、完整 header 或中间任意内容。
- 防刷机制:内置服务器端缓存(默认 5 分钟)和 60 秒故障冷却,避免频繁请求 opencode.ai。
- 可选峰值时钟:支持通过配置开启
showPeakClock显示。
安装与启用¶
插件需要 DSH 的 webServer 服务。
dsh plugin --profile web add /path/to/dsh-opencode-usage
配置说明¶
配置优先级为:环境变量 > 配置文件 ($DSH_HOME/ocgo-usage.json) > 默认值。
环境变量与配置项¶
| 环境变量 | 配置文件键 | 默认值 | 描述 |
|---|---|---|---|
OPENCODE_GO_COOKIE |
cookie |
— | OpenCode Go 会话 cookie (自动规范化) |
OPENCODE_GO_WORKSPACE_ID |
workspaceID |
— | OpenCode workspace id |
OPENCODE_GO_BASE_URL |
baseUrl |
https://opencode.ai |
Provider 基础 URL |
OPENCODE_GO_CACHE_TTL |
cacheTTL |
300 |
缓存时间,限制在 [60, 3600] 秒 |
OPENCODE_GO_TIMEOUT_MS |
timeoutMs |
15000 |
请求超时时间 |
| — | showPeakClock |
false |
是否显示峰值时钟 |
安全与权限¶
- Cookie 安全:Cookie 永远不会被记录或日志化。
- 文件权限:配置文件写入时使用
chmod 600。
API 使用¶
插件提供同源 JSON 接口供调用:
* GET /api/opencode-usage:获取缓存的使用视图。
* GET /api/opencode-usage/refresh:强制发起一次新的 provider 查询。
* GET /api/opencode-usage/config:获取掩码后的配置视图。
* POST /api/opencode-usage/config:写入 cookie / workspace / showPeakClock。写入成功后立即失效缓存。
适用场景与注意事项¶
- 该插件以当前 DSH 进程的权限运行,请确保在安装前检查源码与许可证。
- 插件依赖
webServer服务,若未启用 Web 界面,该插件无法工作。
结语¶
通过该插件,开发者可以在 DSH 的 Web 界面中直观地查看 OpenCode 资源消耗情况,无需切换页面或通过外部工具查询。更多细节请参考 GitHub 仓库。