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

安全深入——权限与隔离

Hermes Agent 官方教程第29篇:权限与隔离

Hermes tutorial

安全深入——權限與隔離

安全這個話題,聽起來就頭大?別怕,今天咱們用大白話把 Hermes Agent 的「安保系統」捋一遍。官方文件說它用的是縱深防禦,說白了就是好幾道門,壞人不那麼容易闖進來。

八道防線,層層設卡

Hermes 的安全模型一共有八層,咱們挑重點說:

  1. 使用者授權——誰能跟 Agent 說話(白名單、私聊配對)
  2. 危險命令審批——破壞性操作必須有人點頭
  3. 檔案寫入安全——黑名單 + 可選沙箱
  4. 容器隔離——Docker/Singularity/Modal 沙箱,設定加固
  5. MCP 憑證過濾——子程序環境變數隔離
  6. 上下文檔案掃描——偵測專案檔案裡的提示注入
  7. 跨工作階段隔離——工作階段之間互不干擾,cron 儲存路徑防穿越
  8. 輸入淨化——終端工具的工作目錄參數要過白名單,防 shell 注入

危險命令審批:三道模式任你選

在跑任何命令之前,Hermes 都會拿它跟一份「危險清單」比對。命中了?那就得有人來批准。設定在 ~/.hermes/config.yaml 裡:

approvals:
  mode: smart                     # smart | manual | off
  timeout: 300                    # 等使用者回覆的秒數
  cron_mode: deny                 # 定時任務撞上危險命令咋辦
  single_query_mode: deny         # 單次問答(-q)撞上咋辦
  mcp_reload_confirm: true        # /reload-mcp 前先問一聲
  destructive_slash_confirm: true # /clear 這類命令先確認

三種模式的區別:

模式 行為
smart(預設) 讓一個輔助 LLM 評估風險。低風險的(比如 python -c "print('hello')")自動放行;真危險的自動拒絕;拿不準的彈窗問你
manual 所有危險命令都彈窗,人工審批
off 完全關閉檢查,等於 --yolo,啥都直接跑

⚠️ 把 mode 設成 off 等於把所有安全門都拆了,只建議在 CI/CD、容器這類可信環境裡用。

YOLO 模式:放飛自我的開關

YOLO 模式會跳過所有危險命令審批彈窗(但硬性黑名單還是攔得住的)。三種開啟方式:

  1. 命令列hermes --yolohermes chat --yolo
  2. 斜線命令:工作階段裡輸 /yolo 切換開關
  3. 環境變數HERMES_YOLO_MODE=1

注意,/yolo 是個開關,輸一次開,再輸一次關:

> /yolo
  ⚡ YOLO mode ON — all commands auto-approved. Use with caution.

> /yolo
  ⚠ YOLO mode OFF — dangerous commands will require approval.

開了 YOLO 之後,Hermes 會給你兩個視覺提醒,就怕你忘了自己正在「裸奔」:

  • 工作階段開始時顯示紅色橫幅:⚠ YOLO mode — all approval prompts bypassed
  • 狀態列裡常駐一個 ⚠ YOLO 標記,即時更新

🔥 YOLO 模式會關閉所有危險命令安全檢查——除了硬性黑名單。只在你完全信任要執行的命令時用(比如一次性環境裡的自動化腳本)。

新變化速覽

這次文件更新有幾個值得注意的點:

  • destructive_slash_confirm/clear/new/reset/undo 這些「毀檔」命令,現在預設會先彈窗確認。Telegram、Discord、Slack 上有原生按鈕,其他地方用文字回退。點「Always Approve」的人,這個鍵會自動變成 false
  • mcp_reload_confirm/reload-mcp 會重建 MCP 工具集,這會讓 provider 的提示快取失效(工具 schema 在系統提示詞裡),所以下次訊息要重發完整輸入 token。預設先問一聲,點「Always Approve」就跳過。
  • single_query_modehermes chat -q 這種一次性工作階段,跑完就退出,沒人等著回答審批彈窗,所以預設 deny,命令直接攔下。

小結

Hermes 的安全設計思路很清晰:預設保守,按需放開。日常用 smart 模式就行,LLM 幫你把關;真要放飛自我,YOLO 模式也在,但記得你是在「裸奔」。安全不是限制,是讓你放心大膽地用。

📖 官方文档

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