Hermes Agent 全自动模式:YOLO 与命令审批详解

详解 YOLO 模式三种启用方式、配置原理与安全注意事项

Hermes Agent 默认情况下,执行危险命令(如 rm -rfgit reset --hard 等)前会弹出二次确认提示,要求用户手动批准。这在日常使用中是安全的设计,但如果你在自动化场景、沙盒环境或需要长时间自主运行的任务中,这个确认提示会打断工作流。

YOLO 模式(全自动模式) 就是用来解决这个问题的——它跳过所有危险命令的人工审批,让 Agent 完全自主决策并执行。


审批模式概述

Hermes 的命令审批有三种模式,覆盖从安全优先到高效优先的完整谱系:

模式 行为
手动审批 manual 所有危险命令都弹出提示,等待用户确认(默认)
智能审批 smart 辅助 LLM 自动判断:低风险命令直接放行,高风险才提示
全自动 off 跳过所有审批,Agent 自主执行一切命令(YOLO)

启用 YOLO 模式的三种方式

1. 临时启动:--yolo 标志

单次会话生效,不修改配置文件。适合临时需要全自动的场景:

hermes chat --yolo

也有环境变量方式:

export HERMES_YOLO_MODE=1
hermes chat

启动后终端顶部会显示 YOLO 状态提示,提醒你当前处于免确认模式。

2. 会话中动态切换:/yolo 命令

如果已经进入交互会话,不需要退出,直接输入斜杠命令即可实时切换:

/yolo

这是一个开关命令:输入一次开启 YOLO,再输入一次关闭,恢复默认审批模式。

注意:/config 斜杠命令只用于查看当前配置,不支持通过它修改配置项。修改配置请用下面的方式。

3. 永久配置:写入 config.yaml

方法 A:CLI 命令(推荐)

# 全自动模式(YOLO)
hermes config set approvals.mode off

# 智能审批模式(推荐折中方案)
hermes config set approvals.mode smart

# 恢复到手动审批(默认)
hermes config set approvals.mode manual

方法 B:手动编辑配置文件

hermes config edit

找到 approvals 配置段,修改 mode 字段:

approvals:
  # mode 可选: manual(手动)、smart(智能)、off/false(完全自动/YOLO)
  mode: false

⚠️ 正确路径是 approvals.mode,不是 terminal.approval 经常有资料写错这个配置路径,注意区分。


配置生效时机

修改配置后,需要重启会话才能生效:

  • CLI 模式:退出后重新运行 hermes
  • Gateway(Telegram/Discord 等):发送 /restart 重启网关
  • YOLO 标志(--yolo)和环境变量:每次启动时读取,不影响其他会话

YOLO 模式下什么变了

开启 YOLO 后,以下行为会跳过审批

  • rm -rf 等危险文件操作
  • git reset --hard / git push --force 等破坏性 Git 操作
  • 系统配置修改(/etc/ 下的文件写入等)
  • 网络请求(curlwget
  • Docker 容器管理命令
  • 包管理器的安装/卸载

需要注意的是,YOLO 模式不影响密钥脱敏(secret redaction)——即使全自动模式,API Key 等敏感信息在工具输出中仍然会被自动遮盖。两者是独立的配置:

hermes config set security.redact_secrets true  # 保持开启(默认)

安全建议

YOLO 模式授予了 Agent 完整的系统操作权限,使用时需注意:

推荐配合隔离环境使用

hermes config set terminal.backend docker     # 使用 Docker 后端
# 或
hermes config set terminal.backend ssh        # 使用 SSH 远程后端

将终端操作限制在容器或远程沙盒中,即使 Agent 误操作也不会影响宿主机。

日常推荐「智能审批」模式

如果不是明确需要全自动化,建议使用智能模式作为日常配置:

hermes config set approvals.mode smart

辅助 LLM 会判断命令风险——安装 npm 包这种常规操作自动放行,rm -rf / 这样的高危操作仍然需要你确认。

以下场景可以考虑 YOLO

  • 在 Docker 容器或沙盒中开发
  • CI/CD 自动化流水线
  • 长时间无人值守的数据处理任务
  • 受控的测试环境
  • 一次性脚本执行(配合 --yolo 临时启用)

以下场景不建议使用 YOLO

  • 在生产服务器上操作
  • 刚接触 Hermes,还在熟悉其行为
  • 不熟悉 AI Agent 可能执行的危险命令
  • 多人共享的 Gateway 环境

总结

YOLO 模式是 Hermes Agent 一个强大的功能开关,适合自动化场景,但也自带风险。关键是理解三种配置方式(临时标志、动态切换、永久配置)各自的适用场景,以及正确的配置路径 approvals.mode

日常推荐配置:

# 日常用智能审批
hermes config set approvals.mode smart

# 需要全自动时临时用
hermes chat --yolo

这样既保持日常使用的安全性,又能在需要时灵活切换到全自动模式。