DSH 插件面板 dsh-plugin-panel:在 Web GUI 中瀏覽、搜索並安裝社區插件

前言

使用 DSH 做本地工具鏈時,常見需求不只是執行一條安裝命令,而是要持續發現社區插件、Skill、客戶端 UI 與開發資源,並判斷本機是否已安裝、是否可更新、是否可卸載。直接搜索 GitHub、npm 或社區目錄,容易把“資源發現”和“本機安裝狀態”分開處理。

下面介紹一個 DSH 社區插件面板:它在 DeepSeek Harness Web GUI 中提供入口,把瀏覽、搜索、收藏、已安裝管理和官方 dsh plugin 安裝命令放在同一個界面裏。

需要說明的是,DSH 社區生態強調“一切皆插件”。這個面板屬於社區插件面板,不是 DeepSeek 或幻方官方應用商店;社區目錄與 DeepSeek / 幻方無官方從屬關係。

這是什麼

dsh-plugin-panel 是一個 DSH 社區插件市場面板,倉庫安裝來源爲 Dylan37670/dsh-plugin-panel,維護者爲 Dylan37670。

它在 DeepSeek Harness Web GUI 的側邊欄底部提供入口,點擊後打開右側抽屜。用戶可以在抽屜中瀏覽和搜索社區插件、Skill、客戶端 UI 與開發資源,查看中文描述、收藏條目、確認已安裝狀態,並通過官方 dsh plugin 命令完成安裝、更新或卸載。

核心功能

入口與目錄源

下面介紹面板的基本入口和目錄來源。

  • 側邊欄底部提供入口。
  • 點擊入口後打開右側抽屜。
  • 提供「精選 / 全部」雙目錄源。
  • 支持目錄緩存與手動刷新。
  • 分類包括:插件 / Skill / 客戶端 / 開發資源,並顯示計數。

搜索、排序與中文翻譯

面板支持以下瀏覽能力:

  • 中英文關鍵詞搜索。
  • 排序方式包括:默認 / 星標最多 / 星標最少 / 名稱 A-Z / 名稱 Z-A / 最新創建 / 最早創建。
  • 排序選擇會持久化到設置。
  • 描述中文翻譯:精選條目內置人工翻譯。
  • 支持一鍵切換「中文 / EN」。
  • 支持按需翻譯與回退。

收藏、已安裝與操作記錄

面板會把本機狀態保存在本地:

  • 收藏管理持久化於 ~/.dsh/plugin-panel/state.json。
  • 可篩選“只看收藏”。
  • 已安裝管理會讀取 profile 的依賴、bundle 列表、cordis.patch.yml 用戶層註冊以及 ~/.dsh/skills。
  • 操作記錄最多保存 100 條,位於 ~/.dsh/plugin-panel/operations.json。
  • 操作記錄不保存命令原始輸出或 API Key。

安裝、更新與卸載

面板的安裝、更新、卸載動作不直接執行任意命令,而是轉發到官方 dsh plugin 命令。資料中給出的生命週期命令形式爲:

dsh plugin --profile <profile> add|remove <spec>

執行前會經過以下步驟:

  1. 按鈕兩段式確認,即需要再次點擊才執行。
  2. 操作前備份 profile 相關文件到:
~/.dsh/plugin-panel/backups/<時間戳>/

備份文件包括:

package.json
cordis.patch.yml
pnpm-lock.yaml
  1. 調用官方 dsh plugin 命令。
  2. 進行結果校驗。
  3. 失敗時自動恢復備份。

安裝來源爲目錄中列出的倉庫 / npm 包;面板不執行任意命令,只轉發到官方 dsh plugin。

語義搜索

面板提供語義搜索,用於在關鍵詞搜索之外做向量語義檢索。

基本配置如下:

  • 搜索框右側有「語義搜索」勾選框。
  • 設置區有「嵌入模型(語義搜索)」。
  • 需要配置 API Key,必填。
  • 模型默認爲 BAAI/bge-m3。
  • API 地址默認爲:
https://api.siliconflow.cn/v1

配置完成後,可點擊「建立向量索引」。向量索引會緩存到:

~/.dsh/plugin-panel/vectors.json

關於 API Key 的本地保存,資料中明確:

  • API Key 僅在明確點擊“保存嵌入設置”後寫入本地:
~/.dsh/plugin-panel/state.json
  • 請求直達配置的 embeddings 端點,默認是硅基流動。
  • 面板不記錄 Key。

環境自檢與面板自更新

面板還提供兩類維護能力:

  • 環境自檢:顯示 dsh CLI / pnpm 是否可用;pnpm 缺失時一鍵安裝。
  • 面板自更新:版本檢查、更新面板按鈕、重啓提醒。
  • 面板自更新遇到網絡 / GitHub / pnpm 拉取類臨時失敗時自動重試一次。
  • 失敗記錄保留安全錯誤類別,不保存原始命令輸出、API Key 或令牌。

作者、教程與反饋

面板設置區提供作者 / 教程 / 反饋入口。資料中說明會提供抖音與 B 站主頁鏈接,但未在所給事實中列出具體 URL,因此本文不寫具體鏈接。

安全邊界

面板在本地 DSH 環境中運行,會讀取本機 profile、依賴、bundle、Skill 狀態,並調用本機 dsh plugin 命令。資料中給出的安全邊界包括:

  • HTTP API 僅接受 loopback 請求。
  • 安裝來源爲目錄中列出的倉庫 / npm 包。
  • 不執行任意命令,只轉發到官方 dsh plugin。
  • 操作記錄不保存命令原始輸出或 API Key。
  • 面板不記錄語義搜索的 API Key。

