在 DSH (DeepSeek Harness) 的日常开发中,模型列表的更新和用量监控是两个高频痛点。DSH 内置的模型发现机制对已安装的 provider(如 GLM Coding、MiniMax 等)返回的是打包时的静态目录,新发布的模型需要等待 pi-ai 升级才能出现。同时,原生界面缺乏对各类 provider 实时用量的展示。dsh-better-model-select 插件通过 API 同步和 RPC 通道解决了这两点。
这是一个 DSH 插件,旨在让模型列表跟随各 provider 的 API 实时更新,并将各 provider 的实时用量显示在原生会话统计行下方。插件由 sxy-kumako 维护,属于联网工具类别。
模型列表实时同步¶
DSH 内置的模型发现对 pi-ai 目录里已有的 provider 会直接返回打包时的静态目录,从不请求远端接口。本插件补上这一环:
- 定时读取:插件每 30 分钟(包含启动时)读取
llm-pi-ai.providers下配置的每条路由。 - API 请求:利用该路由的凭据(通过 DSH 凭据库解析),请求 provider 的模型列表接口(OpenAI 兼容
GET {baseURL}/models或 Anthropic 兼容格式)。 - 合并与写入:将远端列表与已安装目录合并。目录已有的模型保持原样(裸
{id}条目会自动继承目录完整定义),远端新增的模型会根据同家族目录模型生成完整条目。用户手写的条目永远优先,不会被删除。 - 实时生效:结果写入该路由的
models设置列表。模型选择器实时生效,无需重启。 - 容错处理:一次失败的远端请求不会写任何东西;写入被
llm-pi-ai校验拒绝时仅记日志、保留原值。
用量徽标与颜色¶
插件通过 RPC 通道 /dsh-better-model-select 向宿主暴露用量数据。
- 显示内容:
- GLM / MiniMax:显示编码计划剩余量(5 小时窗口 + 周窗口)。
- DeepSeek / OpenRouter / Kimi:显示现金余额。
- 颜色编码:
- 剩余量 >30%:绿色
- 剩余量 ≤30%:橙色
- 剩余量 ≤10%:红色
安装与启用¶
- 进入 DSH 的 profile 目录:
cd ~/.dsh/profiles/<你的 profile> # 例如 desktop 或 web
- 删除旧版插件副本(更新时必须先删,不要原地覆盖):
rm -rf node_modules/dsh-better-model-select
- 复制新插件到 node_modules:
cp -R ~/.dsh/plugins/dsh-better-model-select node_modules/
- 重启 DSH Desktop。
典型用法¶
- 实时生效:配置写入
models设置后,模型选择器立即生效,无需重启。 - 手动同步模型列表:在会话中输入
/dsh-better-model-select?syncModels。 - 强制刷新用量数据:在会话中输入
/dsh-better-model-select?quota=force。
适用场景与注意¶
- 直连模式:历史版本内置的 127.0.0.1:9999 代理已移除,provider 请求走 DSH (pi-ai) 原生直连。
- 数据安全:凭据通过 DSH 凭据库解析,不会落日志。一次失败的远端请求不会写任何东西。
- 权限与源码:插件以当前 DSH 进程权限运行。安装前建议检查源码与许可证。
该插件通过定时同步与 RPC 暴露,解决了模型列表滞后和用量不透明的问题。更多细节与源码见:GitHub。