DeepSeek Harness 備份與恢復插件 (dsh-backup)

前言

DeepSeek Harness 的理念是“一切皆插件”。在開發智能體或進行深度對話時,工作區配置、完整的對話歷史、附件以及 dsh-mnemon 記憶數據往往分散存儲。一旦換機、重裝或系統升級,恢復這些狀態需要手動操作或依賴不同插件,容易遺漏。having5548/dsh-backup 解決了這個問題,它將上述數據打包爲一個 ZIP 文件,提供一鍵備份與恢復的能力。

核心能力

該插件提供以下功能:
* 全量打包:包含工作區註冊表、完整對話(字節級保真,不解包不改寫)、附件、設置和 mnemon 記憶數據。
* 雙向兼容:支持舊版本會話自動遷移,未來新版 harness 的會話也能裝入當前備份。
* 導入模式:提供合併(補缺不覆蓋)和覆蓋(全量替換)兩種模式,支持導入前預檢。
* 自動備份:支持定時自動備份與輪換。
* 救援通道:每份備份附帶零依賴的 rescue.mjs,即使 DSH 無法啓動,也可通過 Node.js 進行恢復。
* 憑據脫敏:導出時自動脫敏 settings.yaml 中的密鑰,明文不會出現在備份包中。
* 會話體檢:支持對會話文件進行掃描和校驗。
* AI 恢復助理:提供可選的 AI 輔助恢復功能(默認關閉)。

安裝與啓用

使用以下命令安裝插件:

dsh plugin --profile web add @having5548/dsh-backup

安裝後需重啓服務並刷新頁面。

使用方式

面板操作

  1. 打開 設置 → 備份與恢復。
  2. 勾選要包含的組件(如會話、附件、mnemon 等),點擊「導出備份包」。
  3. 恢復時選擇備份包,先進行「預檢」,確認無誤後選擇「合併」或「覆蓋」模式執行。

斜槓命令

在對話中直接輸入以下命令:

/backup                    # 立即備份
/backup auto 12            # 每 12 小時自動備份
/backup restore latest --dry-run   # 預覽恢復
/backup restore latest     # 正式恢復
/backup list | verify all | doctor | help

救援通道

備份目錄中包含 rescue.mjs,它不依賴 DSH,僅使用 Node.js 內置模塊。使用方法:

node rescue.mjs list                              # 列出備份
node rescue.mjs verify dsh-backup-xxx.zip         # 校驗文件
node rescue.mjs restore latest --dry-run          # 預覽恢復
node rescue.mjs restore latest --force            # 強制覆蓋恢復

注意事項

  • 憑據安全:默認情況下,settings.yaml 中的 apiKey、token 等密鑰會被脫敏爲佔位符,明文不會導出。覆蓋導入時,這些佔位符會自動回填爲本機現值。
  • 重啓要求:導入數據後,必須重啓服務並刷新頁面,會話列表纔會刷新。
  • 換機路徑:備份的工作區記錄保存的是絕對路徑,換機後需手動調整路徑,否則工作區列表可能顯示異常。
  • Mnemon 範圍:mnemon 默認使用 global 範圍,若使用 workspaces 範圍,恢復後需保持工作區目錄路徑不變。
  • 備份格式:備份格式爲 DshBackup v1。

總結

該插件通過 ZIP 打包和字節級複製,解決了 DSH 開發環境的遷移與備份問題。更多細節可參考 GitHub 倉庫。

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

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

小夜