前言¶
在 DeepSeek Harness(DSH)裏,插件往往來自 GitHub、npm 或本地開發包,數量一多,逐個查 Release、對版本、再重裝就很費時間。社區目錄裏雖有各類插件,但並沒有統一的「批量拉到最新」入口。下面介紹的 dsh-oneshot(面板名 Oneshot一鍵新)由維護者 zhangyong0010 提供,歸類爲 admin-security,作用是對當前 profile 裏全部已安裝插件做版本掃描,按掃描結果一鍵強制更新,並彙總「從哪一版到哪一版」的變更說明。它與單插件管理器的差別在於:一次操作覆蓋整機插件清單,且帶兼容預檢與失敗回滾嘗試。
這是什麼¶
dsh-oneshot 是 DSH 的 Bundle 插件,定位爲一鍵強制更新器:自動讀取已安裝插件、查詢各自上游最新版本(以 GitHub 爲主,npm 註冊源按策略處理),在確認有新版本時批量安裝,並輸出更新日誌。許可證爲 MIT(以倉庫說明爲準);SkillHub 目錄頁與 GitHub 倉庫見文末鏈接。插件在 DSH 宿主進程權限下運行,安裝前宜自行審閱源碼與許可證。
核心功能¶
掃描與版本發現¶
打開左側邊欄 Oneshot一鍵新 面板後會自動掃描;也可手動「掃描版本」強制刷新並顯示耗時。掃描最多 6 個插件並行查詢,請求去重,60 秒短緩存。插件會識別每條 Bundle 的來源:github:owner/repo、npm 註冊源、或 link: / file: 本地包。
對每個 GitHub 來源插件,最新版本按三級回退查詢:Releases → Semver Tags → 默認分支 package.json。多包倉庫按 repository.directory 取插件自身版本,避免誤用倉庫根版本。
一鍵更新與策略複用¶
一鍵強制更新全部會複用最近一次掃描結果:已是最新的不再查詢或重裝;只安裝掃描階段已確認的新版本。尚未掃描時會先掃一次;成功更新過的項在再次點擊更新時會跳過。
| 插件來源 | 行爲摘要 |
|---|---|
github:owner/repo |
安裝掃描確認的 Release / Tag / 默認分支提交,安裝後覈對本地版本;失敗時嘗試恢復原版本 |
| npm 註冊源 | 更新到最新已發佈版本;若 GitHub 版本領先且包名與 Bundle 聲明可覈驗,可切到 GitHub 目標 |
link: / file: |
安全跳過,不嘗試遠程下載 |
更新日誌與安全預檢¶
右上角 更新日誌 進入二級頁:每次操作爲一張卡片(時間、成功/失敗/跳過數量、變更摘要),完整日誌可展開;歷史最多保留最近 20 次,Host 重載後清空。
更新前會比對目標版本的 DSH 兼容性聲明;不兼容或無法確認時阻止替換,並提示版本豁免(本插件不會自動授予豁免,需你在 DSH 中顯式操作)。不能確定恢復來源時保留原版;恢復失敗會在日誌中給出手動恢復規格。
Agent 工具¶
內置工具 dsh_oneshot_update,可在對話中讓 Agent 執行掃描或更新(例如掃描插件、更新全部插件)。
網絡方面:查詢版本時訪問 GitHub API 與 npm 註冊源;README 寫明零遙測、不上傳用戶數據。GitHub 匿名 API 有限速,失敗會在日誌中標明。
安裝與啓用¶
在 DSH 設置 → 插件 → 安裝 中粘貼安裝規格(須與官方 README 一致):
github:zhangyong0010/dsh-oneshot
README 標註當前版本爲 v1.0.2;也可使用 v1.0.2 安裝包 鏈接安裝。亦可通過 Agent 的 plugin_manager / install_bundle,安裝規格同上。
安裝後客戶端會注入側邊欄與 Web 面板(package.json 中 dsh.client 依賴佈局與側邊欄 UI 包)。
典型用法¶
- 點擊左側邊欄 Oneshot一鍵新 圖標,等待自動掃描完成。
- 在列表中對照已安裝版本與 GitHub(或策略下的)最新版本。
- 點擊 一鍵強制更新全部(或等價按鈕),僅升級掃描已確認有更新的項。
- 需要追溯時,打開 更新日誌,展開單次操作的完整記錄。
- 在會話中對 AI 說明:用
dsh_oneshot_update掃描插件或更新全部插件。
本地 link: / file: 開發包會出現在列表中但不會被遠程強制覆蓋,避免打斷本地聯調。
適用場景與注意¶
適合:長期開着多個 DSH 插件、希望定期對齊上游 Release;希望批量操作且需要變更摘要與安全門禁的維護者或團隊環境。
注意:
- 插件以當前 DSH 進程權限讀寫安裝目錄,屬 admin-security 類能力,只應從可信來源安裝。
- 強制更新可能引入與當前 DSH 主版本不兼容的插件;預檢會攔截明顯不兼容目標,但無法消除所有運行時風險。
- 網絡異常或上游刪除舊版本時,自動恢復可能失敗,需按日誌中的規格手動處理。
- SkillHub 目錄爲社區站點,與 DeepSeek / 幻方無官方從屬關係;星標等元數據以目錄頁爲準(當前倉庫 GitHub 星標爲 0)。
結尾¶
dsh-oneshot 把「掃版本 → 定計劃 → 批量強制更新 → 看變更日誌」收成一條鏈路,並複用掃描結果減少重複請求。若你維護的 DSH 環境裏插件較多,可用它做週期性的版本對齊,同時保留兼容檢查與更新歷史。
- 目錄頁:https://www.skillhub.cn/plugins/zhangyong0010/dsh-oneshot
- GitHub:https://github.com/zhangyong0010/dsh-oneshot