前言¶
DeepSeek Harness(DSH)的理念是「一切皆插件」,日常使用裏最高頻的操作就是裝插件、更新、改設置。風險也在這裏:某次改動一旦讓 DSH 起不來,你最需要的是「改壞之前的樣子」。靠手動在每次改動前複製配置目錄,既容易忘,也難保證完整。
kidai-snapshot-guard(紀代快照守護)把這件事自動化了:在 DSH 內部完成快照的「保存 → 確認 → 恢復」閉環,裝好即用,不需要你記得做任何事。
這是什麼¶
一句話定位:DSH 內部的自動備份管家——關門前保存、開機後確認、一鍵回滾。
插件由 NokorinNishikino 維護,許可證 MIT,截至本文寫作(2026 年 9 月)版本爲 1.3.4。它隨 DSH 啓動運行,核心工作只有三步:正常關閉前拍全量快照,成功開機後把快照確認爲「已驗證」,需要時把任意快照恢復回去。
核心功能¶
關閉前自動保存¶
每次 DSH 正常關閉前,插件自動保存一份全量快照,內容包括配置、設置和第三方插件目錄,滾動保留最新 3 份。也就是說,最近三次「正常關閉時的完整狀態」隨時可取。
開機確認與 known-good¶
快照剛生成時處於待確認狀態。如果下一次 DSH 成功啓動,說明關閉時的配置能正常跑,插件自動把它轉爲「已驗證」(verified),並維護一份固定 id 的 known-good 快照,作爲已知良好的回滾基線。
單 zip 備份¶
任意快照可以一鍵導出爲一個離線 zip,也可以從 zip 導入並恢復。zip 文件本身不依賴 DSH——即使 DSH 起不來,憑這個文件也能把配置恢復回去。
隔離自動恢復¶
外部管理器的「一次性隔離」如果被打斷(啓動的 DSH 不是管理器拉起的那一個,即 PID 不匹配),插件會在下次啓動時自動還原隔離前的配置,並清除隔離標記。隔離隻影響一次啓動。
其他能力¶
- 啓動通知:「紀代備份」頁頂部顯示啓動成功 / 自動恢復提示
- 快照備註:給任意快照加備註便於分辨,與外部管理器雙向同步
- 兼容讀取並恢復 dsh-plugin-guard 的回滾與 dsh-config-manager 的快照
- 容量配額:在管理頁設置快照佔用
安裝與啓用¶
環境要求 Node >= 22.0.0。插件自身依賴 adm-zip ^0.6.0,peer 依賴 @deepseek-ai/cordis ^4.0.1,隨安裝一併處理。
安裝命令:
dsh plugin --profile desktop add github:NokorinNishikino/kidai-snapshot-guard
安裝後重啓 DSH 生效。插件裝好即用,隨 DSH 啓動,無需任何操作。
本地開發可以從 kidai-plugin-remote 倉庫目錄執行安裝腳本:
powershell -ExecutionPolicy Bypass -File scripts\install-guard.ps1
卸載:
dsh plugin --profile desktop remove kidai-snapshot-guard
需要手動清理時:從 profiles/desktop/package.json 移除 kidai-snapshot-guard 的依賴與 bundle 聲明,再刪除 node_modules/kidai-snapshot-guard 目錄。
典型用法¶
1、打開 DSH「設置 → 紀代備份」。這是插件的管理頁,可以查看和管理快照、執行導出與導入、設置容量配額。
2、在對話框輸入 /kidai-snapshot,查看一份只讀摘要。
常見操作對應關係:
- 保存:等 DSH 正常關閉自動保存,或調用
/api/kidai-snapshot/save手動保存 - 回滾:在管理頁選擇某個快照恢復
- 長期留存:把快照導出爲 zip 存到 DSH 之外,需要時再導入恢復
對集成者:插件在 DSH webServer 上暴露 /api/kidai-snapshot/* 接口,包括:
status list save known-good delete
export exports import restore
foreign foreign-restore
settings quota meta notice note
管理頁爲 web 客戶端實現,注入 @deepseek-ai/dsh-client-runtime、@deepseek-ai/dsh-client-locale、@deepseek-ai/dsh-client-ui-settings 三個模塊。
與外部管理器的關係¶
快照存儲在 $DSH_HOME/.kidai-snapshots,守護目錄在 $DSH_HOME/guard/,兩處與外部管理器 Kidai Plugin Remote 共享,兩端看到的是同一批快照,備註也在兩端之間雙向同步。
需要強調:kidai-snapshot-guard 完全獨立,不裝 Kidai Plugin Remote 也照樣能自動快照、導出、恢復。外部管理器只是可選的補充,提供在 DSH 之外操作這批快照的入口。
適用場景與注意¶
適合誰:
- 經常安裝、更新插件或調整配置,擔心某次改動讓 DSH 起不來的人
- 不想每次改動前手動備份,希望有一個無人值守的自動快照機制
- 需要在 DSH 完全起不來時仍有恢復手段(導出的 zip 或外部管理器)
使用前注意:
1、插件以當前 dsh 進程的權限運行,任何第三方插件安裝前都應檢查源碼與許可證。本插件源碼在 GitHub 公開,許可證 MIT,可自行審閱。
2、快照滾動保留最新 3 份,更早的會被覆蓋。想要長期留存的快照,導出爲 zip 單獨保存,或加備註便於辨認。
3、快照爲全量內容(配置 + 設置 + 第三方插件目錄),佔用空間可在管理頁通過容量配額控制。
小結¶
kidai-snapshot-guard 解決的是一個具體問題:DSH 的配置改動把 DSH 自己改壞了怎麼辦。它不改變你的使用習慣,只是在每次正常關閉時默默留一份快照,開機成功後確認,出問題時給你一條明確的回滾路徑。
- 社區目錄頁:https://www.skillhub.cn/plugins/NokorinNishikino/kidai-snapshot-guard (社區維護的獨立目錄,與 DeepSeek、幻方無官方從屬關係)
- GitHub 倉庫:https://github.com/NokorinNishikino/kidai-snapshot-guard