sixtysevenlf/dsh-opencode-go-monitor3

dsh-opencode-go-monitor

省钱+余额监控悬浮窗(DSH Web UI 插件):DeepSeek 余额/官网用量/金额单位/低价分析/高价区每小时限额/断点截断/低耗压缩/语音提醒

包名
dsh-opencode-go-monitor
版本
1.0.0
许可证
BSD-3-Clause
最近更新
2026年8月18日

安装

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

省钱+余额监控悬浮窗(dsh-opencode-go-monitor)

DSH(DeepSeek Harness)Web UI 悬浮面板插件:双标签页 实时显示 DeepSeek 与 OpenCode Go 的额度余额(标签切换带滑动+淡入动画)。

  • 双标签页:DeepSeek 余额 / OpenCode Go 余额,点击切换,带方向滑动 + 淡入动画
  • OpenCode Go 页:月度 / 滚动 / 每周 三档额度:剩余 %(绿≥50% / 橙≥25% / 红 本插件已合并原「余额悬浮窗」(dsh-balance-window)的面板,部署时请将旧插件注册改为 disabled(见安装步骤),避免两个面板重叠。

风格与 DSH 自带「余额悬浮窗」(dsh-balance-window,DeepSeek 余额)一致。

隐私说明(重要)

  • 不依赖本地 opencode:不读取任何 opencode 配置文件;用量/金额全部来自 DeepSeek 官网平台
  • API key / token 来源(按优先级):
    1. DSH 凭据系统:写在 $DSH_HOME/.credentials.yaml 本地文件(设置 → 凭据)
    2. 环境变量兜底
  • key/token 只在进程内存中使用,用于调用官方接口,不落盘、不写日志、不发给任何第三方
  • 仓库内不含任何密钥 —— 每个部署者在自己的机器上配置自己的凭据,看到的是自己的余额与官网用量

前置条件

依赖说明
DeepSeek Harness(web 或桌面端)插件运行在 DSH 内
DeepSeek API keyDSH 设置 → 凭据 添加 DEEPSEEK_API_KEY(DeepSeek 余额标签页用)
OpenCode Go 订阅 + API keyDSH 设置 → 凭据 添加 OPENCODE_GO_API_KEY(在 opencode.ai/auth 获取)
DeepSeek 官网登录会话 tokenDSH 设置 → 凭据 添加 DEEPSEEK_PLATFORM_TOKEN查看自己官网用量/金额/小时粒度的必需项,获取方法见下)

安装

文件分享安装(zip 包,最简单)

