前言¶
在 DeepSeek Harness(DSH)里同时开着多条会话时,模型往往要一条一条改;子代理挂在主对话下面,批量清理时也容易漏勾。关掉长期不用的会话,还要自己记哪些是「几天没动过」的。DSH 本体不携带模型价格元数据,想看 token 和花费也只能在各处零散找。
下面介绍社区插件 dsh-model-console(维护者 Lli-WenZe,分类:客户端)。它挂在侧边栏「全局面板」里,紧挨「插件」一行,用一块面板统一处理所有对话的模型选择、闲置筛选、子代理树、批量归档/释放,以及用量估算与手动探活。
这是什么¶
dsh-model-console 是 DSH 的客户端插件,展示名为「模型控制台」。定位可以概括成:一个面板统管 Harness 里所有对话的模型选择,并附带按闲置时间筛选、子代理树形折叠、批量归档/释放、token 用量与参考价、服务商探活与延迟显示。
- 目录页:SkillHub 插件页
- 源码与说明:GitHub · Lli-WenZe/dsh-model-console
- 当前包版本(package.json):1.3.0
- 许可证:MIT
- 宿主要求:声明
dsh.engines.dsh: ">=0.2.1";Node>=22.13.0 - 运行时外部依赖:仅 react
插件以当前 DSH 进程权限在浏览器侧运行;安装前建议自行查看源码与许可证。
核心功能¶
统一与逐行切换模型¶
- 统一设置:选一个模型,一键「应用到所有对话」;并发四路,失败项保留勾选,可单独重试。
- 逐行切换:每个对话一行;模型按钮打开可搜索浮层(按服务商分组、显示计数、当前项标记 ✓)。支持推理等级的服务商旁有等级下拉。选择器里各模型可标
$输入 / $输出(美元 / 百万 token,来自插件内置参考价表)。
子代理树与勾选联动¶
每个主对话下挂其子代理,行首 ▸ N 就地展开/收起。勾选主对话时,子代理一并勾选(收起状态下也算),避免批量操作时漏删。
按闲置时间筛选¶
支持 全部时间 / 1 / 3 / 7 / 14 / 30 / 90 天以上没用过;每行副标题显示例如 · 3 天前,便于挑出长期闲置会话。
批量归档与释放¶
勾选后一键归档:归档前会经 stopActivity 停掉该会话的 turn、子代理、后台任务,避免当场报 session-active。已归档会话收在底部灰色折叠组,组内勾选可批量释放回来。
若宿主没有 uiWorkspace.archiveSession / unarchiveSession,批量归档、释放按钮与归档组不会渲染(能力探测,而非装进去后静默失效)。
用量与花费(估算)¶
- 每行右侧:该对话 token 总量;悬停可见输入 / 输出 / 缓存读 / 缓存写。
- 下方「用量与花费」卡:汇总全局 token 与估算金额。
- 用量来自会话
tokenUsage投影(session.list已带,不额外 RPC)。 - DSH 的
buildModelCatalog()不含价格;金额只能由插件维护的PRICE/PRICE_BY_PROVIDER(在client.js)提供:先 provider + model 精确匹配,再退化到 model id;表中没有的模型只显示 token,不编造价格。cacheRead默认按输入价 10%、cacheWrite按 125% 折算,仅为估算,以服务商账单为准。改价后刷新页面即生效。
手动探活、延迟与状态灯¶
工具栏点 探活:对每个服务商串行 GET <baseURL>/models(anthropic 协议为 GET <baseURL>/v1/models),只拉清单、不产生 token 费用;仅按键时发起,无定时请求。成功显示绿灯与往返毫秒,失败红灯、悬停看错误原文。灯按服务商(路由)计,对话行、选择器分组与项同步显示。
注意:显示的是探活往返时间,不是首 token 时间(TTFT)。部分 provider 内置清单本地返回时灯仍可能为绿,但毫秒只代表本地查询。宿主没有 remote.llm.discoverModels 时,探活按钮不渲染,面板其余部分照常。
中英双语¶
跟随界面语言,76 个键中英两套齐全。
安装与启用¶
社区目录(SkillHub 等)与 DSH「一切皆插件」生态相关,并非 DeepSeek / 幻方官方应用商店;装插件前请确认来源与权限。
从插件市场¶
在插件市场(dshmarket)搜索 dsh-model-console,点击安装。
从命令行¶
dsh plugin --profile <你的 profile> add dsh-model-console
桌面端注意:应用内插件管理器管的是 desktop profile;命令行若只装 web profile,桌面里看不到。桌面请在 设置 → 插件 中安装。
版本过旧时会被引擎声明拦住(dsh >= 0.2.1),而不是静默装坏。若缺少 remote.session.modelCatalog,页面会明确报错而非白屏。
典型用法¶
1、打开侧边栏「全局面板」中的模型控制台(与「插件」相邻)。
2、改模型:顶部选模型后点「应用到所有对话」做批量切换;或在某一行点开模型浮层,搜索并单独修改。需要时在同一浮层旁调整推理等级。
3、清理闲置:用闲置时间下拉筛出例如「7 天以上」,展开 ▸ N 核对子代理,勾选主对话(子代理会联动),再归档或先改模型后归档。
4、恢复会话:展开底部灰色归档组,勾选要恢复的会话,批量释放。
5、看用量与价:扫一眼各行 token 与底部汇总卡;改参考价则编辑仓库 client.js 中 PRICE / PRICE_BY_PROVIDER 后刷新。
6、看通路:点工具栏「探活」,根据服务商绿灯/红灯与毫秒判断清单接口是否可达(不产生对话 token 费)。
本地联调(README 开发节)可将插件目录 link 到宿主 profile 的 node_modules,改 client.js 刷新即生效,无需重装:
dsh plugin --profile <profile> add link:C:\path\to\model-console
(路径按本机实际目录填写。)
适用场景与注意¶
适合:经常在 DSH 里并行多条会话、需要统一换模型或按闲置批量归档的开发者;希望在同一面板看 token、参考价和服务商连通性的人。
注意:
- 插件在客户端注入,依赖
@deepseek-ai/dsh-api-remotes、dsh-api-session-controller、dsh-client-ui-sidebar等宿主 API;旧宿主或能力缺失时部分按钮/功能按设计隐藏或报错。 - 金额为插件自建价表的估算,不能替代账单。
- 探活只代表按下按钮那一刻的清单接口可达性。
- 安装插件即信任其在前端的行为与网络请求(探活时的 GET);请从上述 GitHub 或目录页核对后再装。
结尾¶
dsh-model-console 把「全对话模型切换、子代理树、闲置筛选、归档/释放、用量估算、手动探活」收到侧边栏一块面板里,减少在多会话场景下反复点选和漏勾子代理的情况。需要安装或看实现细节时,可访问 SkillHub 目录页 与 GitHub 仓库。