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

安全设置——放心让 AI 帮你干活

Hermes Agent 官方教程第九篇:安全。命令审批、文件保护、容器隔离。

Hermes tutorial

安全設定——放心讓 AI 幫你幹活

上一篇文章我們聊了怎麼讓 Hermes 自己定時幹活(cron),那問題來了:讓 AI 自動跑命令,萬一它幹壞事怎麼辦? 別慌,Hermes 的安全模型是「縱深防禦」,整整八層防護,咱們今天挑重點講。

八層防護,層層設卡

簡單說,Hermes 從「誰能跟我說話」到「命令危不危險」再到「檔案能不能亂寫」,每一層都有檢查。最核心的幾層:

  1. 使用者授權——只有白名單裡的人能指揮它(比如 Telegram/Discord 私聊配對)
  2. 危險命令審批——破壞性操作必須有人點頭
  3. 檔案寫入沙箱——write_file/patch 有黑名單和可選沙箱
  4. 容器隔離——Docker/Singularity/Modal 跑在沙盒裡
  5. 上下文檔案掃描——防止專案檔案裡藏提示注入攻擊
  6. 跨會話隔離——會話之間互相摸不到資料,cron 儲存路徑也防了路徑穿越

危險命令審批:三種模式隨便選

這是最常用的安全開關,配置在 ~/.hermes/config.yaml

approvals:
  mode: smart          # smart | manual | off
  timeout: 300         # 等使用者回覆的秒數
  cron_mode: deny      # cron 遇到危險命令:deny 直接攔,approve 自動放行
  single_query_mode: deny  # hermes chat -q 單次問答同理

三種模式的區別:

模式 行為
smart(預設) 用輔助 LLM 判斷風險。低風險命令(比如 python -c "print('hello')")自動放行;真危險的自動拒絕;拿不準的彈窗問你
manual 所有危險命令一律彈窗,人工審批
off 關閉所有審批,等於 --yolo只在 CI/CD 或容器等可信環境用

YOLO 模式:想徹底放飛?有三道門

YOLO 模式會繞過所有危險命令審批(但硬性黑名單依然生效),三種開啟方式:

hermes --yolo          # 1. 啟動時加參數
# 或會話裡輸入 /yolo    # 2. 斜槓命令,再輸一次就關掉
# 或 export HERMES_YOLO_MODE=1   # 3. 環境變數

開啟後終端會一直顯示 ⚠ YOLO 紅色橫幅和狀態列標記,提醒你別浪過頭。注意/clear/new/reset/undo 這些破壞性會話命令,就算 YOLO 模式下也會彈確認框(除非設了 HERMES_TUI_NO_CONFIRM=1 強跳)。

新變化:審批逾時與 cron 策略

新版加了 timeout 參數(預設 300 秒),你半天不回覆,審批就逾時作廢。另外 cron_modesingle_query_mode 預設都是 deny——意思是定時任務或 -q 單次問答遇到危險命令時,直接拒絕,AI 得自己另想辦法,而不是傻等一個不會出現的使用者。

小貼士

  • 日常用 smart 模式最省心,低風險命令不打擾你,真危險的才彈窗
  • 跑自動化腳本建議用容器隔離 + cron_mode: deny,雙保險
  • 別在共享電腦上開 YOLO,除非你想看 AI 幫你 rm -rf /

安全設定調好了,AI 幹活你才能真放心。下一篇咱們聊聊怎麼用 MCP 給 Hermes 插上更多工具,記得關注!

📖 官方文档

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