安裝與啓用

從 GitHub 安裝

在已安裝 DSH CLI 的環境中,使用資料給出的官方插件命令安裝:

dsh plugin --profile web add github:Dylan37670/dsh-plugin-panel

這條命令會把倉庫安裝到 web profile。

安裝或更新後,需要重啓 DSH Web GUI。重啓後,側邊欄底部會出現“插件面板”。

從源碼掛載

如果是開發者從源碼構建,資料給出的步驟如下:

git clone https://github.com/Dylan37670/dsh-plugin-panel.git
cd dsh-plugin-panel
npm install
npm run build && npm test
dsh plugin --profile web add .
dsh --profile web --dump-config | grep plugin-panel-market

前四步用於克隆倉庫、安裝依賴、構建並運行測試。dsh plugin --profile web add . 用於把本地源碼掛載到 web profile。最後一條命令用於檢查配置中是否出現 plugin-panel-market。

重啓要求

安裝或卸載後,需要重啓 GUI 纔會加載或卸載插件本體。這是 DSH 的 bundle 機制要求。

在重啓前,面板自身仍可繼續瀏覽。

典型用法

瀏覽與篩選

先做以下操作:

  1. 重啓 DSH Web GUI。
  2. 點擊側邊欄底部的“插件面板”。
  3. 在右側抽屜中切換「精選 / 全部」目錄源。
  4. 選擇分類:插件 / Skill / 客戶端 / 開發資源。
  5. 輸入中英文關鍵詞搜索。
  6. 選擇排序方式,例如名稱 A-Z、最新創建、最早創建。
  7. 收藏感興趣的條目,並切換“只看收藏”。

使用語義搜索

如果需要語義檢索,按下面步驟配置:

  1. 找到搜索框右側的「語義搜索」勾選框。
  2. 打開設置區中的「嵌入模型(語義搜索)」。
  3. 填寫 API Key。
  4. 保持或修改模型,默認爲 BAAI/bge-m3。
  5. 保持或修改 API 地址,默認爲:
https://api.siliconflow.cn/v1
  1. 點擊「建立向量索引」。
  2. 等待本地生成並緩存:
~/.dsh/plugin-panel/vectors.json

之後輸入搜索詞,面板會進行向量語義檢索。

安裝、更新或卸載一個條目

在面板中點擊目標條目的安裝、更新或卸載按鈕後,會先進入兩段式確認。確認後,面板會執行以下流程:

  1. 備份當前 profile 的關鍵文件:
package.json
cordis.patch.yml
pnpm-lock.yaml

備份位置爲:

~/.dsh/plugin-panel/backups/<時間戳>/
  1. 轉發到官方 dsh plugin 命令。資料中給出的命令形式爲:
dsh plugin --profile <profile> add|remove <spec>
  1. 校驗結果。
  2. 如果失敗,自動恢復備份。

維護者重建目錄

如果維護目錄數據,資料給出的命令如下:

npm run build
node scripts/build-catalog.mjs --reset
node scripts/validate-catalog.mjs catalog/catalog.json
GITHUB_TOKEN=<token> node scripts/build-catalog.mjs

第一條先執行構建。第二條用於全量重建目錄數據。第三條用於校驗生成的 catalog/catalog.json。最後一條帶 GITHUB_TOKEN 的命令用於在已提供 token 的情況下執行目錄構建。

適用場景與注意

適合誰用

這個面板適合以下使用場景:

  • 使用 DSH Web GUI,希望在一個界面內瀏覽社區插件、Skill、客戶端 UI 與開發資源。
  • 需要中英文關鍵詞搜索,或需要語義搜索。
  • 需要收藏常用條目,並查看本機已安裝狀態。
  • 希望通過官方 dsh plugin 命令完成安裝、更新或卸載,而不是手動複製多條命令。
  • 需要查看 dsh CLI 與 pnpm 的本地環境狀態。

安裝前注意

下面這些注意事項來自資料或通用安全要求:

  • 面板在本地 DSH 環境中運行,會訪問當前 profile、依賴、bundle、Skill 狀態,並調用本機 dsh plugin 命令。安裝前應檢查源碼、目錄來源和許可證。
  • 資料中未明確具體許可證類型;使用前請自行查看倉庫中的許可證信息並確認。
  • 所給資料中版本編號表述不完全一致,例如出現 v6.16、0.6.16、v0.6.16 等表述。本文不寫具體版本號;安裝或更新前請以倉庫當前信息爲準。
  • 安裝或卸載後需要重啓 DSH Web GUI,插件本體纔會加載或卸載。
  • 面板 HTTP API 僅接受 loopback 請求。
  • 操作記錄最多 100 條,不保存命令原始輸出或 API Key。
  • 語義搜索的 API Key 只在明確保存後寫入本地,並且面板不記錄 Key。
  • 社區目錄是獨立社區資源,不是 DeepSeek 或幻方官方應用商店。

結尾

dsh-plugin-panel 的價值,是把社區資源瀏覽、中文檢索、收藏、已安裝狀態和本地 dsh plugin 生命週期放在同一個 Web GUI 抽屜裏。它沒有繞過官方插件命令,而是把發現、確認、備份、執行和回滾串成一個可檢查的流程。

GitHub 倉庫:

https://github.com/Dylan37670/dsh-plugin-panel

社區目錄頁 URL 未在所給事實中明確列出,因此本文不寫具體目錄頁地址。

羽毛球分组比赛记分
小程序二维码

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

小夜