前言¶
在 DSH 裏,插件通常通過 dsh plugin 命令安裝、更新和移除。當存在 web、headless 和其他本地 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。
它解決的主要問題是:把按 name、author、description、npm package 搜索目錄,以及管理 web、headless 和其他本地 profile 的插件操作,放到一個可視化界面裏完成。
核心功能¶
- 瀏覽和搜索:可按
name、author、description、npm package查找插件。 - Profile 管理:覆蓋
web、headless和其他本地 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 中,可在
web、headless和其他本地 profile 之間管理插件;SpringBrand Desktop 只操作其 active profile。
配置與目標¶
可在 profile 配置中覆蓋以下字段:
profile
catalogUrl
restartDelayMs
profile:普通 DSH 進程使用的 profile;SpringBrand Desktop 使用其 active profile。catalogUrl:插件目錄地址。restartDelayMs:普通 DSH 進程重啓延遲,範圍500到30000毫秒。
profiles/node_modules 不會被作爲目標提供。
安全與注意事項¶
- 安裝只限於 catalog entries 中標記爲
bundle、installable、npm的條目。 - 服務端會再次從 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