前言¶
DeepSeek Harness(DSH)採用「一切皆插件」的架構:模型調用、界面、工具鏈往往都通過 Cordis 插件掛進 profile。社區目錄(如 skillhub.cn)方便發現插件,但收錄不等於能力掃描或安全背書;生態裏常見的路徑是「先安裝、出問題再整 profile 回滾」。對經常換插件、改 patch 的開發者來說,缺的是裝前可讀的檢查報告、可逐項批准的變更方案,以及備份與裝後覈驗。
下面介紹維護者 GIN0076 的工作流插件 dsh-install-review(Pre-install Review · 插件裝前審查):在點擊安裝之前,對目標包做只讀審查,由你批准改動計劃、自動備份後再安裝並覈驗。
這是什麼¶
dsh-install-review 的定位是:DSH 插件安裝前的審查閘門——審計、批准變更方案、備份,再執行安裝。
- 維護者:GIN0076
- 分類:工作流
- 許可證:MIT(package.json 與 README 一致)
- 當前包版本:1.3.0(
@local/dsh-install-review) - 適配:DeepSeek Harness 0.2.0-rc.2(README 標註的實測版本)
- 運行時依賴:0;不改宿主源碼(README 徽章:host source changes 0)
插件本身通過 dsh.bundle(patch)、dsh.client(web 界面)接入;它不修改第三方插件源碼,只動來源、版本、構建批准、profile 配置四類屬於你自己的配置。
核心功能¶
13~14 項只讀檢查¶
輸入包標識後,面板在數秒內生成審查報告。檢查項全部只讀,主要包括:
| 方向 | 內容 |
|---|---|
| 本機 | DSH 版本與 profile(路徑自動打碼,便於分享截圖) |
| 官方 inspect | pluginManager.inspect 下的 dsh.bundle / dsh.client / dsh.tool / dsh.page / dsh.configForm |
| 兼容與清單 | peer 解析(含 includePrerelease);名錄、倉庫、星標、30 天下載量(不把倉庫星標冒充包星標) |
| 安裝與衝突 | 已裝/未裝;loader id 是否與現有行撞車(重複 id 可能導致宿主啓動崩潰) |
| patch 與槽口 | override 行目標是否存在、是否被其他插件雙重改寫;槽口與本機目錄對照(打包桌面版讀 app.asar 內編譯目錄,跑不起來則警告而非默許放行) |
| 風險信號 | 安裝期腳本(prepare / postinstall 等);終端類描述;engines.dsh 與 dsh.engines.dsh 兩種寫法;描述中改宿主核心的措辭;清單上的 10 類能力與紅線句(中譯,未標註則如實寫「上游未標註能力」) |
README 強調:清單未標註能力不等於安全;出現 阻斷(block) 時,默認正確動作是不要繼續安裝。
閉環:審查 → 方案 → 批准 → 改 → 裝 → 覈驗¶
- 審查:輸入 npm 包名、
owner/repo、github:owner/repo或 GitHub 鏈接,生成報告。 - 方案:僅列出可執行改動,勾選才會執行;標題旁有「全選 / 全不選」。典型項包括:固定或更新版本、在 peer 不兼容且你確認風險後授予這一對版本的豁免、換下載源、啓用包聲明但未啓用的 loader 行、批准 pnpm 攔截的構建腳本、經
configEditor寫 profile 配置(模板由包 patch 默認值與現有配置合併預填)、git 來源切換爲 npm 固定包等。 - 你的建議:在「你的建議」中寫修改意圖 →「複製報告給我複覈」→ 將會話返回的修訂 JSON 粘貼到「導入修訂」(目標不匹配會拒收;導入不能代替你勾選「接受風險」)。
- 執行:先備份
package.json、cordis.patch.yml、pnpm-workspace.yaml、cordis.yml(有豁免記錄時含compatibility.json),再應用批准項並安裝。 - 覈驗:除安裝狀態與 loader id 外,還檢查 patch 行是否激活、bundle 是否選中、瀏覽器半是否進入客戶端模塊圖,並給出可讀結論(例如需重啓 dsh)。
內置中文清單快照(README 稱 4377 條)支持服務端搜索、分類與排序,便於從目錄挑包再審查。
紅燈後的處理(有處方 vs 硬阻斷)¶
- peer 不兼容:面板可引導通過官方通道爲「包@版本 + 當前 DSH 版本」授予精確版本豁免,需本人勾選風險確認;豁免可撤銷,換版本或升級 DSH 後失效。
- engines.dsh 不符:仍爲阻斷,但報告說明宿主安裝路徑主要覈對
peerDependencies,並提供「確認仍安裝」或改用滿足範圍的版本等選項。 - 硬阻斷:讀不到 manifest、缺少
dsh.bundle、loader id 撞車等,報告會明確建議不要安裝。
邊界說明¶
這是裝前體檢,回答「能不能裝、會碰什麼配置與能力面」,不能替代對來源與源碼的人工判斷。插件以當前 dsh 進程權限運行;安裝任何插件前仍應自行查看倉庫、許可證與維護者信息。
安裝與啓用¶
Web profile 下,README 給出的安裝命令爲:
dsh plugin --profile web add github:GIN0076/dsh-install-review
說明:
- 要求 DeepSeek Harness 0.2.0-rc.2 與 web profile 或桌面版。
- 零運行時依賴、無構建步驟、無 postinstall。
- 僅執行
add會把倉庫放進node_modules,不會自動掛載界面;還需把@local/dsh-install-review加入 profile 的dsh.profile.bundles,並在cordis.patch.yml加入對應 insert 行。 - 完成後重啓
dsh web,再硬刷新(Ctrl+Shift+R)→ 設置 → 插件裝前審查。
桌面版(打包 App):設置 → 插件 → 添加插件,填本地目錄路徑(或通過插件管理工具的 install_bundle 指向目錄)。正式打包版無瀏覽器式硬刷新;客戶端半改動常可熱更新,Host 半可按 README 的 remove_bundle + install_bundle 換代流程重載。不想走 git 時,可將倉庫拷到本地後用 install_bundle 並做同樣的 profile 兩處配置。
卸載:設置 → 插件 → 移除,或 remove_bundle。卸載不刪除執行前備份;默認目錄爲 profile 下的 install-review-backup(可在行 config 的 backupDir 調整)。
典型用法¶
- 打開 插件裝前審查 面板。
- 在審查框輸入目標,例如某 npm 包名、
GIN0076/某倉庫或github:GIN0076/dsh-install-review。 - 閱讀報告中的阻斷、警告與能力/紅線翻譯;必要時在清單頁搜索同一插件的收錄信息。
- 在變更方案中只勾選你接受的項;若 peer 紅燈且你仍要安裝,先勾選「我已閱讀並接受風險」再啓用豁免類項。
- 執行安裝,查看裝後覈驗結論;若 pnpm 攔截構建腳本,使用面板內「批准
<包名>的構建腳本並重試」。 - 若希望 AI 幫你改勾選與參數:填寫「你的建議」→ 複製報告到會話 → 導入返回的修訂 JSON。
適用場景與注意¶
適合:需要從社區目錄或 GitHub 頻繁試裝插件、希望統一做 peer/loader/patch 檢查;希望在改 profile 前有備份與可審批的變更清單;希望在裝後確認 bundle 與 patch 行真的生效。
注意:
- 社區目錄(如 skillhub.cn 插件頁)與 DeepSeek / 幻方無官方從屬關係,星標與下載量爲快照數據,以頁面與審查報告抓取時爲準。
- 全綠不保證無害;自動化檢查不能替代你對插件來源的信任判斷。
- 安裝與啓用步驟涉及 profile 與 patch 編輯,操作前確認當前 profile 已納入版本管理或另有備份習慣。