前言¶
用 Our Free Model(OFM)网关时,往往会在 CodeArts、TRAE、Qoder 等多个渠道之间切换。每个渠道有独立配额,而网关默认不会把「当前对话走了哪条渠道、各渠道还剩多少」一直摆在眼前。要查额度通常得主动去控制台或管理接口,对话过程中很容易错过「快用完」的渠道。
dsh-ofm-balance 是社区维护者 Shen-18 发布的 DSH 客户端插件:在侧栏放一张常驻小卡片,把各渠道剩余额度摊开显示,并标出当前会话使用的渠道。下面介绍它的定位、能力与安装用法。
这是什么¶
dsh-ofm-balance(OFM 额度)在 DSH 侧栏显示 Our Free Model 网关各渠道的剩余额度。数据来自网关真实配额接口;插件列出网关支持的全部渠道目录(与控制台一致,当前内置 13 个),默认只显示已登录账号的渠道,其余可在插件详情页按渠道开关。
它同时支持两套互不相通的 Our Free Model 产品:DSH 内的官方插件 dsh-our-free-model,以及独立桌面应用。默认读插件源;插件不在时自动回退读桌面应用(127.0.0.1:18900)。两套账号池独立,折叠态里「当前渠道」只对当前所选数据源有意义。
运行环境要求 DSH >=0.2.0-rc.2(见仓库 package.json),许可证 MIT。
核心功能¶
侧栏卡片:折叠与展开¶
- 折叠态:标题右侧显示当前对话使用的渠道及剩余百分比,格式为
渠道名 · 百分比。若找不到当前渠道,则显示剩余最少的那一个。 - 展开态:每个渠道一行,含进度条、剩余量与百分比。
- 刷新:可点击「刷新」立即探测;页面可见时按配置周期自动轮询(默认 60 秒)。
进度条与百分比按剩余比例连续渐变(100% 为青、0% 为红),折叠态摘要里仅对百分比着色。
显示哪些渠道¶
判据是数据源 provider.status 里 accounts.total > 0(是否已登录账号),而不是 profile 里声明的模型 id。已登录的渠道默认显示;目录中有但未登录的默认隐藏,可在设置里手动打开。被隐藏的渠道不参与探测,不浪费请求。
渠道按剩余量排序,便于一眼看出哪个快用完。
数据源与切换¶
| 数据源 | 含义 | 读取方式 |
|---|---|---|
plugin |
DSH 内的 OFM 插件 | 内核 RPC channel-pack,方法 credits.balances |
desktop |
独立桌面应用 | POST {baseUrl}/api/management/channels/rpc |
宿主配置里 source 默认为 plugin;设为 auto 时,两套都在时首次可询问,选择写入 $DSH_HOME/dsh-ofm-balance/settings.json。详情页也可切换数据源。
插件详情页控制面板¶
在 DSH 插件页打开 dsh-ofm-balance 详情,正文顶部的 数据源 与 渠道显示 即控制面板(渠道分「已登录账号」与「其余渠道」两组,每行复选框控制是否显示)。勾选未登录渠道时会确认——该渠道暂无账号可读。改动即时生效并写入 settings.json。
也可直接编辑配置文件:
{
"version": 1,
"hidden": ["qoder"],
"revealed": ["moonshot"]
}
| 字段 | 作用 |
|---|---|
hidden |
隐藏已登录账号的渠道 |
revealed |
额外显示无账号的渠道 |
source |
记住的数据源(plugin / desktop) |
删除该文件即恢复默认。
安装与启用¶
将 <profile> 换成你本机使用的 profile 名(例如桌面端常见为 desktop):
dsh plugin --profile <profile> add github:Shen-18/dsh-ofm-balance
或使用仓库 URL、本地路径:
dsh plugin --profile <profile> add https://github.com/Shen-18/dsh-ofm-balance
dsh plugin --profile <profile> add link:/绝对路径/dsh-ofm-balance
预构建包(免构建授权):
https://github.com/Shen-18/dsh-ofm-balance/releases/latest/download/dsh-ofm-balance.tgz
宿主半区改动需重启 DSH;客户端半区改动刷新页面即可。
典型用法与配置¶
安装并启用后,侧栏会出现 OFM 额度卡片,无需额外命令。需要立刻对齐网关状态时,在卡片上点「刷新」。
宿主侧部署级配置(profile 补丁或插件配置)常用项如下:
| 键 | 默认 | 说明 |
|---|---|---|
enabled |
true |
总开关 |
source |
plugin |
plugin / desktop / auto |
baseUrl |
http://127.0.0.1:18900 |
桌面应用网关(source=plugin 时不使用) |
pollIntervalSec |
60 |
轮询间隔(30–3600 秒) |
timeoutMs |
20000 |
单渠道超时 |
hiddenChannels |
[] |
首次运行初始隐藏列表 |
revealedChannels |
[] |
首次运行初始额外显示列表 |
渠道开关的实际值以 $DSH_HOME/dsh-ofm-balance/settings.json 为准;配置里的 hiddenChannels / revealedChannels 仅作首次初始值。
插件提供本机回环 HTTP 接口(如 GET /api/dsh-ofm-balance/overview、POST /api/dsh-ofm-balance/refresh),供侧栏与设置面板使用;非本机访问会被拒绝。
适用场景与注意¶
适合谁:已在 DSH 或 OFM 桌面应用里使用 Our Free Model,希望在对话旁持续看到各渠道配额、并确认当前会话走哪条渠道的用户。
注意:
- 插件在 DSH 进程内运行,安装前请自行阅读 GitHub 仓库 源码与 MIT 许可证。
- 插件源与桌面源的账号互不相通;读插件时,经桌面网关的对话不会在折叠态里被标为「当前渠道」。
- 社区插件目录 SkillHub 条目 与 GitHub 同源信息,与 DeepSeek / 幻方无官方从属关系;DSH 生态遵循「一切皆插件」,按需选用即可。
结尾¶
dsh-ofm-balance 把「当前渠道」和「各渠道还剩多少」收进侧栏一张卡片,减少反复打开管理界面的次数。目录页:https://www.skillhub.cn/plugins/Shen-18/dsh-ofm-balance;源码与文档:https://github.com/Shen-18/dsh-ofm-balance。