dsh-local-market:DSH 中文插件市場

前言

DeepSeek Harness(DSH)的生態靠社區插件擴展能力,插件條目分散在 GitHub 主題與社區目錄裏。若只在倉庫裏翻 README,或依賴英文爲主的入口,找插件、看說明、對照安裝命令往往要來回切換。社區裏另有 dshmarket 等市場類插件;本項目在 DSH 內單獨提供 「中文市場」 Tab,與「插件市場」命名區分,避免兩個入口混淆。

下面介紹維護者 YML0823 開源的 dsh-local-market:從 awesome-dsh-plugin 拉取目錄,支持中文檢索、分類篩選、界面預覽,並在本機調用 dsh plugin 一鍵安裝。它可作爲 DSH 插件嵌入客戶端,也可獨立網頁運行。項目爲 MIT 許可,當前 package 版本爲 1.0.3;GitHub 星標數爲 1。這是獨立社區界面,不是 DeepSeek 或幻方官方應用商店。

這是什麼

dsh-local-market 是給 DeepSeek Harness 用的中文插件市場前端與 Host:運行時讀取社區目錄 https://awesome-dsh-plugin.com/plugins.json,規範化後供 UI 展示;安裝時只使用目錄裏登記好的 spec,不託管插件包本身。

結構上分兩塊:

  1. Host 插件(plugin/index.js):在 DSH 的 webServer 上掛載 /dsh-local-market/,提供靜態頁、實時目錄 API、截圖代理和安裝 API。
  2. Client 插件(plugin/client.js):向 plugins.tab 註冊「中文市場」,用 iframe 打開市場頁面。

運行時會讀取本機 DSH_HOME、profile 和 dsh CLI,不包含作者機器上的路徑或賬號。

核心功能

實時目錄

  • 頁面加載時從上游拉取最新目錄,每 10 分鐘自動同步;頂欄「同步」可手動刷新。
  • 緩存 10 分鐘,避免每次打開都重新下載。
  • 網絡不可用時回退到倉庫內快照 public/data/plugins.json。
  • 上游條目含中文說明、截圖、安裝參數、Star 與下載量等。

獨立版若上游不可訪問,可設置鏡像:

$env:CATALOG_LIVE_URL="https://your-mirror.example/plugins.json"
node server.js

DSH 插件版默認用代碼裏的上游地址;需要鏡像時可改 plugin/index.js 中的 LIVE_URL。

中文檢索與篩選

  • 按插件名、作者、中文說明、分類和能力搜索,支持中英文關鍵詞。
  • 23 個能力分類;支持「有界面圖 / npm / GitHub / 已安裝」等快速篩選與排序。

界面預覽

展示作者提供的截圖;無截圖時用分類插畫封面,詳情頁支持多圖放大。截圖經本地 /api/image 代理並按 URL 緩存,瀏覽器不直接訪問截圖主機。

一鍵安裝與狀態

點擊安裝後,Host 會:

  1. 按條目 id 在當前目錄查出精確安裝 spec,不接受任意用戶輸入;
  2. 校驗 profile 名稱與 spec 格式;
  3. 以當前用戶權限運行本機 dsh CLI;
  4. 通過 SSE 把 stdout/stderr 實時推回頁面;
  5. 成功後記入「已安裝」。

目錄中的安裝參數示例形式爲:

dsh plugin --profile web add dsh-meme
dsh plugin --profile web add github:owner/repo
dsh plugin --profile web add "https://github.com/.../release.tgz"

安裝前頁面會展示作者、倉庫、npm 包、版本、權限聲明與第三方代碼提示。已安裝狀態讀取當前 DSH profile 的真實依賴;在 DSH 別處安裝的插件約 5 秒內同步到「已安裝」。UI 支持桌面、平板、手機。

安裝與啓用

從 GitHub 安裝

把 <profile> 換成你的 DSH profile(例如 web 或 desktop):

dsh plugin --profile <profile> add github:YML0823/dsh-local-market

安裝後重啓一次 DSH(或按提示重載)。打開左側 插件,頂欄會出現:

已安裝   中文市場   插件市場   發現

點擊 中文市場 即可使用;在 已安裝 裏也可啓停 dsh-local-market 本體。

從本地 tarball 安裝

已發佈版本見 GitHub Releases · v1.0.3:

dsh plugin --profile web add "file:F:/path/to/dsh-local-market-1.0.3.tgz"

自行構建 tarball:

node scripts/build-plugin.js

產物在 dist/dsh-local-market-1.0.3.tgz。

典型用法:獨立網頁版

需要 Node.js 20+,無需安裝 npm 依賴。獨立版與 DSH 插件版共用同一套 UI、目錄和安裝 API,區別只在入口。

cd dsh-plugin-market
node server.js

瀏覽器打開:

http://127.0.0.1:7788

Windows 也可雙擊 start.cmd。獨立版默認只監聽 127.0.0.1。

開發相關命令(來自 README):

node scripts/build-data.js
node scripts/build-plugin.js
node server.js

scripts/build-data.js 默認讀 vendor/plugins.json,也可用環境變量 CATALOG_SOURCE 指定路徑;運行時 Host 會自動拉取最新目錄,不必每次手動生成快照。

適用場景與注意

適合誰:希望在 DSH 客戶端裏用中文檢索社區插件、看截圖再安裝的智能體開發者;或想在本地瀏覽器單獨逛目錄、同樣走本機 dsh 安裝的人。

Desktop profile:DSH Desktop 的 desktop profile 由桌面應用管理,命令行安裝可能被拒絕或安裝後不出現。可優先用 設置 → 插件 安裝,或把 profile 選爲 web 供 dsh web / 命令行使用。安裝後通常需刷新頁面,部分插件需重啓 DSH。

安全與隱私:插件是第三方代碼,以你的本機權限運行;市場只做索引和調用,不做安全審計。安裝前請到 GitHub 確認作者、來源與權限聲明。安裝接口只接受目錄中存在的條目。項目源碼不包含作者主機的絕對路徑、憑據或 profile 目錄。

數據與歸屬:目錄主題來自 github.com/topics/dsh-plugin,社區目錄爲 awesome-dsh-plugin.com,運行宿主爲 DeepSeek Harness。

結尾

dsh-local-market 把 awesome-dsh-plugin 社區目錄搬進 DSH 的「中文市場」Tab:實時同步、中文搜索、截圖預覽與本機 CLI 安裝日誌,減少在倉庫與命令行之間來回找 spec 的成本。

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

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

小夜