dsh-plugin-precheck:DeepSeek Harness 插件安裝預檢助手

前言

在 DeepSeek Harness 生態中,通過插件擴展功能是常見操作。但在安裝第三方插件時,經常出現依賴衝突、配置樹結構不兼容或啓動失敗的情況。dsh-plugin-precheck 插件旨在解決這一痛點。它不改變原環境,而是通過隔離試裝和啓動驗證,在安裝前攔截潛在問題,確保系統穩定性。

核心能力

插件在 Web GUI 的「設置 → Plugins」中新增「安裝預檢」標籤頁。輸入 npm 包名後,系統會依次執行以下檢查:

  1. 解析並鎖定版本:使用 pnpm view 獲取包信息並鎖定版本號。
  2. 基礎兼容性檢查:比對 peerDependencies、Node engines、bundle 清單。如果信息缺失,顯示「無法確認」而不是放行。
  3. 組合配置檢查:將新插件的 cordis.patch.yml 與當前配置樹(通過 dsh --dump-config 獲取)比對。檢測 ID 重複(確定錯誤)或補丁目標不存在/被多個插件覆蓋(疑似風險)。
  4. 隔離試裝與啓動:在臨時的 DSH_HOME 中複製 profile 文本文件,執行 pnpm add 鎖定版本。隨後通過 --dump-config 進行靜態校驗,使用 --port 0 --no-open 試啓動。系統會等待就緒行和 401 探針,超時時間設定爲 180 秒。隔離環境不含憑據、不掛載定時任務、不觸碰正式環境。

只有當上述檢查全部通過時,才允許正式安裝。

安裝與啓用

使用官方命令安裝該插件:

dsh plugin --profile web add dsh-plugin-precheck

安裝完成後重啓 DSH Web 服務即可使用。

工作原理與攔截

該插件覆蓋了本頁面的檢查安裝,以及當攔截開啓時,本瀏覽器標籤頁中 dsh-market 的安裝/更新點擊操作。

針對市場插件的攔截邏輯在瀏覽器層實現。dshmarket 的路由是 exact 註冊,且沒有預安裝鉤子。插件通過攔截 window.fetch 識別 POST /dsh-market/install、/dsh-market/update 等請求。攔截後,系統將請求映射爲安裝來源(安裝:URL → 註冊表條目 → npm 包名;更新:包名 → 市場目標版本),運行完整預檢(含隔離試啓動)。通過後才放行原始請求;阻止或取消則返回合成 400 錯誤。用戶可在「安裝預檢」標籤頁隨時停用此功能。

範圍與限制

需要注意的是,本插件不覆蓋命令行 dsh plugin add 操作,也不影響其他瀏覽器標籤頁。

此外,檢查通過並不等同於插件永久穩定,也不代表通過了安全審計。如果市場插件未來改變端點或傳輸方式,攔截機制可能會失效(探測不到即不啓用,不會誤攔)。

短結尾

dsh-plugin-precheck 通過隔離試裝和瀏覽器層攔截,爲開發者提供了一個安全的插件安裝環境,減少了因兼容性問題導致的配置回滾。該插件由 BaqiF2 維護,開源協議爲 MIT。

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

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

小夜