Hermes检查点系统:自动快照破坏性操作,支持/rollback回滚
RT @iamlukethedev: Hermes隐藏功能:/rollback
我刚刚看到一个人工智能智能体在3秒内销毁了一个代码库。
rm -rf src/
rm -rf tests/
git reset --hard
它在一个回合中全部执行了。智能体早期出现逻辑错误,逐渐升级为灾难性故障。
于是我输入:/rollback 1
一切恢复了。
文件还原。智能体上下文回退。就像从未发生过一样。
这就是检查点系统。
它的功能如下:
Hermes在每次破坏性操作前自动快照您的项目:
- 文件写入(write_file)
- 文件修补(patch)
- 危险终端命令(rm, git reset --hard, sed -i 等)
每个目录每个回合一个快照。长时间会话中不会产生垃圾。
当事情出错时(或者做对了,但您想要不同的方法):
/rollback 列出所有带变更统计的快照
/rollback <N> 恢复到快照N并回退智能体上下文(文件系统状态与智能体上下文匹配)
/rollback diff <N> 预览自快照N以来的变更
/rollback <N> filename 从快照N恢复单个文件
如何启用:
每会话:
hermes chat --checkpoints
或全局在~/.hermes/config.yaml:
checkpoints:
enabled: true
底层工作原理:
单一共享git仓库(~/.hermes/checkpoints/store/)
Git的内容寻址对象数据库跨项目去重
每个项目的引用独立跟踪快照历史
结果:第一个快照后,每个新快照几乎零存储成本
安全护栏:
跳过大于max_file_size_mb(默认10MB)的文件
跳过过宽的目录(根目录/,家目录$HOME)
跳过包含5万以上文件的仓库
自动清理孤儿项目(其工作目录不再存在)
尊重max_snapshots(默认20)和max_total_size_mb(默认500)
如果git不在PATH中,检查点透明禁用
非致命错误在调试级别记录;您的工具继续运行
它不是什么:
不是git的替代品
不是完整的版本控制
不是递归备份魔法
只是人工智能操作的安全网。可选加入。静默。几乎零成本。
最适合:
无人值守自动化(cron任务、部署、CI/CD)
错误级联的多步骤重构
希望立即中止的批量文件操作
不完全有把握的实验
真实例子:
智能体重构您的包结构:
快照1:write_file新模块(+847行)
快照2:跨15个文件patch导入
快照3:终端rm -rf old_src/
在步骤3的某个地方,它删除了比预期更多的内容。
/rollback 1
回到重构开始之前。智能体上下文回退。您重新掌控。
这就是区别:
- 手把手自动化(您观看每一步)
- 可信自动化(您放手去做,但有撤销按钮)
CLI命令(在会话外):
hermes checkpoints
hermes checkpoints status
hermes checkpoints prune
hermes checkpoints clear
配置选项:
checkpoints:
enabled: false
max_snapshots: 20
max_total_size_mb: 500
max_file_size_mb: 10
auto_prune: true
retention_days: 7
为什么现在很重要:
大多数人工智能智能体框架没有撤销功能。您应该手动使用git。Hermes内置了它,透明、自动、智能。
我刚刚看到一个人工智能智能体在3秒内销毁了一个代码库。
rm -rf src/
rm -rf tests/
git reset --hard
它在一个回合中全部执行了。智能体早期出现逻辑错误,逐渐升级为灾难性故障。
于是我输入:/rollback 1
一切恢复了。
文件还原。智能体上下文回退。就像从未发生过一样。
这就是检查点系统。
它的功能如下:
Hermes在每次破坏性操作前自动快照您的项目:
- 文件写入(write_file)
- 文件修补(patch)
- 危险终端命令(rm, git reset --hard, sed -i 等)
每个目录每个回合一个快照。长时间会话中不会产生垃圾。
当事情出错时(或者做对了,但您想要不同的方法):
/rollback 列出所有带变更统计的快照
/rollback <N> 恢复到快照N并回退智能体上下文(文件系统状态与智能体上下文匹配)
/rollback diff <N> 预览自快照N以来的变更
/rollback <N> filename 从快照N恢复单个文件
如何启用:
每会话:
hermes chat --checkpoints
或全局在~/.hermes/config.yaml:
checkpoints:
enabled: true
底层工作原理:
单一共享git仓库(~/.hermes/checkpoints/store/)
Git的内容寻址对象数据库跨项目去重
每个项目的引用独立跟踪快照历史
结果:第一个快照后,每个新快照几乎零存储成本
安全护栏:
跳过大于max_file_size_mb(默认10MB)的文件
跳过过宽的目录(根目录/,家目录$HOME)
跳过包含5万以上文件的仓库
自动清理孤儿项目(其工作目录不再存在)
尊重max_snapshots(默认20)和max_total_size_mb(默认500)
如果git不在PATH中,检查点透明禁用
非致命错误在调试级别记录;您的工具继续运行
它不是什么:
不是git的替代品
不是完整的版本控制
不是递归备份魔法
只是人工智能操作的安全网。可选加入。静默。几乎零成本。
最适合:
无人值守自动化(cron任务、部署、CI/CD)
错误级联的多步骤重构
希望立即中止的批量文件操作
不完全有把握的实验
真实例子:
智能体重构您的包结构:
快照1:write_file新模块(+847行)
快照2:跨15个文件patch导入
快照3:终端rm -rf old_src/
在步骤3的某个地方,它删除了比预期更多的内容。
/rollback 1
回到重构开始之前。智能体上下文回退。您重新掌控。
这就是区别:
- 手把手自动化(您观看每一步)
- 可信自动化(您放手去做,但有撤销按钮)
CLI命令(在会话外):
hermes checkpoints
hermes checkpoints status
hermes checkpoints prune
hermes checkpoints clear
配置选项:
checkpoints:
enabled: false
max_snapshots: 20
max_total_size_mb: 500
max_file_size_mb: 10
auto_prune: true
retention_days: 7
为什么现在很重要:
大多数人工智能智能体框架没有撤销功能。您应该手动使用git。Hermes内置了它,透明、自动、智能。