@springbrand/dsh-plugin-marketplace:DSH 的可視化插件市場

前言

在 DSH 裏,插件通常通過 dsh plugin 命令安裝、更新和移除。當存在 webheadless 和其他本地 profile 時,命令行方式容易分散:需要反覆切換 profile,也不容易快速查看某個 profile 下已經安裝了哪些依賴。

下面介紹 @springbrand/dsh-plugin-marketplace。它是一個面向 DeepSeek Harness profiles 的可視化插件市場,內置在 DSH Web settings,並隨 SpringBrand Desktop 提供。它不是官方應用商店,而是一個社區目錄;插件本身仍是第三方代碼。

這是什麼

一句話定位:給 DSH profiles 提供一個圖形化的插件目錄、安裝、更新、移除入口。

維護方:springbrand-lab
許可證:MIT
適用位置:DSH Web settings 中的 Settings → Plugin Marketplace,以及 SpringBrand Desktop。

它解決的主要問題是:把按 nameauthordescriptionnpm package 搜索目錄,以及管理 webheadless 和其他本地 profile 的插件操作,放到一個可視化界面裏完成。

核心功能

  • 瀏覽和搜索:可按 nameauthordescriptionnpm package 查找插件。
  • Profile 管理:覆蓋 webheadless 和其他本地 profile;SpringBrand Desktop 將操作限制在其 active profile。
  • 安裝、更新、移除:在同一個市場界面裏完成。
  • Installed 視圖:同時覆蓋 catalog entries 和不在 catalog 中的 profile dependencies。
  • Marketplace self-updates:在 SpringBrand Desktop 中支持自身更新。
  • 生效時機:區分當前 profile 與其他 profile 的變更時機。

安裝與啓用

先確認環境滿足 Node.js >=22.19

如果還沒有安裝 DSH,先安裝 pnpm 和 DSH:

npm install --global pnpm @deepseek-ai/dsh

確認 DSH 可用:

dsh --version

web profile 安裝這個市場插件:

dsh plugin --profile web add @springbrand/dsh-plugin-marketplace

啓動 DSH Web:

dsh web

如果已經安裝 DSH,可以直接執行:

dsh plugin --profile web add @springbrand/dsh-plugin-marketplace
dsh web

如果重新打開終端後仍然找不到 dsh,使用 npx 方式:

npx @deepseek-ai/dsh plugin --profile web add @springbrand/dsh-plugin-marketplace
npx @deepseek-ai/dsh web

經過上面的步驟,在瀏覽器中打開 DSH Web 後,進入 Settings → Plugin Marketplace,即可瀏覽和搜索插件目錄。

典型用法

  • 打開 Settings → Plugin Marketplace,按名稱、作者、描述或 npm 包名搜索。
  • 對選定 profile 執行安裝、更新或移除。
  • 在 Installed 視圖中查看當前 profile 已安裝的包,包括 catalog entries 和不在 catalog 中的 profile dependencies。
  • 在普通 DSH 中,可在 webheadless 和其他本地 profile 之間管理插件;SpringBrand Desktop 只操作其 active profile。

配置與目標

可在 profile 配置中覆蓋以下字段:

profile
catalogUrl
restartDelayMs
  • profile:普通 DSH 進程使用的 profile;SpringBrand Desktop 使用其 active profile。
  • catalogUrl:插件目錄地址。
  • restartDelayMs:普通 DSH 進程重啓延遲,範圍 50030000 毫秒。

profiles/node_modules 不會被作爲目標提供。

安全與注意事項

  • 安裝只限於 catalog entries 中標記爲 bundleinstallablenpm 的條目。
  • 服務端會再次從 catalog 解析 npm 包名,而不是接受瀏覽器傳入的任意來源。
  • 更新和移除只接受當前選定 profile 中已經安裝的合法 npm 包名。
  • mutation endpoints 只接受 same-origin JSON POST 請求,body 限制爲 8 KiB
  • 普通 DSH 命令以 argument arrays 啓動,不通過 shell 執行。
  • 同一時間只運行一個 plugin operation。
  • 插件是第三方代碼;目錄收錄不代表安全背書。安裝前應檢查源碼、依賴和許可證。

這個插件以當前 DSH 進程的環境執行相關插件操作,因此安裝前應確認來源可信,並覈對許可證。

卸載

可以從市場的 Installed 視圖中移除,或執行:

dsh plugin --profile web remove @springbrand/dsh-plugin-marketplace

結尾

@springbrand/dsh-plugin-marketplace 的價值,是把 DSH profiles 的插件瀏覽、安裝、更新、移除和已安裝依賴查看集中到 Web settings 中。它適合需要管理多個本地 profile、或希望在 DSH Web 界面裏查看插件目錄的 DSH 用戶。

目錄入口:DSH Web 中的 Settings → Plugin Marketplace
GitHub:springbrand-lab/dsh-plugin-market

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

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

小夜