DSH Plugin Store
Back to home

Xenia0922

dsh-opencode-go-usage

DeepSeek Harness 插件:OpenCode Go 用量与花费悬浮仪表盘(配额、逐请求成本、模型/来源分布)

Stars
1
Language
JavaScript
Created
Aug 14, 2026
Updated
Aug 14, 2026
Workspace
GitHub repo

Introduction

OpenCode Go 用量面板

DeepSeek Harness 插件 — 可拖拽缩放的悬浮仪表盘,实时展示 OpenCode Go 配额、逐请求用量与花费

A DeepSeek Harness plugin — 数据完全本机获取,API key 不出本机、不进日志。

license platform DSH dsh-bundle


这是什么

在 DSH 右下角挂一个悬浮胶囊,点开就是完整的 OpenCode Go 用量仪表盘:

  • 今日 / 本月 / 累计花费(带请求数与 token 明细)
  • 滚动 / 周 / 月 配额环形图(官方实时百分比 + 重置时间)
  • 按模型花费排行(悬停查看来源构成与 cache 明细)
  • 7 / 14 / 30 天花费趋势
  • 最近会话列表(真实标题 + 花费)

数据 完全本机获取:DSH 会话事件 + opencode 官方数据库 + cc-switch 代理日志 + 官方配额接口。API key 不出本机、不进日志

界面预览

  ┌────────────────────────────────────┐
  │ OpenCode Go 用量       刷新 最大化 关闭 │  ← 可拖动标题栏,双击最大化
  ├────────────────────────────────────┤
  │ [DSH] [全部]                        │  ← 视图切换
  │ ┌────────┐ ┌────────┐ ┌────────┐   │
  │ │ 今日    │ │ 本月    │ │ 累计    │   │  ← 渐变卡片
  │ │ $0.73  │ │ $4.65  │ │ $2.14  │   │
  │ └────────┘ └────────┘ └────────┘   │
  │   ◔ 30%     ◔ 12%     ◔ 6%         │  ← 配额环形图 + 重置时间
  │ 按模型 · 共 3 个                     │
  │ deepseek-v4-flash  ████████  $2.14 │
  │ gpt-5.6-luna       ██░░░░░░  $0.06 │
  │ 花费趋势         [7天][14天][30天]   │
  │ ▂▃▅▇██▇▅▃▂                        │
  │ 最近会话 …                          │
  └────────────────────────────────────┘
      ↖ 右下角可拖动 FAB 胶囊(金额 + 滚动配额)

功能特性

能力说明
悬浮入口右下角胶囊,FAB 本身可拖动,显示累计金额 + 滚动配额 %
窗口控制拖标题栏移动、拖边缘/右下角缩放、双击/按钮最大化、淡入动画
双视图DSH(仅 DSH 会话)/ 全部(DSH + opencode 官方记录 + codex)
精确费用opencode 逐请求官方 cost + codex 代理记录,DSH 按公开定价估算
配额监控滚动/周/月官方配额百分比与重置时间
自动刷新60s 定时 + 打开面板即时刷新,45s Host 缓存

数据来源与口径

┌──────────────────────────────────────────────────────────┐
│  DSH 会话事件        assistant/message 事件携带真实 token  │
│  (sessionQuery)      用量与模型/provider(任何 provider 通用)│
├──────────────────────────────────────────────────────────┤
│  opencode 官方库     part 表 step-finish 逐请求记录,含     │
│  (opencode.db)       官方计算的 cost(仅 opencode-go)      │
├──────────────────────────────────────────────────────────┤
│  cc-switch 代理日志  proxy_request_logs 中 codex 流量      │
│  (cc-switch.db)      (同一 Go key 的逐请求记录)            │
├──────────────────────────────────────────────────────────┤
│  官方配额接口        opencode.ai/zen/go/v1/usage          │
│  (curl native TLS)  滚动/周/月配额百分比 + 重置时间         │
└──────────────────────────────────────────────────────────┘
  • 金额口径:opencode / codex 为官方或代理记录的精确 cost;DSH 部分按内置公开定价表估算(输入/输出/cache 读/写按每百万 token 单价计算),面板底部有标注
  • 免费模型:*-free(OpenCode Zen 免费)不计入,只统计 opencode-go 付费流量
  • 请求次数:opencode 部分为逐请求(step-finish)计数,与 DSH 的逐次调用同口径

安装

方式 A:会话内动态加载(推荐,免构建)

  1. 打开 DSH 会话,让 Agent 执行 cordis_define(kind: new, idPrefix: zenus)
  2. src/host.js 内容粘贴为 code.host,将 src/client.js 内容粘贴为 code.client
  3. cordis_run 授权后,右下角出现 FAB 胶囊

方式 B:Bundle 插件(官方安装方式)

git clone https://github.com/Xenia0922/dsh-opencode-go-usage.git
cd dsh-opencode-go-usage

# 从父目录安装进 profile 并启动
dsh plugin --profile my-profile add ./dsh-opencode-go-usage
dsh --profile my-profile

package.json 已声明官方 bundle 字段(dsh.bundle.patch -> cordis.patch.yml),安装后插件行自动注册(opencode-go-usage)。

使用

操作效果
点击胶囊打开面板(从胶囊位置展开)
拖动胶囊移动入口位置
拖标题栏 / 双击移动 / 最大化还原
拖右缘 / 底缘 / 右下角调整宽度 / 高度 / 整体缩放
视图切换DSH / 全部
悬停模型行来源构成 + token 明细
刷新标题栏按钮,或等 60s 自动刷新

技术架构

┌─────────────┐   host.call('ocgo-usage:fetch')   ┌─────────────┐
│  Client 半区 │ ────────────────────────────────▶ │  Host 半区   │
│  shell.overlay│                                 │  harness.handle│
│  React 仪表盘 │ ◀──────────────────────────────── │  聚合 + 缓存  │
└─────────────┘      JSON(纯数据,无 live 对象)      └──────┬──────┘
                                                     │
                              ┌──────────────────────┼──────────────────────┐
                              ▼                      ▼                      ▼
                    sessionQuery              python(只读 sqlite)       curl(官方配额)
                    DSH 会话事件               opencode.db + cc-switch    auth.json key
                                              (mode=ro, 零写入)          (进程内读取)
  • Host 半区:harness.handle 注册 RPC,45s 进程内缓存,有界并发(4)读取会话
  • Python 子进程只读打开 SQLite(?mode=ro),沙箱/代理环境下稳定
  • 配额走 curl native TLS(代理兼容),key 在 pwsh/python 进程内从 auth.json 读取,不经过命令字符串、不落盘

依赖

  • DeepSeek Harness(DSH)桌面版
  • opencode 桌面版/CLI(数据源:~/.local/share/opencode/opencode.db)
  • Python 3(读取 SQLite,自动探测 E:\python\python.exe 或 PATH)
  • Windows 自带 curl.exe(配额接口)
  • 可选:cc-switch(提供 codex 流量记录;缺失时仅该部分显示警告)

隐私

  • API key 只在本机由子进程从 ~/.local/share/opencode/auth.json 读取
  • 不向任何第三方发送数据(唯一网络请求是配额接口本身,携带官方 Bearer key)
  • 不写入、不修改任何数据库(全部 mode=ro 只读)

License

MIT