前言¶
DeepSeek Harness(DSH)的插件樹只在啓動時合成,profile 裏的插件由 dsh plugin 管理。這個插件補上的是 Harness 自身的運維閉環:不必再開終端敲 npm install --prefix ...,也不必切到 DeepSeekDesk 的原生設置頁——在 Web 設置面板裏就能看版本、查更新、裝新版、重啓生效。
核心功能¶
插件在 Web「設置」中增加了一個「安裝 / 更新」頁面,提供以下能力:
- 狀態一目瞭然:顯示當前運行版本、安裝目錄、Node / npm 版本、監聽端口及進程 PID。
- 檢查更新:讀取 npm registry 的
dist-tags,不依賴本機 npm,離線也能對比本地版本。 - 在線安裝 / 更新:實時日誌流式回顯,按鈕上會直接寫明目標版本(如
在線更新到 v0.1.6-alpha.1)。 - 高級選項:支持選擇更新通道(latest / next / alpha / 指定版本)、修改安裝目錄、更換 registry、指定 npm 路徑,並支持保存爲默認。
- 重啓 Harness:等待舊進程退出後,使用相同參數拉起新實例。
- 查看
harness.log:顯示文件尾部 96KB 內容,其中的 token 和_authToken已脫敏。
安裝與啓用¶
安裝插件需要使用 -w(--workspace-root)參數,且安裝或卸載後必須重啓 Harness 才能生效。
dsh plugin --profile web add -w github:udisyue/dsh-update
安裝完成後,打開 Web 界面的「設置」即可看到「安裝/更新」頁面。
使用步驟¶
打開 設置 → 安裝/更新,按以下順序操作:
- 查看狀態卡:確認當前運行版本、安裝目錄及探測來源。
- 檢查更新:點擊按鈕,插件會查詢 registry 上的最高版本及來源通道。
- 在線安裝 / 更新:點擊主按鈕執行安裝,過程中實時顯示日誌,結束後自動刷新狀態。
- 設置高級選項:在「高級選項」中調整 channel、指定版本或修改默認配置,可保存爲默認值。
- 重啓 Harness:點擊重啓按鈕,確認後等待舊進程退出並啓動新實例。
- 查看日誌:如需排查問題,可查看
harness.log尾部日誌。
配置¶
插件支持通過 cordis.yml 配置項覆蓋默認行爲。在 profile 目錄下的 cordis.patch.yml 中添加配置:
- id: dsh-harness-updater
name: dsh-harness-updater
config:
installDir: '/path/to/harness' # 默認自動探測
registry: 'https://registry.npmjs.org'
npmPath: '/usr/bin/npm' # 默認自動探測
channel: 'latest' # 默認 latest
restartEnabled: true # 默認 true
設置頁修改的值會持久化保存到 $DSH_HOME/harness-updater/state.json(默認 ~/.dsh/harness-updater/state.json,權限 0600)。
安全與行爲細節¶
- 鑑權機制:每個路由都經過
connection.requestRejection鑑權,防止 DoS 攻擊和未授權訪問。 - 數據脫敏:日誌返回和任務日誌中的 token、
_authToken已自動脫敏。 - 無數據出網:不觸碰模型,不註冊 system-prompt,不進行遙測,僅請求 registry 查詢版本。
- Token 複用:重啓 Harness 後不需要重新獲取 token,刷新瀏覽器頁面即可保持登錄狀態。
- 默認安裝目標:默認安裝到 registry 所有
dist-tag中的最高版本,界面會明確標註來源通道。
生態與鏈接¶
- 目錄頁:https://www.skillhub.cn/plugins/udisyue/dsh-update
- GitHub 倉庫:https://github.com/udisyue/dsh-update
- 許可證:MIT