DeepSHPlugins
dsh-plugin-hub#packages/dsh-opencode-usage 项目预览
GITHUB / COMMUNITY PROJECT

dsh-plugin-hub#packages/dsh-opencode-usage

安全与运维TypeScriptMIT

OpenCode Go 套餐用量悬浮框:三窗口(rolling/weekly/monthly)消耗百分比常驻展示,展开为迷你面积图;后台采样官方 /v1/usage 接口,零本地计算。

15 Starswingsky-1 更新时间 2026-09-10
访问 GitHub 仓库
dsh-plugin-hub#packages/dsh-opencode-usage 项目预览

项目介绍

中文

OpenCode Go 套餐用量悬浮框:三窗口(rolling/weekly/monthly)消耗百分比常驻展示,展开为迷你面积图;后台采样官方 /v1/usage 接口,零本地计算。

English

OpenCode Go plan usage floating pill: three-window consumption percentages (rolling/weekly/monthly) with mini area charts, backed by background sampling against the official /v1/usage API.

项目信息与收录信号

快照 2026-09-11
作者 / 组织
wingsky-1
仓库
wingsky-1/dsh-plugin-hub#packages/dsh-opencode-usage
GitHub Stars
15
Forks
6
开发语言
TypeScript
许可证
MIT
最近推送
2026-09-10
Manifest
数据中检测到声明

公开仓库不自动等于可商用;许可证与当前兼容性以原项目文档为准。Manifest 和数据评分不构成安装安全认证。

数据评分

82/ 100
维护活跃
100
文档与实用信息
85
生态关注度
54
安装便捷信号
80
项目声明信号
100

近 1 天仍在更新;README 含完整安装与使用说明。

评分来自已有数据快照的五维模型,仅作浏览参考,不是实际使用评测或安全检测结论。

安装与使用

所有项目资料与许可均以对应 GitHub 仓库为准。

dsh plugin --profile web add @wingsky-1/dsh-opencode-usage

复制命令不会自动执行。请先阅读仓库文档,确认环境要求与许可证。

项目截图

仓库 README

GitHub 原文

已保存的仓库文档快照;文档抓取时间未记录,可能与上方目录介绍处于不同版本。安装前请核对当前仓库说明。

@wingsky-1/dsh-opencode-usage

npm GitHub Releases

DSH(DeepSeek Harness)Web GUI 插件:OpenCode Go 套餐用量悬浮框 + 三窗口迷你图。

聊天界面右上角常驻悬浮胶囊,实时显示 OpenCode Go 套餐三窗口消耗百分比 (颜色随消耗程度变化:>80% 黄、>95% 红),点击展开详情面板:

  • 三张迷你图卡片(rolling 5 小时滚动 / weekly / monthly),各窗口独立自适应

y 轴与 x 轴时间刻度、100% 配额参考虚线、重置标记线(按 resetsAt 反推)

  • 后台采样保历史连续(浏览器关闭也持续),数据来自官方 /v1/usage 接口

(权威数据,零本地计算)

安装

前提:已安装 DeepSeek Harness 且 dsh web 可正常启动(未全局安装 dsh 见下方「未全局安装 dsh」)。

安装插件(add)

dsh plugin --profile web add @wingsky-1/dsh-opencode-usage

卸载插件(remove)

dsh plugin --profile web remove @wingsky-1/dsh-opencode-usage

更新插件(update)

dsh plugin --profile web update @wingsky-1/dsh-opencode-usage
安装 / 卸载 / 更新后都需重启一次 dsh web(bundle 层只在启动时组合)生效。

指定版本号(@version)

省略 @版本号 即安装默认 latest(推荐)。仅当 registry 尚未同步到最新、或最新版在你的环境有问题时,在包名后追加 @版本号:

dsh plugin --profile web add @wingsky-1/dsh-opencode-usage@<版本号>

未全局安装 dsh

若本机没有全局 dsh 命令,用 npx 临时拉起(底层调用 pnpm,仍需本机装好 pnpm 与 Node.js):

npx @deepseek-ai/dsh plugin --profile web add @wingsky-1/dsh-opencode-usage
npx @deepseek-ai/dsh plugin --profile web remove @wingsky-1/dsh-opencode-usage
npx @deepseek-ai/dsh plugin --profile web update @wingsky-1/dsh-opencode-usage

数据源

插件直接调用 OpenCode Go 官方用量接口:

GET https://opencode.ai/zen/go/v1/usage
Authorization: Bearer <OPENCODE_GO_API_KEY>

响应带 30 秒 TTL 缓存(可配置),避免高频请求。

API Key 解析顺序

  1. 插件配置 config.apiKey(显式指定,可选)
  2. 环境变量 OPENCODE_GO_API_KEY
  3. DSH 凭据文件 <DSH_HOME>/.credentials.yaml(DSH_HOME 优先,默认 ~/.dsh)

中的 OPENCODE_GO_API_KEY

  1. OpenCode 自身 ~/.local/share/opencode/auth.json 的 opencode-go

(回退 opencode)条目

配置

键默认值含义
enabledtrue插件开关
baseUrlhttps://opencode.ai/zen/go/v1/usage用量接口地址(可配置,即 token 转发目标)
timeoutMs15000请求超时(毫秒)
cacheTtlMs30000用量缓存 TTL(毫秒)
limits{rolling:12, weekly:30, monthly:60}展示用限额(美元/窗口)
apiKey无显式 API Key(缺省走凭据解析链)
maxAgeDays14历史采样保留天数(1–365)
sampleIntervalMs300000宿主后台采样间隔(30s–1h)
persistFile<DSH_HOME>/dsh-opencode-usage/history.json历史采样落盘路径

路由(全部 loopback 围栏)

路由说明
GET /api/dsh-opencode-usage/stats用量统计(TTL 缓存)
GET /api/dsh-opencode-usage/history[?days=N]历史采样序列
GET /api/dsh-opencode-usage/health健康检查

安全与边界

  • token 不落盘、不落日志、不进浏览器端:API Key 仅存于宿主进程内存,

浏览器只经 /stats 拿百分比数值(src/index.ts 凭据解析链 + stats 路由 均不回传 token)

  • baseUrl 可配置 = 你的 token 会发送到该地址:仅配置可信的用量接口;

默认官方 https://opencode.ai/zen/go/v1/usage

  • 历史采样落盘 0600 权限(tmp + rename 原子写),目录默认

<DSH_HOME>/dsh-opencode-usage/

  • 所有路由 loopback 围栏(非回环 403 / 方法错 405)
  • 官方接口请求频率受控:GUI 轮询 ≤1 次/60 秒 + 后台采样 ≤1 次/5 分钟

(各另有 30s TTL 缓存抑制重复请求),不会限流

验证

# 健康检查(回环)
curl -s http://127.0.0.1:3080/api/dsh-opencode-usage/health

# 源码在 src/,改后必须 build
pnpm --filter @wingsky-1/dsh-opencode-usage build
node test/smoke.mjs

License

MIT

使用前核对

安装步骤、兼容版本与授权范围以原项目当前文档为准。Stars 和评分是快照中的导航信号。

安装与排错 · 项目问题反馈

同类项目