架构说明

August 22, 2026 · View on GitHub

双面架构

本插件采用"双面"架构,Host 端(Node.js)和 Client 端(浏览器)通过 RPC 通信。

Host(Node.js 进程)
├─ 余额查询:shell 执行 curl → api.deepseek.com/user/balance(Bearer 鉴权)
├─ 用量聚合:session/event 实时监听 + 90 天历史扫描(按 seq 去重)
├─ 三方插件:clientModules.graph() + clientPath() + open -R 定位
├─ RPC 路由:/bmon/api/get-state · refresh · recharge · set-config ·
│            get-usage · list-plugins · open-plugin-dir · check-updates · update-plugin
│            install-plugin · uninstall-plugin · search-plugins · get-plugin-info · featured-plugins
├─ 持久化:配置自动保存到 config.json 文件
└─ 模型工具:query_api_quota

Client(浏览器)
├─ 入口:输入框工具行右侧 3 个 SVG 图标按钮
├─ 浮层:组件内自渲染 fixed 面板(不依赖 overlay 槽位)
├─ 图表:Miyu chart/heat 色板,深色/浅色自适应
└─ 轮询:每 15 秒与 Host 同步状态,支持增量更新

RPC 路由

路由说明
get-state获取完整状态(余额、配置、轮询状态等)
refresh强制刷新余额
recharge获取充值链接
set-config更新配置(账户、阈值、间隔等),自动持久化
get-usage获取用量统计(1d/7d/30d/all)
list-plugins列出已安装插件(区分官方/三方)
open-plugin-dir打开插件目录
install-plugin安装插件(调用 dsh plugin add
uninstall-plugin卸载插件(调用 dsh plugin rm
update-plugin更新插件(先 rm 再 add)
check-updates检查 GitHub 上的新版本
search-pluginsnpm 搜索
get-plugin-info包详情
featured-plugins推荐插件列表

平台支持

  • macOS / Linux:install.sh / uninstall.sh(Bash 脚本)
  • Windows:install.ps1 / uninstall.ps1(PowerShell 脚本)

持久化机制

配置保存在插件安装目录的 config.json 文件中,包含:

  • 账户列表(名称、API Key、自动读取标记)
  • CNY/USD 告警阈值
  • 刷新间隔
  • 底部余额栏显示/隐藏设置
  • 下一个账户 ID 计数器

启动时自动加载配置,保存设置时自动写入文件。