yascitom/dsh-opencode-go-box1

dsh-opencode-go-usage

DeepSeek Harness plugin: query OpenCode Go subscription usage from the settings sidebar

AI 분석

提供 OpenCode Go 额度窗口监控、会话级 Token 消耗明细、缓存命中率统计及双语切换。适合使用 OpenCode Go 模型并需要精确监控用量的用户。

패키지
dsh-opencode-go-usage
버전
0.3.1
라이선스
MIT
최근 업데이트
2026. 8. 15.

설치

$npx -p @deepseek-ai/dsh dsh plugin --profile web add github:yascitom/dsh-opencode-go-box

dsh-opencode-go-usage

中文 | English

一个 DeepSeek Harness Web-GUI 插件,为接入 OpenCode Go 模型的用户提供完整用量观测:

  • 额度窗口:5 小时滚动 / 每周 / 每月 三个窗口的已用百分比、套餐参考限额和重置时间;
  • DSH 会话明细:DeepSeek Harness 中每个使用 opencode-go 模型的会话的 token 用量,并可下钻到每一次模型调用(turn/step 级);
  • 缓存统计:会话累计、单会话、单次调用三个层级都展示缓存读取(命中)/ 缓存写入,并计算缓存命中率(缓存读取占全部输入的比例);
  • 模型筛选:按模型分组筛选会话(chips),查看每个模型的用量与缓存情况,并附按模型汇总对比表;
  • 双语界面:内置中文 / English 两套文案,面板右上角可一键切换语言(与「设置 → 通用 → 语言」联动并持久化);
  • 底栏常驻挂件:输入框下方一行实时额度(30s 轮询),按阈值自动变色。

功能特性

  • 设置侧边栏新增 "OpenCode Go" 栏目(settings.section 贡献),内含「额度」「DSH 会话明细」两个标签页
  • Host 端 Typert Remote opencodeUsageusage / dshUsage / dshSessionMessages 三个方法
  • DSH 会话明细完全基于 DeepSeek Harness 自身的会话日志(每条 assistant/message 事件自带 token 记账),不依赖本机是否安装 OpenCode 客户端,任何 DSH 部署都能用
  • 缓存统计:cacheReadTokens(命中)/ cacheWriteTokens(写入)按会话、按调用展示;命中率 = 缓存读取 ÷(非缓存输入 + 缓存读取)
  • 模型筛选:会话按 source.model 分组,chips 一键筛选,筛选后累计卡片与列表同步收窄;全部模型时展示「按模型汇总」表(会话数 / 输入 / 缓存读取 / 缓存写入 / 输出 / 推理 / 命中率)
  • 底栏挂件(conversation.composer.dock 贡献):🟢 5h 22% · W 13% · M 13% · ↻ 2h13m(W=每周、M=每月、↻=重置倒计时,悬停显示完整文字),按 5 小时滚动窗口阈值变色(默认

`` 即接入模型时已存储的 OpenCode Go key(`sk-opencode-…`)。接口返回:

```json
{
  "usage": {
    "rolling": { "status": "ok", "percent": 9,  "resetsAt": "…" },
    "weekly":  { "status": "ok", "percent": 12, "resetsAt": "…" },
    "monthly": { "status": "ok", "percent": 6,  "resetsAt": "…" }
  }
}

percent 取值 0–100;resetsAt 为 ISO-8601 时间。该接口尚未出现在 OpenCode 的公开文档中。

目录结构

文件作用
index.jsHost 半部 —— OpencodeUsageGatewayTypertRemoteService,服务键 opencodeUsage
typert.host.js手写 Typert Host 清单,通过 exports["./typert"] 注册
client.jswindow.__ModuleLoader__.load 格式的浏览器 bundle —— 挂载 Remote、注册栏目与底栏挂件、渲染页面
cordis.patch.ymlBundle patch,插入插件行(id: opencode-go-usage
package.json双面声明:main + exports["./client"] + exports["./typert"] + dsh.client + dsh.bundle

已知限制

  • 用量接口未公开文档,可能变更;解析做了防御性处理,非 200 响应会以友好状态提示而非崩溃。
  • 限额($12 / $30 / $60)仅作展示参考,并非接口返回内容;它们随 OpenCode Go 套餐而定,可能漂移。
  • DSH 会话明细统计的是 DSH 会话日志中的 token 记账(不含花费金额),只覆盖 DeepSeek Harness 内的对话。

License

MIT

配置

Host 端可调项位于插件行(id: opencode-go-usage);在 $DSH_HOME/profiles/web/cordis.patch.yml 中覆盖:

- id: opencode-go-usage
  config:
    baseUrl: https://opencode.ai/zen/go/v1/usage   # 默认值
    timeoutMs: 15000                                # 默认值
    warnPercent: 60                                 # 默认值:≥60% 变橙
    dangerPercent: 85                               # 默认值:≥85% 变红
    maxSessions: 30                                 # 默认值:DSH 明细最多扫描的会话数
默认值含义
baseUrlhttps://opencode.ai/zen/go/v1/usage用量查询接口地址。
timeoutMs15000请求超时时间(毫秒)。
warnPercent605 小时滚动窗口达到该百分比后挂件变橙。
dangerPercent855 小时滚动窗口达到该百分比后挂件变红。
maxSessions30DSH 会话明细扫描的最近会话数上限。