前言¶
DSH 的理念是「一切皆插件」。在 dsh web 中找插件時,通常需要離開設置頁,去 GitHub 搜索倉庫、看說明、確認安裝方式,再回來執行安裝命令。dsh-plugin-library-search 把這個過程放進「設置 → 插件」頁:它新增一個「插件庫搜索」標籤,展示 GitHub 上帶 topic:dsh-plugin 的倉庫,支持瀑布流瀏覽、關鍵詞過濾、安裝和跳轉倉庫頁。
它對接的是 GitHub 上帶 topic:dsh-plugin 的倉庫集合,不是 DeepSeek 或幻方官方的應用商店。
這是什麼¶
dsh-plugin-library-search 是一個 DSH 插件。安裝後,它會在 DSH「設置 → 插件」頁新增「插件庫搜索」標籤頁,位置在「插件列表」右側。
基本信息如下:
- 倉庫:
AiLi1337/dsh-plugin-library-search - 維護者:
AiLi1337 - 許可證:
MIT package.json聲明version爲0.1.0engines.node要求>=18
核心功能¶
下面介紹已覈實的幾項能力。
- 在 DSH「設置 → 插件」頁新增「插件庫搜索」標籤頁。
- 對接 GitHub
topic:dsh-plugin倉庫集合,經 GitHub Search API 按 Star 排序,並支持搜索。 - 瀑布流卡片展示插件圖片、插件名稱、插件描述。
- 每張卡片提供「安裝」按鈕與「跳轉 GitHub 插件頁」鏈接。
- 搜索框支持輸入名稱、描述、作者關鍵詞過濾。
- 滾動到列表底部時自動加載下一頁。
- 模型可通過
tools服務調用以下工具: plugin_library_searchplugin_library_installplugin_library_installed- GitHub Search API 被限流或失敗時,自動回退抓取
github.com/topics/dsh-plugin頁面。 - 支持 bundle 插件安裝後寫入
dsh.profile.bundles層棧,並重啓dsh web生效。 - 支持純 cordis 插件安裝後寫入 profile 的
cordis.patch.ymlinsert 行,並配置 HMR 即時掛載。
安裝與啓用¶
先安裝插件。資料中給出的推薦安裝命令是:
dsh plugin --profile web add dsh-plugin-library-search
也可以直接從 GitHub 倉庫安裝:
dsh plugin --profile web add "github:AiLi1337/dsh-plugin-library-search"
安裝完成後,重啓 dsh web,刷新瀏覽器,進入「設置 → 插件 → 插件庫搜索」。
這個插件聲明 dsh.bundle,會進入 dsh.profile.bundles 層棧。
典型用法¶
使用步驟可以按下面順序來。
1、打開「設置 → 插件」,點擊右側「插件庫搜索」標籤。
默認展示官方插件庫按 Star 排序的倉庫列表。也可以在搜索框輸入關鍵詞過濾,關鍵詞可以是名稱、描述或作者。
2、滾動瀏覽列表。
滾動到列表底部會自動加載下一頁。資料說明每頁約 100 個,最多加載 500 個。
3、點擊卡片上的「安裝」按鈕。
安裝時會解析倉庫 package.json 裏的 npm 包名。如果倉庫已發佈到 npm,優先執行類似:
pnpm add <npm包名>
如果未發佈到 npm,則回退爲類似:
pnpm add github:<owner>/<repo>
4、根據插件類型完成掛載。
- bundle 插件安裝後寫入
dsh.profile.bundles層棧,需要重啓dsh web後生效。 - 純 cordis 插件安裝後寫入 profile 的
cordis.patch.ymlinsert 行,配置 HMR 即時掛載,刷新頁面即可看到。
5、點擊「GitHub ↗」在新標籤頁打開插件倉庫。
6、在對話中讓模型調用插件工具。
例如可以輸入:
幫我搜索一下插件庫裏的 xxx 插件
或:
安裝 vlln/plugin-registry
模型會調用對應工具。重啓後,新會話即可看到這些工具。
適用場景與注意¶
這個插件適合使用 dsh web、希望直接在設置頁瀏覽和安裝 topic:dsh-plugin 插件的人,也適合希望讓模型直接搜索或安裝插件的場景。
使用前需要注意以下幾點。
- 插件以當前 dsh 進程權限運行。安裝前應檢查源碼與許可證。
- GitHub Search API 未認證限流爲 10 次/分鐘,超限返回
HTTP 403。 - 限流或失敗時,插件會自動回退抓取
github.com/topics/dsh-plugin頁面。結果一致,但排序爲 topic 默認順序,不是按 Star。 - 推薦在啓動 dsh 的環境裏設置以下變量之一:
GITHUB_TOKEN
GH_TOKEN
設置後,搜索配額提升到 30 次/分鐘。宿主端另有 5 分鐘緩存,用於減少請求。
- 一鍵安裝依賴
pnpm在 web 服務進程的PATH中。 - 從 git 源安裝的倉庫若帶
prepare腳本,pnpm可能需要先在pnpm-workspace.yaml的allowBuilds中放行。 - 安裝後插件列表的「已安裝」標記基於包名匹配。未發佈到 npm 的倉庫以安裝成功響應爲準。
參考¶
GitHub 倉庫:
https://github.com/AiLi1337/dsh-plugin-library-search