DSH Hub
dsh-ocgo-usage cover

v587d/dsh-opencode-go-usage

dsh-ocgo-usage

UIWeb UI8 GitHub stars· updated 2026-08-19

A DeepSeek Harness (dsh) bundle that shows OpenCode Go subscription usage in the Web GUI's composer dock — the same seat as the built-in conversation stats line.

Install

npx @deepseek-ai/dsh plugin --profile web add <spec>`

Restart `dsh web` after install. Bundle APIs can change during the developer preview.

README badge

dsh-ocgo-usage DSH Hub badge
[![DSH Hub](https://dshhub.dev/badge/v587d-dsh-opencode-go-usage.svg)](https://dshhub.dev/plugins/v587d-dsh-opencode-go-usage)

Paste this into your README. The star count updates with every catalog sync.

From the README

Excerpt from v587d/dsh-opencode-go-usage, cleaned of badges and images.

dsh-opencode-go-usage

English | 中文

一个 DeepSeek Harness (dsh) bundle,在 Web 界面的输入框上方 dock(与内置 token 统计同位置)显示 OpenCode Go 订阅用量。

它是 pi-ocgo-usage(Pi 插件)的 Web 对应物:三个用量窗口(5h 滚动 / 每周 / 每月)的百分比与重置倒计时,按阈值变色,让你在窗口耗尽、请求被限流之前就发现。

OpenCode Go: 5h 0% (1h 23m) · wk 65% (2d 20h) · mo 83% (6d 21h) · upd 20:15

特性

  • 三个窗口 —— 5h 滚动 / 每周 / 每月 的百分比 + 重置倒计时
  • 颜色阈值 —— 正常 → 黄色警告(≥80%)→ 红色错误(≥90% 或已限流)
  • 数据新鲜度 —— upd HH:MM 显示最近一次成功抓取时间
  • 轻量轮询 —— 每 10s 轮询(切回标签页立即刷新);host 端 300s 缓存(TTL 可配)+ 60s 失败冷却,不会频繁打扰 opencode.ai
  • Provider 感知 —— 仅当会话当前模型走 opencode-go provider 时显示;每次轮询读取内存中的实时模型选择(session.models,毫秒级),切到 DeepSeek 官方等其它 provider 后一个轮询周期内自动隐藏,切回自动恢复(与 pi-ocgo-usage 行为一致)
  • 点击展开 —— 详情面板显示每个窗口的重置倒计时,左下角 Set 可配置凭据,右侧 refresh upd HH:MM 手动刷新
  • 内置凭据编辑器 —— 无需碰终端:Set 面板直接修改 workspace id 与 cookie(输入框以 •••• + 末尾 4 位显示,点击外部 / Esc / 保存确认写入)
  • 优雅降级 —— 配置缺失显示 <err:noconfig>,HTTP 失败显示 <err:httpXXX>;出错时点击 chip 直接进入 Set 面板
  • Cookie 只在 host 侧 —— 浏览器只访问同源 /api/ocgo-usage JSON 端点,cookie 永不进入页面

⚠️ 需要 OpenCode Go 会话 cookie。 该 cookie 是完整用户会话(不是 API key),可访问你 OpenCode 账户的全部内容。请像对待密码一样对待它——见 配置

环境要求

  • DeepSeek Harness 0.1.0-rc.6 或更新(web profile)
  • PATH 上有 pnpm(dsh plugin 需要)

安装

这是一个标准的 dsh bundlepackage.json 声明了 dsh.bundle,通过 dsh plugin --profile web add <spec> 安装(pnpm 转发器),自动加入 profile 的 dsh.profile.bundles。仓库内置预构建的 lib/ 产物,安装无需任何构建步骤或构建权限——遵循官方 publish 指南

从 GitHub 安装(推荐)

dsh plugin --profile web add github:v587d/dsh-opencode-go-usage

因为 lib/ 已提交到仓库,pnpm 直接安装构建好的包,不会要求构建脚本授权。

从 npm 安装(发布后)

dsh plugin --profile web add dsh-ocgo-usage

关于包名: 仓库名为 dsh-opencode-go-usage,但 npm 上同名包已被他人抢先占用(一个功能类似的第三方插件),因此 npm 发布名定为 dsh-ocgo-usage。GitHub 安装(推荐)不受影响:dsh plugin --profile web add github:v587d/dsh-opencode-go-usage

从 tarball 安装

pnpm pack            # 在本仓库内 → dsh-ocgo-usage-0.1.0.tgz
dsh plugin --profile web add ./dsh-ocgo-usage-0.1.0.tgz

本地开发安装

git clone https://github.com/v587d/dsh-opencode-go-usage.git
cd dsh-opencode-go-usage
pnpm install
pnpm run build
dsh plugin --profile web add link:$(pwd)

重启 dsh web 并刷新页面,chip 出现在输入框上方的 dock。不启动即可验证插件层已组合:

dsh --profile web --dump-config   # 应显示 "# == dsh-ocgo-usage" 层

配置

方式一:界面内 Set 面板(最简单)

点击 chip 展开详情 → 左下角 Set → 输入 workspace id 与 cookie(已设置的值以 •••• + 末尾 4 位显示,聚焦即可输入新值)→ 点击外部 / Esc / 保存按钮确认,立即生效。

方式二:环境变量(与 pi-ocgo-usage 同名)

export OPENCODE_GO_COOKIE="auth=Fe26.2*...; oc_locale=en"
export OPENCODE_GO_WORKSPACE_ID="wrk_01XXXXXXXXXXXXXXXXXXXXXXXX"

方式三:配置文件

写入 $DSH_HOME/ocgo-usage.json(默认 ~/.dsh/ocgo-usage.json):

{
  "cookie": "auth=Fe26.2*...; oc_locale=en",
  "workspaceID": "wrk_01XXXXXXXXXXXXXXXXXXXXXXXX"
}
chmod 600 ~/.dsh/ocgo-usage.json

优先级:环境变量 > 配置文件 > 内置默认。

可选覆盖项

环境变量默认值说明
OPENCODE_GO_BASE_URLhttps://opencode.aiAPI 基础地址
OPENCODE_GO_CACHE_TTL300host 缓存秒数,范围 60–3600
OPENCODE_GO_TIMEOUT_MS10000HTTP 超时

组合层配置(~/.dsh/profiles/web/cordis.patch.yml):

- id: ocgo-usage
  config:
    enabled: false    # 总开关,默认 true

Related plugins