Pular para o conteúdo principal
L

dsh-plugin-groups

lerwa2025-a11y/dsh-plugin-groups

Adds a My Groups tab to the DSH Installed plugins page: custom groups with drag reordering, colored text tags, Chinese notes, group locking, real enable switches, and two preset snapshot slots.

Instalar

dsh plugin --profile web add github:lerwa2025-a11y/dsh-plugin-groups

README

dsh-plugin-groups · 插件分组视图

给 DeepSeek Harness(DSH)的「已安装插件」页加一个 「我的分组」标签页,让你按自己的方式整理插件。

本插件仅调用 DSH 官方的插件管理接口实现。

能做什么

  • 分组:把插件拖进自定义分组,组之间也可拖拽排序
  • 搜索:按插件名、分组名、标签、备注实时过滤,分组名命中时整组展开
  • 一键批量开关:整组「全部启用 / 全部停用」,逐条按序执行,带进度
  • 预设快照:两个槽位,一键保存/还原整套配置(开关、组件、分组、标签备注)
  • 组件健康检测:插件开着但内部零件没跑齐时会标出来(组件 2/3)
  • 彩色文字标签:给插件贴「工具型 / 界面型 / 桥接型」这类文字标签,9 种颜色
  • 中文备注:写一句备注,覆盖插件的英文原始简介
  • 真实开关:显示每个插件的真实启用/停用状态,并在本页直接切换
  • 分组锁定:锁定后整组固定,不能拖动、改名、删除、启停(「详情」仍可打开)
  • 自动隐藏内核插件:只列用户可管理的插件,DSH 内核那些不可开关的不出现

界面一览

+ 新建分组  ↻ 刷新  ⌕ 搜插件、分组、标签、备注 │ ▾ 全部展开  🗂存为预设 ⚡应用预设    v0.3.1

▾ 工具型插件(组名)  3/5    ⚡全部启用 ⛔全部停用 +添加插件 🔓 🗑
  ● dsh-click  [工具型] [吃token]   ↗详情 🏷标签 ✎备注 ↩移出  [已启用]
  ● modsearch   [工具型]            ↗详情 🏷标签 ✎备注 ↩移出  [已禁用]

更新记录

v0.3.1

  • 修复 package.json 的 BOM:v0.3.0 因文件头带 BOM,DSH 安装校验时 JSON.parse 报错,装完会被回滚

v0.3.0

  • 新增搜索:顶部工具栏一个搜索框,实时过滤插件和分组
    • 可搜:插件名(中文标题 + 包名)、分组名、标签、备注、插件简介
    • 分组名命中时整组显示,而不是只显示组内碰巧匹配的插件
    • 所在的组会自动展开;清空后恢复原来的展开/收起状态
    • 计数始终显示整组真实数量——搜索是看的角度,不改数据
    • Esc 或右侧 × 清空
  • 工具栏版本号改为读 package.json:原来显示的是客户端构建戳,看不出装的是哪个版本

v0.2.3

  • 分组一键批量开关:每个分组标题旁新增「全部启用 / 全部停用」
    • 逐条按序调用官方接口,带 done/total 进度
    • 遵守锁定的分组、无法切换的插件、已在目标状态的插件都会被跳过
    • 按钮会根据「还有几个要改」自己禁用,两个方向不会同时可点

v0.2.2

  • 修复应用预设后锁定分组成员被踢进「未分组」的 bug(新增 present 字段区分「存在」与「可开关」)

v0.2.1

  • 数据改存 DSH_HOME/dsh-plugin-groups/,更新插件不再丢分组

v0.2.0

  • 预设快照:两个固定槽位,一键保存/还原整套配置
  • 组件健康检测:插件开着但内部零件没跑齐时会标出来
  • 分组标题圆点:表示组内组件的健康度,独立于插件级计数
  • 第三方数量统计:工具栏统计条显示非官方插件数

安装

方式一:从 npm 安装(推荐)

在 DSH 的插件管理器里搜索 dsh-plugin-groups 安装即可,或命令行:

npm install dsh-plugin-groups

方式二:从 GitHub 安装

npm install github:lerwa2025-a11y/dsh-plugin-groups

方式三:本地目录安装

  1. 把这个仓库克隆到本地任意目录
  2. 在 DSH 的插件管理器中选择「从本地目录安装」,指向本目录
  3. 安装后在「设置 → 插件 → 我的分组」即可看到

说明:本仓库同时提供源码;npm 上的包名是 dsh-plugin-groups。

数据存哪

插件把你的分组、标签、备注存在 DSH 的 profile 目录下一份 JSON 文件(plugin-groups.json),而不是浏览器缓存,所以换电脑、清缓存都不丢。

数据在 DSH_HOME/dsh-plugin-groups/,不在插件包内——升级或卸载插件都不会丢掉它。想连数据一起清,手动删这个文件夹。

技术要点(给想改的人)

  • 纯原生实现,无构建工具,无 npm 依赖
  • Client 半(client.js)提供全部界面;Host 半(index.js)只提供一个小 HTTP 路由落盘,并顺带返回包版本号
  • 插件状态通过官方 ctx.remote.pluginManager 读写,与官方页面完全一致
  • 内置错误边界:界面出错时显示错误信息而非白屏
  • 数据只走官方接口 + 本地 JSON,不联网、不上传

许可证

MIT © lerwa2025-a11y

Plugins relacionados