🤖HermesBlog
Hermes 官方教程 · 第10篇2026/8/9· Easy Understand Hermes Agent

检查点(Checkpoints)——AI 的后悔药

Hermes Agent 官方教程第十篇:检查点。让 AI 的每一步修改都可回滚。

Hermes tutorial

檢查點(Checkpoints)——AI 的後悔藥

你有沒有過這種時刻:AI 助手一頓操作猛如虎,把你的程式碼改得面目全非,你想反悔卻發現為時已晚?別慌,Hermes Agent 的**檢查點(Checkpoints)**功能就是你的時光機!

什麼是檢查點?

簡單說,就是在 AI 執行危險操作之前,自動給你的專案拍一張「快照」。萬一搞砸了,一條指令就能回到操作之前的狀態——這不就是後悔藥嗎?

不過要注意,這個功能在 v2 裡是預設關閉的(opt-in),因為快照儲存會佔用不少磁碟空間。想用的話,兩種開啟方式:

單次工作階段開啟:

hermes chat --checkpoints

全域開啟(編輯 ~/.hermes/config.yaml):

checkpoints:
  enabled: true

什麼時候會自動拍快照?

Hermes 會在這些操作前自動建立檢查點:

  • 檔案操作write_filepatch
  • 危險終端機指令rmmvcpsed -itruncateddshred、輸出重新導向(>)、git reset/clean/checkout

而且每個目錄每輪對話最多只拍一次快照,不會洗版。

怎麼用?超簡單!

在工作階段裡直接敲指令:

指令 作用
/rollback 列出所有檢查點及變更統計
/rollback <N> 恢復到第 N 個檢查點(保留你的手動修改)
/rollback <N> --all 完全恢復(覆蓋你的手動修改)
/rollback diff <N> 預覽第 N 個檢查點和當前狀態的差異
/rollback <N> <file> 只恢復某個檔案

在終端機外也能管理:

hermes checkpoints          # 檢視儲存大小、專案數等
hermes checkpoints prune    # 清理孤兒/過期檢查點
hermes checkpoints clear    # 清空所有檢查點(會先確認)

原理是啥?

Hermes 內部有個 Checkpoint Manager,它維護一個共享的影子 Git 倉庫(在 ~/.hermes/checkpoints/store/),完全不會碰你專案的真實 .git。所有專案共用這個倉庫,Git 的內容定址機制還能自動去重,省空間!

組態建議

config.yaml 裡可以精細控制:

checkpoints:
  enabled: true
  max_snapshots: 20        # 每個專案最多 20 個快照
  max_total_size_mb: 500   # 總儲存上限 500MB
  max_file_size_mb: 10     # 超過 10MB 的檔案不拍快照
  auto_prune: true         # 自動清理過期快照
  retention_days: 7        # 保留 7 天

小結

檢查點功能就像給 AI 配了「存檔點」,手滑了隨時讀檔。雖然預設關閉,但如果你經常讓 AI 改程式碼,強烈建議開啟——畢竟後悔藥這種東西,有備無患嘛

📖 官方文档

本文根据 Hermes Agent 官方文档编写,原文见:官方文档 › user-guide/checkpoints-and-rollback