DeepSeek Harness 插件

LinJohn8/dsh-model-group-collapse

Star 数 ★ 0 分类 UI 增强 收录于 2026-10-22

让输入框模型菜单的厂商分组可折叠,默认只展开当前模型所属厂商。

安装

# GitHub 源码(首次需按提示配置 allowBuilds 构建授权后重试)

dsh plugin --profile web add github:LinJohn8/dsh-model-group-collapse

装任何插件都等于在你的机器上跑第三方代码,权限和你本人一样大——能读你的文件、用你的凭据、访问网络,工具审批管不到它。GitHub 来源的插件还会在安装时执行构建脚本——pnpm 默认拦截,所以安装可能停在 ERR_PNPM_GIT_DEP_PREPARE_NOT_ALLOWED 或 ERR_PNPM_IGNORED_BUILDS;dsh 会打印出需要添加的确切键名,把它加进该 profile 的 pnpm-workspace.yaml 的 allowBuilds 下,重跑一次即可装上。放行构建本身就是一次信任判断:请只安装可信来源,并尽量锁定 commit(github:owner/repo#sha)。

README

English | 简体中文

一个 DeepSeek Harness(DSH)Web UI 插件:让输入框模型菜单里的厂商分组可以折叠。

收起状态

功能

原生模型选择器会把所有厂商分组(DeepSeek 账号、官方端点、自定义厂商……)全部展开。厂商多了以后,菜单就成了一堵“模型墙”。

本插件在这层菜单上加了折叠能力:

  • 每个厂商标题变成带三角箭头的可点击开关(▸ 收起 / ▾ 展开)。
  • 默认全部收起。
  • 当前模型所属的厂商默认展开。
  • 点击标题即可切换该厂商的展开/收起,三角箭头随之翻转,模型行显示或隐藏。
  • 搜索时命中的厂商会临时展开以显示结果;清空搜索后恢复折叠状态。
  • 其余行为完全不变:两级“模型 / 推理等级”菜单、搜索、键盘导航、切换中的加载动画、官方模型标签徽章(如 “1017”)都照常工作。

展开状态

在插件管理器中禁用本插件,菜单立即恢复原生外观。

安装

本地目录(开发)

  1. 将本文件夹放在固定位置。
  2. 在 DSH 插件管理器中从本地目录安装该 bundle,或使用 CLI: dsh plugin install /path/to/dsh-model-group-collapse
  3. 重新加载 Web UI 并打开会话。

从 npm(发布后)

dsh plugin install dsh-model-group-collapse

从 GitHub

dsh plugin install github:LinJohn8/dsh-model-group-collapse

兼容性

  • DeepSeek Harness >=0.2.1-rc.2(客户端插件 API dsh.client)。
  • 在原生模型选择器之上工作:不替换任何组件,因此完全跟随宿主自身状态(流式锁定、切换中、搜索过滤),不重复维护一份状态。

实现原理

原生模型菜单把厂商分组渲染为 section[data-menu-group],每组有一个 [data-menu-group-heading] 标题和若干 button[role="menuitemradio"] 模型行。 客户端部分在菜单打开期间观察文档并逐组增强:

  • 标题加上三角箭头并变为 role="button" 开关;
  • 收起的组用 display:none 隐藏模型行,并置 aria-expanded="false";
  • 折叠状态按组保存、每次打开菜单重置,并用当前模型行的 aria-checked 决定默认展开哪一组。

样式全部内联限定(mgc- 前缀、--dsw-alias-* 主题令牌),且每次 DOM 写入都做等值判断,避免菜单自身的 MutationObserver 重入。

许可证

MIT

内容来自项目 README(GitHub)↗

链接

同类插件

查看整个分类 →

社区评论

评论公开保存在 GitHub Discussions。加载评论会连接 GitHub 和 Giscus;发表内容需要 GitHub 账号。