需启用Hermes Agent的五种增量备份机制:一、SQLite WAL模式+定时快照;二、Git检查点自动提交;三、tar --listed-incremental归档;四、Docker卷rsync硬链接备份;五、CLI rollback日志追踪。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

如果您正在使用Hermes Agent并希望确保会话状态与工作区文件在意外中断后仍可快速复原,则需依赖其内置的增量备份机制。以下是实现增量备份自动化的具体路径:
一、启用SQLite数据库自动快照
Hermes Agent的核心状态(包括完整会话历史、工具调用记录与响应数据)持久化存储于~/.hermes/state.db中。该SQLite数据库支持WAL模式,配合定时快照可实现轻量级增量备份。
1、确认数据库处于WAL模式:
执行sqlite3 ~/.hermes/state.db "PRAGMA journal_mode;",输出应为wal。
2、创建每日快照脚本~/bin/hermes-snapshot.sh:
写入内容:
#!/bin/bash<br>cp ~/.hermes/state.db ~/.hermes/backups/state-$(date +\%Y\%m\%d).db
3、添加crontab任务:
运行crontab -e,插入行:0 3 * * * /home/$(whoami)/bin/hermes-snapshot.sh,实现每日凌晨3点自动拷贝。
二、配置Git集成检查点自动提交
当Hermes Agent运行于Git仓库内时,其checkpoint系统默认启用Git模式,每次工具调用后将变更暂存并提交至临时分支hermes/checkpoints/<session></session>,形成时间戳明确、可追溯的增量提交链。
1、进入项目根目录:
执行cd /path/to/your/project,确保该目录已初始化为Git仓库。
2、启用Git checkpoint策略:
编辑~/.hermes/config.yaml,添加字段:checkpoint: {mode: git}。
3、验证Git凭证可用性:
运行git config --global credential.helper store,随后执行一次手动提交以缓存凭据。
三、部署tar增量归档脚本
在非Git环境或需跨主机同步场景下,Hermes Agent采用tar --listed-incremental机制生成差异快照,仅打包自上次归档以来修改的文件,大幅降低存储与传输开销。
1、初始化增量基础档案:
执行touch ~/.hermes/checkpoints/snar-base.snar && tar --create --file=~/.hermes/checkpoints/base.tar --listed-incremental=~/.hermes/checkpoints/snar-base.snar ~/.hermes/checkpoints/
2、编写增量归档脚本~/bin/hermes-inc-backup.sh:
写入内容:
#!/bin/bash<br>TIMESTAMP=$(date +\%Y\%m\%d_\%H\%M)<br>tar --create --gzip --file=~/.hermes/backups/inc-$TIMESTAMP.tar.gz --listed-incremental=~/.hermes/checkpoints/snar-base.snar ~/.hermes/checkpoints/
3、设置每两小时执行一次:
在crontab中添加:0 */2 * * * /home/$(whoami)/bin/hermes-inc-backup.sh
四、利用Docker卷快照实现容器级增量保护
若通过Docker部署Hermes Agent,其挂载卷hermes-data承载全部用户数据。借助rsync与硬链接技术,可在宿主机上构建类似Time Machine的时间轴式增量备份结构。
1、创建备份根目录并初始化首层:
执行mkdir -p ~/hermes-backups/{current,previous} && rsync -aH --delete ~/.hermes/ ~/hermes-backups/current/
2、编写增量同步脚本~/bin/hermes-rsync-inc.sh:
写入内容:
#!/bin/bash<br>mv ~/hermes-backups/current ~/hermes-backups/previous<br>mkdir ~/hermes-backups/current<br>rsync -aH --delete --link-dest=../previous ~/.hermes/ ~/hermes-backups/current/
3、配置每日执行:
在crontab中加入:0 4 * * * /home/$(whoami)/bin/hermes-rsync-inc.sh
五、启用CLI内置rollback日志追踪
Hermes Agent的hermes rollback命令本身不执行备份,但依赖~/.hermes/logs/rollback.log中记录的每次checkpoint创建时间、会话ID与文件哈希。开启日志追踪是实现可验证增量恢复的前提。
1、确保日志目录存在:
执行mkdir -p ~/.hermes/logs。
2、启用详细checkpoint日志:
向~/.hermes/config.yaml追加:logging: {level: info, file: ~/.hermes/logs/rollback.log}
3、验证日志写入:
手动触发一次检查点:hermes checkpoint create --reason "manual-test",随后检查rollback.log是否新增含checkpoint_created关键字的条目。


















