Hướng dẫn 10: Checkpoints — Nút Undo của AI
Tutorial 10: Checkpoints — AI's Undo Button — easy-to-understand guide based on official docs
Hướng dẫn 10: Checkpoints — Nút Undo của AI
Bạn có nhớ cảm giác hụt hẫng khi nhận ra mình vừa xóa nhầm thứ gì đó quan trọng không? Có thể là một file bạn đã dành hàng giờ để làm, hoặc một thay đổi cấu hình khiến mọi thứ sụp đổ. Trong thế giới thực, không có Ctrl+Z cho hệ thống file của bạn. Nhưng trong Hermes Agent thì có — và nó được gọi là checkpoints.
Hãy nghĩ về checkpoints như các điểm lưu trong game. Trước khi AI agent của bạn làm điều gì đó rủi ro — như ghi đè file hay chạy lệnh phá hoại — nó có thể chụp nhanh một ảnh chụp dự án của bạn. Nếu mọi thứ sai lầm, bạn có thể quay lại ảnh chụp đó chỉ với một lệnh duy nhất. Giống như có một nút undo cho toàn bộ dự án vậy.
Bật Lưới An Toàn
Sự thật là: checkpoints là tính năng tùy chọn trong Hermes v2. Hầu hết người dùng không bao giờ cần đến chúng, và dung lượng lưu trữ có thể tăng theo thời gian. Nhưng nếu bạn đang làm việc trên thứ gì đó quan trọng, chúng là cứu cánh.
Bạn có hai cách để bật:
Theo phiên (chỉ cho một cuộc trò chuyện):
hermes chat --checkpoints
Toàn cục (trong ~/.hermes/config.yaml):
checkpoints:
enabled: true
Chỉ vậy thôi. Khi đã bật, Hermes tự động chụp ảnh dự án của bạn trước bất kỳ điều gì phá hoại xảy ra.
Điều Gì Kích Hoạt Checkpoint?
Hermes thông minh trong việc quyết định khi nào chụp ảnh. Nó theo dõi:
- Thao tác file — như
write_filevàpatch - Lệnh terminal phá hoại — như
rm,mv,sed -i,truncate, và cảgit resethoặcgit clean
Phần hay nhất? Nó tạo tối đa một checkpoint mỗi thư mục mỗi lượt, vì vậy các phiên dài của bạn sẽ không spam hàng trăm ảnh chụp.
Quay Lại: Các Lệnh Slash
Khi bạn đang trong phiên trò chuyện, /rollback là người bạn tốt nhất của bạn:
| Lệnh | Chức năng |
|---|---|
/rollback |
Hiển thị tất cả checkpoints với thống kê thay đổi |
/rollback <N> |
Khôi phục về checkpoint N, giữ nguyên các chỉnh sửa tay của bạn |
/rollback <N> --all |
Khôi phục hoàn toàn — ghi đè cả chỉnh sửa tay của bạn |
/rollback diff <N> |
Xem trước thay đổi giữa checkpoint N và hiện tại |
/rollback <N> <file> |
Chỉ khôi phục một file từ checkpoint N |
Mặc định /rollback <N> rất thông minh — nó giữ mọi thay đổi bạn làm bằng tay, chỉ hoàn tác những gì agent đã làm. Nếu bạn muốn xóa sạch hoàn toàn, dùng --all.
Quản Lý Kho Lưu Trữ Từ Terminal
Ngoài chat, bạn có các lệnh CLI để kiểm tra và quản lý checkpoints của mình:
hermes checkpoints # Hiển thị kích thước, dự án, phân tích
hermes checkpoints status # Tương tự như trên
hermes checkpoints list # Bí danh cho status
hermes checkpoints prune # Dọn dẹp dữ liệu mồ côi và dữ liệu cũ
hermes checkpoints clear # Xóa tất cả (hỏi trước)
hermes checkpoints clear-legacy # Xóa kho lưu trữ di cư v1 cũ
Cách Hoạt Động Bên Trong
Bạn có thể đang thắc mắc: “Cái này có đụng vào git repo thật của tôi không?” Không. Hermes giữ một “kho ẩn” riêng tại ~/.hermes/checkpoints/store/. Thư mục .git thực tế của dự án bạn không bao giờ bị đụng đến.
Tất cả dự án của bạn dùng chung một kho này, và vì git là content-addressable, các file xuất hiện trong nhiều dự án chỉ được lưu trữ một lần. Hiệu quả đến bất ngờ.
Tinh Chỉnh Cài Đặt
Bạn có thể kiểm soát dung lượng lưu trữ mà checkpoints sử dụng:
checkpoints:
enabled: true
max_snapshots: 20 # Số checkpoint tối đa mỗi dự án
max_total_size_mb: 500 # Giới hạn cứng cho tổng dung lượng kho
max_file_size_mb: 10 # Bỏ qua các file lớn hơn mức này
auto_prune: true # Tự động dọn dẹp các mục cũ
retention_days: 7 # Giữ các mục trong 7 ngày
min_interval_hours: 24 # Dọn dẹp tối đa một lần mỗi ngày
Tính năng auto-prune rất thông minh — nó dọn dẹp các mục cũ khi khởi động nhưng không bao giờ xóa các mục “mồ côi” (các dự án có thư mục không tìm thấy). Điều đó vì một thư mục bị thiếu có thể chỉ đơn giản là ổ cứng ngoài chưa được gắn. Để dọn dẹp mồ côi, bạn cần chạy hermes checkpoints prune thủ công.
Nút Undo Cho Dự Án Của Bạn
Checkpoints cho bạn sự tự tin để để AI agent làm việc tự do, biết rằng bạn luôn có thể quay ngược thời gian. Dù bạn đang refactor code, thử nghiệm cấu hình, hay chỉ muốn yên tâm, việc bật tính năng này rất đáng giá.
Hãy thử trong phiên tiếp theo với hermes chat --checkpoints. Bạn có thể không bao giờ cần rollback — nhưng nếu cần, bạn sẽ rất vui vì nó ở đó.
📖 Tài liệu chính thức
この記事は Hermes Agent のTài liệu chính thứcに基づいています:Tài liệu chính thức › user-guide/checkpoints-and-rollback