dsh-model-sync:把各 Provider 的最新模型列表与额度读数接进 DSH

前言

如果你在 DSH 里同时接了 openai-codex、kimi-coding、deepseek-official 等多个 Provider,大概遇到过两件事:一是厂商上新模型后,llm-pi-ai.providers.<id>.models 里的模型 id 要自己对照文档手动补;二是各家额度分散在各自的控制台,5 小时窗口还剩多少、按量余额还够不够,切换页面才能确认。

dsh-model-sync 把这两件事搬进了 DSH 的设置页:一个页面同步模型列表,一个页面看额度,输入框旁边再加一个跟随当前会话模型的圆环。下面介绍它的功能、安装和用法。

这是什么

dsh-model-sync 是一个 DSH 插件,作者是 jiay98528-dev,许可证为 MIT。

一句话定位:把各 Provider 的线上最新模型列表写进 DSH 设置,输入框圆环跟随当前会话模型,显示 5 小时/7 天窗口或按量剩余余额。它占用两个设置页——Model Sync 负责拉取并写入模型 id,Usage 负责按模型的额度读数,Composer 圆环负责在会话内随时可见。

核心功能

Model Sync:模型列表写入设置

Settings → Model Sync 页面为每个 Provider 提供一张卡片,列出 provider id、baseURL 和模型 chips。尚未写入设置的 id 用蓝色描边标记,点击 Apply N new models 即写入 llm-pi-ai.providers.<id>.models

MiniMax、Kimi Coding 和 OpenAI Codex 没有开放 OpenAI 风格的 /models 端点,插件对这些 Provider 使用已知目录 id。

Usage:额度窗口与按量余额

Settings → Usage 页面按 Provider 列出额度:

  • 5 小时/7 天窗口各占一行,显示剩余百分比、厂商累计计数和重置倒计时(如 2d 3h left),并带彩色进度条,颜色跟随剩余额度;
  • 按量行显示 current / baseline,首次采样自动作为基线,也可以点击 Use current balance as baseline 把当前余额设为基线,余额行会记录基线设置时间。

Composer 圆环

圆环位于输入框中模型名右侧、上下文用量左侧,跟随当前会话模型,切换模型时随之切换。同时有两种限额的模型画双环:内环 5 小时、外环 7 天。悬停圆环会弹出标题为 provider / model 的详情卡片,每个窗口一行剩余百分比和倒计时,例如 5 hours left 100% · 2h 15m left;kimi-coding 的充值包也放在悬停卡片中。其他 Provider 的额度仍在 Usage 页查看。

刷新与语言

页面每 60 秒自动刷新额度,也可手动点击 Refresh 立即拉取。UI 文本跟随 DSH 语言设置,支持英文和中文。

安装与启用

在 npm 上安装:

dsh plugin --profile web add dsh-model-sync

也可以从 GitHub 源安装,源码包自带预构建的 lib/,无需 allowBuilds

dsh plugin --profile web add github:jiay98528-dev/dsh-model-sync

插件自带 cordis.patch.yml bundle patch(dsh.bundle),并声明 dsh.client.immediately: true,安装后即生效,无需手动配置。经过上面的步骤,重启 dsh web、刷新页面,打开 Settings → Model Sync 即可;列表为空时点击 Refresh。

典型用法

同步模型列表

1、打开 Settings → Model Sync。

2、列表为空时点击 Refresh。

3、查看每张卡片上的 provider id、baseURL 和模型 chips,蓝色描边的 id 表示尚未写入设置;点击 Apply N new models 写入 llm-pi-ai.providers.<id>.models

4、页面下方的 Enable plugins 折叠块可切换本插件和可选的 sub-model-access,它会在 cordis.patch.yml 写入 disabled 标志,即时生效。

查看额度

1、打开 Settings → Usage。

2、逐行查看各 Provider 的 5 小时/7 天窗口剩余百分比、厂商累计计数和重置倒计时;按量行查看 current / baseline,需要时点击 Use current balance as baseline 重设基线。

3、页面每 60 秒自动刷新,等不及就点 Refresh。

各 Provider 的额度来源如下:

Provider 窗口 来源
openai-codex 5h / 7d chatgpt.com/backend-api/wham/usage
kimi-coding 5h / 7d api.kimi.com/coding/v1/usages
zai 5h / 7d api.z.ai/api/monitor/usage/quota/limit
minimax-cn 5h / 7d api.minimaxi.com/v1/api/openplatform/coding_plan/remains
xai 7d grok.com gRPC-web,移植自 CC Switch
deepseek-official 余额 api.deepseek.com/user/balance
xiaomi 无数据 无公开 API

会话内看圆环

1、像平时一样选择模型。

2、看输入框中模型名右侧的圆环,它会跟随会话模型,切换模型时跟着变。

3、悬停圆环查看详情卡片,标题为 provider / model,每行是一个窗口的剩余百分比和倒计时。

配置

插件的默认配置如下:

- id: model-sync
  name: dsh-model-sync
  config:
    profile: web
    pollMs: 60000

两个配置项:

配置项 默认值 说明
profile web 读写哪个 $DSH_HOME/profiles/<name>
pollMs 60000 轮询间隔参数,最小 5000,页面目前每 60 秒刷新一次额度

适用场景与注意

适合同时在 DSH 里挂多个 Provider、不想离开当前界面去查模型列表和额度的用户。使用前有几点需要注意:

  • 额度调用使用已存于 DSH 的凭据,插件自身不保存任何密钥。
  • DeepSeek 按量基线存于 $DSH_HOME/profiles/<profile>/model-sync.baseline.json,读数高于已存基线会被视为充值并重置基线。
  • 圆环位置绑定 DSH 0.1.0-rc.6 的 composer class names,DSH 版本更新后可能需要适配。
  • 宿主代码位于 node_modules 下;修改并重新构建本包后需重启 dsh web,仅客户端改动刷新页面即可。
  • xiaomi 没有公开套餐 API,插件对其无数据。

另外,插件以当前 dsh 进程的权限运行。安装任何插件前,建议先查看其源码与许可证,本插件为 MIT,源码在 GitHub 上可直接审阅。

结尾

回顾一下:dsh-model-sync 做两件事——把各 Provider 的最新模型列表同步进 DSH 设置,把 5 小时/7 天窗口和按量余额画成进度条与输入框圆环;自带 bundle patch,安装即生效。如果你维护多 Provider 的 DSH 环境,值得装一份试试。

  • GitHub:https://github.com/jiay98528-dev/dsh-model-sync
  • 社区插件目录收录页(社区维护,与 DeepSeek / 幻方无官方从属关系):https://www.skillhub.cn/plugins/jiay98528-dev/dsh-model-sync
羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