精选
为什么选中它
待人工精选——以下事实来自源码仓库。
它能做什么
针对DSH web前端设计,对模型选择面板进行了升级,改为供应商-模型两侧滚动面板,并添加了搜索框
适合谁
想用 DSH 获得这项能力的用户;装前建议先看源码和文档。
风险提示
- 未发现明显风险信号;安装前仍建议查看源码。
针对DSH web前端设计,对模型选择面板进行了升级,改为供应商-模型两侧滚动面板,并添加了搜索框
待人工精选——以下事实来自源码仓库。
针对DSH web前端设计,对模型选择面板进行了升级,改为供应商-模型两侧滚动面板,并添加了搜索框
想用 DSH 获得这项能力的用户;装前建议先看源码和文档。
dsh plugin --profile web add github:Sanqi-normal/dsh-model-picker 作者没有声明支持的平台。
/model 弹层共享同一份模型目录(ctx.modelDirectories),任何一处切换另一处立即同步;composer 的模型阻塞逻辑不受影响 - 界面跟随系统深浅色主题;文案中英文自动切换 A left column lists providers (independently scrollable, with model-count badges); the right column shows the active provider's models (independently scrollable). The search box matches across providers (provider name / model name / description, case-insensitive). Reasoning-effort switching, loading/error/retry/empty states are preserved, and the panel shares the same per-session model directory as the built-in /model popup. Dark/light theme aware; UI text follows the system language. ## 安装 Install 方式一:从 npm registry 安装(推荐,无 git 克隆 / prepare 脚本步骤): sh dsh plugin --profile web add dsh-model-picker 方式二:从 GitHub 源码安装: sh dsh plugin --profile web add github:Sanqi-normal/dsh-model-picker 安装后重启 web 服务生效: sh pnpm dsh web GitHub 源安装会执行包内 prepare 脚本,如被 pnpm 拦截,把提示的包名加入 profile 的 pnpm-workspace.yaml 的 allowBuilds 后重试。 ## 使用 Usage 重启后打开任意会话,点击 composer 工具行右端的模型选择器(发送按钮左侧): - 左栏点击提供商切换右侧模型列表;右栏点击模型即选中(✓ 标记当前模型) - 顶部输入关键词,右栏切换为跨提供商搜索结果;点击左侧任意提供商即退出搜索并切换 - 当前模型支持推理档位时,菜单底部出现档位按钮(含「提供方默认」) After the web server restarts, open any session and click the model selector at the right end of the composer tool row: - Click a provider in the left column to switch the right list; click a model to select it (✓ marks the current one) - Type in the search box to see cross-provider results; clicking any provider exits search - When the current model supports reasoning efforts, effort buttons (including "provider default") appear at the bottom of the menu ## 工作原理 How it works 持久化 bundle(package.json 的 dsh.bundle.patch → cordis.patch.yml),由 dsh plugin add 的 reconcile 自动加入 profile 的 dsh.profile.bundles 层: - Client 半(lib/client.js):通过 exports["./client"] + dsh.client 声明被 web 前端加载,注册到 composer 的 conversation.input.model 座位(priority -1,顶替默认实现);数据复用内置 ui-model-selection 的 ctx.modelDirectories 每会话目录(session.models / session.selectModel),不引入第二份状态 - Host 半(lib/host.js):空实现——Node 侧 loader 以包根入口导入它(浏览器专属的 lib/client.js 必须只在 ./client 导出下被 web 端加载),无网络请求、无持久化状态 ## 要求与限制 Requirements and limitations - 需要 web profile 已装载 @deepseek-ai/dsh-client-ui-model-selection(web-app 内置,通常已存在);缺失时选择器座位保持空置(回退安全) - 动态安装后需重启 web 服务生效(与所有 profile bundle 一致) - 仅影响 composer 的模型选择座位;/model 弹层保持原样,但与面板共享同一份当前选择 ## License MIT不看 Star,人工一条条挑的。
把 DSH 的 settings.yaml 做成可视化看板:所有已注册的 settings namespace——包括官方界面从未覆盖的第三方插件配置——都渲染成可编辑表单。项目还早,但方向很对:告别手改 YAML。
给 DSH 的 DIY 轨迹可视化:把 agent 的计划与执行画成图,不用翻原始日志也能看清它在干嘛。项目还早,但补上了「一眼看懂 agent 在做什么」这个真实缺口。
从 Claude Code / Codex 把活派给 DSH:在宿主内拉起带分级预设的 DSH agent 会话,看原生子代理进度,还能借它的多模态桥给纯文本的 DSH 补上视觉和生图。编排型插件,把 DSH 变成其他编码 agent 的后端。