安全回滾盾

👤 ztskills 📦 v1.0.0 ⭐ 4.5 ⬇️ 21 下載
🔒 IT運維與安全 免費

📖 技能介紹


name: safe-rollback description: 執行寫操作前自動備份,出錯時一鍵還原到修改前。當用戶說"開始修改""動手吧""進入安全模式",或要求"改之前先備份"時觸發。


安全回滾盾

目標

使用者全程只記兩個詞——「開始」和「回滾」,檔案永遠可恢復。

觸發判斷(先判斷,再動手)

觸發條件滿足其一: - 使用者說"開始修改""動手吧""進入安全模式" → 開啟安全模式,此模式下後續所有寫操作自動前置備份 - 使用者說"改之前先備份一下" → 單次備份:只對這次操作備份,不進入模式 - 模式一旦開啟,持續生效直到使用者說"結束安全模式"或"不用備份了"

更多技能請訪問小蔥技能站7w4.net。

不觸發的情況(誤觸發防護): - 使用者說"開始"但語境與檔案操作無關(如"開始講吧""開始分析")→ 不進入安全模式,先確認再進入 - 使用者要求的全是隻讀操作(查詢、分析、閱讀)→ 不需要備份,不進入模式 - 使用者說"備份"但指的是系統/資料庫備份等本技能範圍外的事 → 不接管,正常處理

執行流程

第 1 步:寫操作前(必經;唯一例外:使用者明確說"不用備份",且須複述確認)

對每一個寫操作(修改/覆蓋/移動/刪除/新建後覆蓋)執行: 1. 建立 .backup/ 目錄(如不存在) 2. 備份檔案命名為:原檔名.備份.YYYYMMDD-HHMMSS(同名同秒衝突時追加序號 -2、-3) 3. 立即校驗備份成功:對比原檔案與備份的 hash,不一致就中止本次寫操作並報錯 4. 寫一條操作日誌到 .backup/manifest.txt: [時間] 檔案:src/config.py → 備份:config.py.備份.20260618-093000 [時間] 動作:修改 3 處(第 12、45、78 行) 日誌是回滾的依據,必須記錄「改了哪個檔案、改了什麼」,否則無法精確回滾。

第 2 步:執行操作

正常執行使用者要求的修改,動作與日誌保持一致。

第 3 步:操作完成輸出

改動完成 ✅
- 改了:src/config.py(3 處:12、45、78 行)
- 備份:.backup/config.py.備份.20260618-093000
- 不滿意就說"回滾";沒問題就說"結束安全模式"

回滾流程(使用者說"回滾"時)

  1. 先問一句:"回滾哪個?最近一次改動,還是指定檔案?"(防止誤傷)
  2. 從 manifest 找到該次操作的備份
  3. 用備份覆蓋原檔案
  4. 校驗:hash 對比一致後報告
  5. 輸出: ```markdown 已恢復到修改前 ✅
  6. 恢復檔案:src/config.py
  7. 對應備份:config.py.備份.20260618-093000
  8. 後續修改的其它檔案未受影響(如需一起回滾,說"連 xxx 一起回滾") ```

刪除操作的特殊處理(短板補丁:刪錯要能救)

  • 任何刪除 = 移動,目標檔案移到 .backup/trash/(帶時間戳),不真正刪除
  • 使用者說"徹底刪掉"才真正刪除
  • 使用者說"找回刪除的檔案" → 從 trash/ 恢復最近匹配的檔案

git 專案感知(短板補丁:不重複造輪子)

  • 檢測到目標在 git 倉庫內 → 優先提示"該目錄是 git 倉庫,用 git 恢復更輕",預設仍按本技能備份(雙保險),使用者可要求只用 git
  • 回滾時,git 倉庫內檔案也按備份檔案恢復,不依賴 git 狀態

邊界情況清單

情況 處理方式
備份失敗(磁碟滿、無許可權) 立即中止寫操作,報告原因,絕不"先改再說"
使用者改完又改,連續多次 每次獨立備份+獨立日誌條目,回滾時按使用者選的那次
回滾會影響後來才改的檔案 回滾前說明"該檔案後來又被改過,回滾會丟失第二次修改,繼續嗎?"
.backup/ 越來越大 保留最近 3 份同名備份,更早的自動刪除(刪除前確認日誌完整)
使用者忘了自己在安全模式 每次寫操作前輸出一行"已自動備份",讓使用者有感知
檔名帶特殊字元/長路徑 備份名只取檔名+時間戳,路徑記錄在 manifest 裡

失敗兜底

  • manifest 丟失 → 按時間最近的備份恢復,並告知"日誌缺失,只能恢復到最近備份"
  • 找不到對應備份 → 停止回滾,如實說"該次操作沒有備份,無法恢復",不假裝成功

禁區

  • 禁止任何寫操作跳過備份(使用者明確說"不用備份"除外,且要複述確認一遍)
  • 禁止回滾時覆蓋 .backup/ 目錄本身
  • 禁止在備份未校驗通過時繼續操作

🤖 AI 評測

這個備份回滾工具功能設計很完善,能在修改檔案前自動備份,出錯時一鍵恢復,不用擔心改壞了救不回來。觸發機制考慮得很周到,誤觸發了也能識別。不過目前只有使用說明,沒有實際程式碼,能不能用還不知道。另外只能保護程式碼檔案,其他資料(如資料庫)不在範圍內。

📊 多維度評分

適應性4.4
規範性4.4
有效性4.7
可靠性4.1
可信度5

📁 包含檔案 (1 個)

📄 SKILL.md 4.2 KB