dsh-plugin-browser:DSH 插件市场入口与已装插件面板

前言

DSH 的「一切皆插件」会让一个 profile 里同时出现多个插件:有的启用,有的禁用,有的版本不同,有的只在某些加载阶段生效。日常开发中,常见需求不只是「再装一个插件」,而是先确认:当前到底加载了哪些插件、某个插件是否已装、想用的插件如何安装、安装后从哪里查看状态。

dsh-plugin-browser 解决的是这一类问题:把 awesome-dsh-plugin 目录、当前 profile 的插件加载状态、dshmarket 的安装 / 更新 / 卸载动作放在同一个面板里,同时给 agent 提供两个查询工具。

awesome-dsh-plugin 是社区目录,不应理解为 DeepSeek / 幻方的官方应用商店。资料称该目录包含 252+ 插件;具体维护者、仓库归属在已抓取资料中存在不一致,本文不按未核实信息下结论。

这是什么

dsh-plugin-browser 是一个 DSH 插件,定位为「插件市场入口 + 运维面板」。

它主要做三件事:

  • 浏览 awesome-dsh-plugin 目录;
  • 查看每个插件在当前 profile 的已装 / 加载状态;
  • 通过 dshmarket 执行安装、更新、卸载。

许可证为 MIT;peerDependencies 要求 @deepseek-ai/cordis ^4.0.1

核心功能

agent 工具

在会话里可以直接问 agent 查询插件状态。

list_plugins 用于列出当前加载 / 安装情况,返回字段包括:模块名、版本、启用状态、Cordis 加载阶段、entry id、bundle 层栈。

browse_plugin_market 用于按关键词找插件,返回目录匹配项,以及各自在当前 profile 的已装 / 加载状态与安装命令。

GUI 页签

GUI 入口位于:

设置 → 插件 → 插件浏览器

页签内有两个主要部分:

  • 市场:展示 awesome-dsh-plugin 目录卡片,支持分类过滤、搜索、星标排序,并显示已装版本与加载状态。
  • 已装插件:显示当前 profile 的 loader 快照,包括版本、来源、加载状态、主页。

市场卡片上的操作按钮包括:安装、更新、卸载、打开仓库。这些动作通过 dshmarket/dsh-market/* 端点执行;未安装 dshmarket 时,操作按钮会禁用并提示。

HTTP 路由

插件提供以下路由:

GET /dsh-plugin-browser/list
GET /dsh-plugin-browser/catalog
POST /dsh-plugin-browser/refresh

其中 list 返回本地 loader 快照,catalog 返回目录与已装 / 加载状态合并视图,refresh 用于清理目录缓存。

目录加载

目录加载采用三级回退:

  1. 在线;
  2. 内置快照 data/registry-snapshot.json
  3. dshmarket 快照。

进程内缓存为 10 分钟。

资料称数据全部来自本机 + awesome 目录 JSON,不额外访问网络。

安装与启用

推荐先把 dsh-plugin-browser 安装到目标 profile,例如 web

dsh plugin --profile web add github:CriscolTheCoder/dsh-plugin-browser

如果要使用市场页签里的安装 / 更新 / 卸载按钮,还需要同时安装 dshmarket

dsh plugin --profile web add dshmarket

本地开发时,也可以用 file: 指向源码目录。注意路径中不要有空格:

dsh plugin --profile web add file:C:/Users/xxx/dsh-plugin-browser

安装后,可在会话中使用 agent 工具,或打开 设置 → 插件 → 插件浏览器

卸载命令:

dsh plugin --profile web remove dsh-plugin-browser

典型用法

下面几个例子来自已核实资料中的使用方式。

  1. 会话里问 agent:列出当前加载的所有插件
    这适合检查当前 profile 的插件清单和加载状态。

  2. 会话里问 agent:帮我找一下 TUI 相关的插件
    这适合按需求找插件,并看到它是否已装、加载状态如何。

  3. 打开 设置 → 插件 → 插件浏览器,在市场页签中过滤、搜索、排序,然后对目标插件执行安装、更新、卸载或打开仓库。

  4. 如果只想查看本地插件快照,可以调用 GET /dsh-plugin-browser/list;如果需要合并目录和状态,可以调用 GET /dsh-plugin-browser/catalog

  5. 目录展示异常时,可以尝试 POST /dsh-plugin-browser/refresh 清理缓存。

适用场景与注意

适合:

  • 需要确认某个 DSH profile 当前加载了哪些插件;
  • 需要按目录找插件并安装;
  • 需要把插件状态查询交给 agent 完成;
  • 需要本地开发 DSH 插件时快速查看 loader 快照。

注意:

  • 该插件以当前 DSH 进程权限运行。安装前应先检查源码、许可证和依赖来源。
  • 许可证为 MIT,但安装命令中的仓库归属在已抓取资料中存在不一致:安装命令使用 CriscolTheCoder,README 抓取资料中出现 qichuang321。实际安装前请核对你使用的代码来源。
  • 市场动作依赖 dshmarket;未安装时按钮会禁用并提示。
  • 本地 file: 安装路径不要有空格。
  • 目录加载涉及在线、本地快照与 dshmarket 快照;资料称数据来自本机与 awesome 目录 JSON,不额外访问网络,但具体行为仍应结合实际运行环境核对。

结尾

dsh-plugin-browser 的价值在于把「查插件、看状态、执行安装 / 更新 / 卸载」放到同一个 DSH 插件面板里,并让 agent 能直接回答当前插件状态。

目录页:

https://www.skillhub.cn/plugins/qichuang321/dsh-plugin-browser

GitHub 仓库地址在已抓取资料中存在 qichuang321CriscolTheCoder 两种信息,未核实唯一仓库;安装命令为:

dsh plugin --profile web add github:CriscolTheCoder/dsh-plugin-browser
羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