拿到 dsh-opencode-go-monitor-1.0.0.zip(30 KB 单文件,可直接用微信/QQ/U 盘分享)后:

  1. 解压得到 dsh-opencode-go-monitor/ 文件夹(内含 package.jsonlib/README.md

  2. 把整个文件夹复制到 $DSH_HOME/profiles/node_modules/ 下(Windows 默认 C:\Users\\.dsh\profiles\node_modules\

  3. 编辑 $DSH_HOME/profiles/web/cordis.patch.yml(没有则新建,内容为 []),追加:

    # 省钱+余额监控悬浮窗
    - insert:
        - id: opencode-go-monitor
          name: 'dsh-opencode-go-monitor'
    
  4. 保存后热加载生效,浏览器硬刷新(Ctrl+Shift+R)即可看到悬浮窗

  5. 配置凭据:见下方「前置条件」与「获取 DEEPSEEK_PLATFORM_TOKEN」(登录过官网的浏览器一般会自动读取,零配置)

zip 包内不含任何密钥;需要升级时用新 zip 覆盖 lib/package.json 再刷新即可(或删掉旧文件夹重新解压)。

从 GitHub 获取

git clone https://github.com//dsh-save-balance-monitor.git dsh-opencode-go-monitor

clone 出来的 dsh-opencode-go-monitor/ 就是插件文件夹(含 package.jsonlib/),按下方方式一或方式二安装即可。所有密钥都不在仓库里,需要你自己配置(见上文「前置条件」与「获取 DEEPSEEK_PLATFORM_TOKEN」)。

方式一:标准流程(推荐,热加载)

  1. 把插件文件夹(含 package.jsonlib/)整个复制到 $DSH_HOME/profiles/node_modules/dsh-opencode-go-monitor/

    $DSH_HOME 默认位置:Windows ~\.dsh;macOS / Linux ~/.dsh(可用 echo $DSH_HOME 确认)

  2. 编辑 $DSH_HOME/profiles/web/cordis.patch.yml(没有则新建,内容为 []),追加:

    # OpenCode Go 余额悬浮窗
    - insert:
        - id: opencode-go-monitor
          name: 'dsh-opencode-go-monitor'
    
  3. cordis.patch.yml 修改会热加载,无需重启;刷新浏览器页面(Ctrl+Shift+R)即可看到面板

  4. 配置凭据:DSH 设置 → 凭据 → 添加 DEEPSEEK_API_KEYOPENCODE_GO_API_KEY,以及 DEEPSEEK_PLATFORM_TOKEN(官网用量必需,见下)

  5. 若旧版「余额悬浮窗」(dsh-balance-window)还注册着,把它的 insert: 块替换为禁用条目:

    - id: balance-window
      disabled: true
    

获取 DEEPSEEK_PLATFORM_TOKEN(查看自己官网用量/金额)

DeepSeek 官网控制台的用量/金额端点需要登录会话 token(API key 认证不了)。每个用户都要用自己的

插件会先尝试自动读取:启动后自动扫描本机 Chrome / Edge / 360 极速浏览器(含各 profile)的 Local Storage,找到 platform.deepseek.com 域下的 userToken 并用官网实体验证后直接使用——只要你在这些浏览器里登录过官网,通常无需任何手动配置(读到的 token 只在内存中使用,不落盘、不写凭据文件)。

⚠ 自动读取是"尽力而为":token 若被浏览器压缩进 LevelDB 的 snappy 块(旧数据),可能读不到。此时按下面手动配置一次即可(读不到时面板会有提示)。

手动配置(自动读取无效时)

  1. 用任意浏览器(Chrome / Edge / 360 极速「极速模式」)登录 https://platform.deepseek.com
  2. 打开开发者工具:F12(或右键 → 检查)
  3. 切到 Application / 应用程序 → Local Storage / 本地存储 → https://platform.deepseek.com
  4. 找到键 userToken,复制它的值(很长一串,eyJ... 开头)
    • 若找不到:切到 Console / 控制台,输入 localStorage.getItem('userToken') 回车,复制引号里的内容
  5. 把这段值填到 DSH 设置 → 凭据 → DEEPSEEK_PLATFORM_TOKEN(或写进 ~/.dsh/.credentials.yamlDEEPSEEK_PLATFORM_TOKEN:
  6. 面板 DeepSeek 页 30 秒内出现「官网当月」行(token 总量 / 花费 / 请求次数 / 日均)即成功

⚠ token 与你的官网登录会话绑定:退出登录、清理浏览器缓存后失效,重新按上面取一次即可。token 只存在你自己机器的凭据文件里,绝不提交进代码/仓库。

方式二:super-injector(如果装有)

dev_install_package dir=

自定义(环境变量)

变量默认值说明
OGM_API_KEYOpenCode Go 备用 key(无 DSH 凭据时使用)
OGM_PLATFORM_TOKENDeepSeek 官网 userToken 备用(无 DSH 凭据时使用)
OGM_BASEhttps://opencode.ai/zen/go/v1/usage余额接口地址

排错

现象处理
状态行「余额失败:未配置 OPENCODE_GO_API_KEY 凭据」DSH 设置 → 凭据 添加 OPENCODE_GO_API_KEY,或设置环境变量 OGM_API_KEY
状态行「余额失败:HTTP 401」key 无效/过期,到 opencode.ai/auth 重新生成
面板 DeepSeek 页「官网用量: 未配置 DEEPSEEK_PLATFORM_TOKEN 凭据」按上文「获取 DEEPSEEK_PLATFORM_TOKEN」配置
面板「官网用量: Platform token 无效或已过期」token 失效,重新从浏览器 localStorage 取新的
DeepSeek 余额显示为负账户余额已用超,注意在 platform.deepseek.com 充值
面板完全不显示确认 cordis.patch.yml 注册行格式、profiles/node_modules/dsh-opencode-go-monitor 路径;浏览器硬刷新(Ctrl+Shift+R);F12 控制台看红色报错
两个面板重叠直接把其中一个拖开即可(位置记忆)

卸载

  1. cordis.patch.yml 删除注册行(热加载立即移除)
  2. 删除 profiles/node_modules/dsh-opencode-go-monitor/ 文件夹

结构

├── package.json      # 插件清单(dsh.client 双半声明)
└── lib/
    ├── index.js      # host 半:/api/opencode-go/balance(官方接口,凭据读 key,60s 缓存)
    │                 #       /api/opencode-go/usage(可选:本地 SQLite 只读聚合)
    └── client.js     # client 半:shell.overlay 悬浮面板(拖动/缩放/记忆)