Skip to content

Releases: DDTomTom/dsh-plugin-manager

v0.2.0 — 插件按功能分类筛选

Choose a tag to compare

@DDTomTom DDTomTom released this 25 Oct 20:06

注意:以下内容由AI生成,所有人含量都在这一句里了。

新增:按功能分类筛插件

参考插件市场的分类条,插件管理器页头下方现在有一排分类 chip:

全部 43 | 插件与市场 3 | 主题与外观 2 | UI 增强 5 | 身份与通信 8 | 记忆 5 |
用量与计费 3 | 工具与能力 7 | 会话与消息 3 | 浏览器与网页 1 |
开发与调试 1 | 模型与账号接入 3 | 内容与媒体 1 | 安全与权限 1
  • 点 chip 只看该类,计数来自当前 profile 的实际清单,随刷新更新。
  • 每张插件卡片标题旁多一个分类徽标,不用点开也能看出它属于哪类。
  • 空分类的 chip 自动隐藏;过滤后没有结果会显示空态提示。
  • 「其他」兜底:关键词没命中的插件归到这里,方便回头补规则。

分类是怎么来的

插件本身没有分类字段,因此按 名称 + 描述 + 包名 做关键词推断,规则表写在 client.js 顶部的 CATEGORIES 里:

  • 英文关键词按词边界匹配(ui 不会命中 building,pet 不会命中 petting),大小写不敏感;
  • 中文关键词按子串包含判断;
  • 规则有优先级:例如「余额挂件」先命中 UI 关键词,就不会被计费关键词抢走。

全部离线判断,不请求网络,也不改写任何插件。

验证情况

  • 在 DSH 0.2.1-rc.3 desktop profile 实测:43 个非原生插件,13 个分类 chip 计数之和 = 43,没有落进「其他」。
  • 逐个点过「记忆」「内容与媒体」「安全与权限」「其他」「全部」:过滤、计数、徽标、空态均正常。
  • 关键词补了两轮:机器人 / 微信 / 飞书 / 钉钉 / telegram / whatsapp / slack / discord / custom mode / system prompt(身份与通信)、宠物 / pet(UI 增强),修掉了 3 个误落「其他」的插件。

已知限制

  • 分类是启发式而非插件元数据,个别插件的归类可能与直觉不同;改 CATEGORIES 后刷新页面即可生效。
  • 客户端代码改动仍需整页刷新(Ctrl+R)才会加载新版 client.js。
  • 仅深色主题下做过视觉验证。

升级方式

目录 link 安装:remove_bundle → install_bundle 指向本目录,然后整页刷新。

v0.1.0 — 侧栏插件管理器

Choose a tag to compare

@DDTomTom DDTomTom released this 25 Oct 16:05

注意:以下内容由AI生成,所有人含量都在这一句里了。

v0.1.0 — 侧栏插件管理器

首个版本。给 DeepSeek Harness 加一个侧栏插件管理器:把当前 profile 里所有非 DSH 原生的插件集中到一页,逐条看描述、启用 / 停用、卸载。

功能

  • 侧栏入口位于「插件市场」正下方(sidebar.footer.action,order 10),点击后在主区域打开管理器,不额外弹窗。
  • 列出全部 availability === "profile" 的插件包:插件市场下载、npm 直装、GitHub 直装、本地 link 自编都在列(当前环境 28 个)。
  • 卡片显示:标题、版本、来源徽标(npm 市场 / GitHub 直装 / 本地自编)、包名、功能描述、启用状态;宿主报告的问题(例如版本不兼容 incompatible-version)直接显示在卡片上。
  • 整包开关调用 setBundleEnabled;「组件 (N)」展开该包在 Loader 里的每一行,可逐行开关(setPluginEnabled)。
  • 卸载两步确认(removeBundle):点「卸载」变「确认卸载」,再点一次才执行,可取消。
  • 刷新重新读取宿主清单;读取失败在页面上显示原因,面板用错误边界兜底,不会白屏。

安装

git clone https://github.com/DDTomTom/dsh-plugin-manager.git

然后在 DSH 里用插件管理器安装这个目录(bundle 安装,目标填绝对路径),例如:

plugin_manager → action: install_bundle → target: /绝对路径/dsh-plugin-manager

装完刷新页面(web)/ 重开窗口(桌面版)。侧栏底部、既有「插件市场」的下一行会出现「插件管理」。

验证情况

  • 已实测:面板打开、清单加载、整包关→开(宿主返回 application: applied)、组件行关→开、卸载确认 / 取消、刷新、错误显示、异常兜底。
  • 未实测:真正执行卸载(破坏性操作,只验证到确认闸门)、浅色主题观感。
  • 测试后已把被改动的插件恢复原状(dsh-auto-paste、dsh-bili-pond)。

已知限制

  • 列表以 bundle 为单位;没有 bundle patch 的裸依赖不会单独成卡。
  • 客户端代码改动需要整页刷新(Ctrl+R)才会加载新版 client.js。
  • 只在深色主题下做过视觉验证;样式只使用 --dsw-alias-* 主题 token。

环境

  • DSH 0.2.1-rc.3,desktop profile。
  • 无第三方 npm 依赖;Host 半边为空实现,全部逻辑在浏览器半边。