hermes@agent:~/.hermes$ cat hermes.md

Hermes Agent:實務工作者參考指南(2026)

# v0.14 Foundation新增SuperGrok OAuth、hermes proxy、x_search、PyPI安裝、22個訊息平台、/handoff、LSP寫入診斷、video_generate、computer_use、原生Windows beta,以及更輕量的延遲安裝。

words: 4202 read_time: 37m updated: 2026-05-22 04:09
$ less hermes.md

TL;DR:Hermes Agent是Nous Research推出的開源自我改進AI agent。它可以作為CLI執行,也能作為多平台訊息gateway;會在磁碟上儲存持久身分與永久記憶,彙整會隨使用而改進的skills,並可搭配任何OpenAI相容的LLM供應商使用,包括Nous Portal、OpenRouter、Anthropic、GitHub Copilot、z.ai、Kimi、MiniMax、DeepSeek、Qwen Cloud、Hugging Face、Google、xAI/SuperGrok,或您自行託管的endpoint。1219截至v0.14.0(2026年5月16日),Hermes新增SuperGrok OAuth,具備grok-4.3 1M context;加入可供OAuth供應商使用的OpenAI相容本機proxy(hermes proxy);正式支援x_search、PyPI安裝、lazy dependency installs、含LINE與SimpleX Chat在內的22個messaging platforms、/handoff、寫入後的LSP語意診斷、統一的video_generate、透過cua-driver為非Anthropic供應商提供computer_use、原生Windows beta,以及12項P0/50項P1收斂。19多數新使用者最難掌握的是供應商驗證:Hermes支援約20個一級供應商加上自訂endpoints,並有3種不同auth路徑(.env中的API key、透過hermes model使用OAuth,或在config.yaml中設定custom endpoint)。auth模型是最該優先理解的部分,因為後續一切都取決於最終解析到哪個供應商。

Hermes Agent運作方式是完整的agent runtime,不是chat wrapper。它會讀取您的檔案系統、在沙盒後端執行命令、擷取網頁、產生subagents、執行排程cron jobs、透過單一gateway process與Telegram/Discord/Slack/WhatsApp/Signal/Email溝通,並從經驗中建立自己的skills。1CLI是在run_agent.py中的conversation loop之上打造的terminal UI;gateway則是長時間執行的process,負責將messaging platforms的訊息路由到同一個conversation loop。3

一般使用與專家級Hermes使用的差異,取決於5個系統。掌握這些系統後,Hermes就會成為倍增器:

  1. Provider resolution:auth流程如何對應到API呼叫
  2. Configuration hierarchyconfig.yaml.envauth.jsonSOUL.mdAGENTS.md
  3. Tool+toolset system:agent能做什麼,並依平台控管
  4. Skills system:agent會建立並持續演進的程序性記憶
  5. Gateway+cron+profiles:讓Hermes在您實際工作的地方運作,而不只是在您所在的終端機裡

重點摘要

  • Provider auth有3條路徑,不是1條。.env中的API key、透過hermes model/hermes auth使用OAuth,或在config.yaml中設定custom endpoint。請選擇符合供應商的路徑,而不是選看起來熟悉的路徑。
  • 切換供應商只需要一個命令。hermes model會以互動方式引導您完成每個支援的供應商設定,包括OAuth登入;/model provider:model可在session中途切換,且不會遺失歷史紀錄。2
  • 使用者可編輯的設定介面集中在兩個檔案。~/.hermes/config.yaml存放設定,~/.hermes/.env存放secrets。auth.jsonSOUL.mdMEMORY.mdskills/由Hermes直接管理;您可以手動編輯SOUL.md,但其餘項目會由agent本身處理。4
  • Hermes是OpenClaw的後繼者。若正在遷移,hermes claw migrate會自動匯入30多類狀態。5
  • 服務品質取決於您的auxiliary model。Vision、web summarization、compression與memory flush都會使用獨立的auxiliary LLM。預設會透過自動偵測使用Gemini Flash(OpenRouter→Nous→Codex);若未設定其中任一項,這些功能會靜默降級,直到您將auxiliary slots指向主要供應商為止。4

v0.14變更內容

v0.14.0與其說是單一主打功能,不如說是在擴大Hermes可執行範圍的同時,降低設定阻力。19主要操作面變更如下:

  • 安裝與啟動更輕量。pip install hermes-agent可從PyPI安裝,heavy adapters會在首次使用時lazy-install,啟動路徑也延後足夠多的工作,使cold start約縮短19秒。
  • 訂閱可以變成本機API endpoints。hermes proxy會把Claude Pro、ChatGPT Pro、SuperGrok等以OAuth支援的供應商,轉成本機OpenAI相容endpoint,供Codex、Aider、Cline與Continue等工具使用。
  • Gateway涵蓋範圍擴大。LINE與SimpleX Chat讓平台數量來到22個;Microsoft Teams已完成端到端串接;Discord history backfill預設啟用;Telegram/Discord的clarify提示現在會使用原生按鈕。
  • 寫入時驗證能力提升。編輯後,Hermes可以在下一輪之前顯示每輪的file-mutation摘要與language-server語意診斷,讓它更接近以證據驅動的agent工作方式。
  • 桌面與媒體工具範圍擴大。computer_use會透過cua-driver支援非Anthropic供應商;video_generate統一由可插拔後端提供;vision_analyze會將原始pixels傳給真正能看見影像的models。

以下每個章節皆以hermes-agent.nousresearch.com/docs的上游文件,以及github.com/NousResearch/hermes-agent的source tree為依據。每項事實聲明都有footnote指向其來源的特定上游頁面。

選擇您的路徑

您需要什麼 前往這裡
安裝Hermes Installation — 一行安裝程式或手動步驟
登入供應商 Authentication & Providers — 這就是您來看的章節
在session中途切換models The hermes auth CommandCustom & Self-Hosted Endpoints,了解/model語法
執行本機LLM Custom & Self-Hosted Endpoints — Ollama、vLLM、SGLang、llama.cpp、LM Studio
連接messaging platforms Messaging Gateway — Telegram、Discord、Slack、WhatsApp、Signal、Google Chat、LINE、SimpleX Chat(共22個)
撰寫或安裝skill Skills System — progressive disclosure+skill hub
深入參考每個CLI命令 繼續閱讀,並直接連到CLI Commands

Hermes 的運作方式:心智模型

Hermes 的結構圍繞著單一對話迴圈,任何進入點都能呼叫它。這些進入點包括 CLI(cli.py)、訊息 gateway(gateway/run.py)、用於編輯器整合的 ACP adapter、batch runner,以及 API 伺服器。3它們最後都會呼叫 run_agent.py 中的 AIAgent.run_conversation(),其流程如下:

  1. 透過 prompt_builder.py,從 SOUL.mdMEMORY.mdUSER.md、skills、context 檔案與 tool 指引建立 system prompt3
  2. 透過 runtime_provider.py 解析 runtime provider——這一步會選定您的 auth、base URL,以及 API mode3
  3. 使用 3 種 API mode 之一呼叫 provider:chat_completionscodex_responsesanthropic_messages3
  4. 透過 model_tools.py 與中央 tool registry(tools/registry.py)分派任何回傳的 tool calls3
  5. 持續迴圈,直到模型產生 final response,接著將 session 持久化到具備 FTS5 的 SQLite3

理解這個迴圈很重要,因為每項功能——personalities、memory、skills、compression、fallback——都附著在其中某個階段。當您讀到某個 config key、想知道它的用途時,答案通常是:「它是上述迴圈第 1、2、3 或 4 階段的一個旋鈕。」

與平台無關的核心。單一 AIAgent class 同時服務 CLI、gateway、ACP、batch 與 API server。平台差異存在於進入點,而不是 agent 本身。3這也是為什麼相同的 slash commands 能同時在 terminal 與 Telegram 中運作——它們都是從 hermes_cli/commands.py 中共用的 COMMAND_REGISTRY 分派。6

目錄結構就是系統。Hermes 會把所有內容儲存在 ~/.hermes/ 下(或非預設 profiles 使用的 $HERMES_HOME):4

~/.hermes/
├── config.yaml        # Settings (model, terminal, TTS, compression, etc.)
├── .env               # API keys and secrets
├── auth.json          # OAuth provider credentials (Nous Portal, Codex, Anthropic)
├── SOUL.md            # Primary agent identity (slot #1 in system prompt)
├── memories/          # Persistent memory (MEMORY.md, USER.md)
├── skills/            # Bundled + agent-created + hub-installed skills
├── cron/              # Scheduled jobs
├── sessions/          # Gateway session state
└── logs/              # agent.log, gateway.log, errors.log (secrets auto-redacted)

上方每個檔案都有明確角色,彼此互不重疊。如果您想找「Hermes 把 X 存在哪裡」,答案就在這些項目之一。


安裝

對多數使用者而言,單行 installer 仍是受引導的安裝路徑。它會處理 Python、uv、Node.js、ripgrep、ffmpeg、repo clone、virtual environment,以及全域 hermes command。7v0.14.0 也提供真正的 PyPI package,因此當您已能掌控 Python environment 時,pip install hermes-agent 現在也是可行的直接安裝方式。19

curl -fsSL https://raw.githubusercontent.com/NousResearch/hermes-agent/main/scripts/install.sh | bash
pip install hermes-agent
hermes

可在 Linux、macOS、WSL2 與 Android/Termux 上運作(installer 會自動偵測 Termux,並切換至經測試的 Android bundle)。7v0.14.0 透過 PowerShell installer 加入早期 beta 的原生 Windows 支援,但在 Windows 路徑成熟以前,production use 仍建議採用較穩妥的 WSL2。19

完成後:

source ~/.bashrc    # or ~/.zshrc
hermes              # Start chatting

唯一前置需求是 git。installer 會透過 uv 自動佈建 Python 3.11(不需 sudo)、Node.js v22(用於 browser automation 與 WhatsApp bridge)、ripgrep,以及 ffmpeg。7

驗證安裝

hermes version      # Check version
hermes doctor       # Diagnose config/dependency issues
hermes status       # Show current configuration + auth state
hermes dump         # Copy-pasteable setup summary for debugging

hermes doctor 會明確告訴您缺少什麼,以及如何修正。7當您需要求助時,hermes dump 是可貼到 GitHub issue 或 Discord thread 的 diagnostic command——它會以純文字摘要呈現整個設定,並遮蔽 secrets。8

手動安裝

如果需要完整掌控——自訂 Python version、特定 extras、Nix/NixOS integration——upstream installation guide 已逐步記錄手動流程。7以下是可搭配 uv pip install -e ".[<extras>]" 使用的主要 optional extras:

Extra 新增內容
all 下列全部內容
messaging Telegram 與 Discord gateway
cron Cron expression parsing
cli 用於 setup wizard 的 terminal menu UI
modal Modal cloud execution backend
voice CLI microphone input + audio playback
tts-premium ElevenLabs premium voices
honcho AI-native memory(Honcho integration)
mcp Model Context Protocol support
homeassistant Home Assistant integration
acp ACP editor integration support
slack Slack messaging
pty PTY terminal support(interactive CLI tools)
dev pytest 與 test utilities
termux 經測試的 Android bundle(包含 croncliptymcphonchoacp

Termux install command 不同——它使用帶有 constraints file 的 pip,不是 uv pip

python -m pip install -e ".[termux]" -c constraints-termux.txt

這是因為 Android 上的 .[all] 會透過 voice extra 拉入 faster-whisper,而它依賴的 ctranslate2 wheels 並未針對 Android 發布。7

驗證與提供者

Hermes 支援約19個一級提供者,以及自訂端點與3種不同的驗證路徑。以下是完整的驗證介面,依路徑整理,方便您找到符合手上條件的方式。

3種驗證路徑

Hermes 中的每個提供者都符合下列3種驗證模式之一:

路徑1 — .env 中的 API key。 將金鑰放入 ~/.hermes/.env,Hermes 會在啟動時讀取。OpenRouter、AI Gateway、z.ai/GLM、Kimi/Moonshot、MiniMax(以及 MiniMax China)、Alibaba Cloud/DashScope、Kilo Code、OpenCode Zen、OpenCode Go、DeepSeek、Hugging Face、Google/Gemini,以及多數第三方提供者都使用此方式。2

路徑2 — 透過 hermes modelhermes auth 使用 OAuth。 啟動裝置碼流程、開啟瀏覽器,並將憑證儲存在 ~/.hermes/auth.json(也可以從 Claude Code 或 Codex CLI 等工具匯入既有憑證)。Nous Portal、OpenAI Codex(ChatGPT 帳號)、GitHub Copilot,以及 Anthropic(Claude Pro/Max)都使用此方式。2

路徑3 — config.yaml 中的自訂端點。 適用於任何 OpenAI 相容的 API:Ollama、vLLM、SGLang、llama.cpp、LM Studio、LiteLLM proxy、Together AI、Groq、Azure OpenAI,或您自行託管的伺服器。透過 hermes model → Custom endpoint 設定一次後,會持久寫入 config.yaml2

完整提供者矩陣

以下是一級提供者的完整清單,並列出各自精確的設定流程。2

Provider Auth path Setup
Nous Portal OAuth hermes model(OAuth 登入,訂閱制)
OpenAI Codex OAuth hermes model(ChatGPT 裝置碼,使用 Codex 模型)
GitHub Copilot OAuth 或 token hermes model(OAuth 裝置碼),或 COPILOT_GITHUB_TOKEN / GH_TOKEN / gh auth token
GitHub Copilot ACP 本機子程序 hermes model(需要 PATH 中有 copilot CLI + copilot login
Anthropic OAuth 或 API key hermes model(優先使用 Claude Code 憑證),或 ANTHROPIC_API_KEY,或 ANTHROPIC_TOKEN setup-token
OpenRouter API key ~/.hermes/.env 中的 OPENROUTER_API_KEY
AI Gateway (Vercel) API key ~/.hermes/.env 中的 AI_GATEWAY_API_KEY(provider: ai-gateway
z.ai / GLM (ZhipuAI) API key ~/.hermes/.env 中的 GLM_API_KEY(provider: zai
Kimi / Moonshot API key ~/.hermes/.env 中的 KIMI_API_KEY(provider: kimi-coding
MiniMax (global) API key ~/.hermes/.env 中的 MINIMAX_API_KEY(provider: minimax
MiniMax China API key ~/.hermes/.env 中的 MINIMAX_CN_API_KEY(provider: minimax-cn
Alibaba Cloud (Qwen) API key ~/.hermes/.env 中的 DASHSCOPE_API_KEY(provider: alibaba,aliases: dashscope, qwen
Kilo Code API key ~/.hermes/.env 中的 KILOCODE_API_KEY(provider: kilocode
OpenCode Zen API key ~/.hermes/.env 中的 OPENCODE_ZEN_API_KEY(provider: opencode-zen
OpenCode Go API key ~/.hermes/.env 中的 OPENCODE_GO_API_KEY(provider: opencode-go
DeepSeek API key ~/.hermes/.env 中的 DEEPSEEK_API_KEY(provider: deepseek
Hugging Face API key ~/.hermes/.env 中的 HF_TOKEN(provider: huggingface,alias: hf
Google / Gemini API key ~/.hermes/.env 中的 GOOGLE_API_KEYGEMINI_API_KEY(provider: gemini
xAI (Grok) 原生提供者 / SuperGrok OAuth 一級提供者,提供直接 API 存取與模型目錄(v0.9.0+)。v0.14.0 新增 SuperGrok OAuth,並將符合資格帳號的 grok-4.3 提升到 1M context window。21619
xAI Custom Voices API key 具備聲音複製功能的 TTS 提供者。v0.13.0 新增;在 config.yamltts: 底下設定,並在 .env 提供 xAI key。18
Xiaomi MiMo 原生提供者 一級提供者,內建設定精靈與模型目錄。Nous Portal 上提供免費 MiMo v2 Pro,可用於輔助任務(v0.9.0+)。1615
Google AI Studio API key ~/.hermes/.env 中的 GOOGLE_API_KEYGEMINI_API_KEY。透過 models.dev registry 自動偵測 context length,直接存取 Gemini(v0.8.0+)。15
Qwen Cloud OAuth 支援 portal request 的 OAuth 提供者(v0.8.0+)。此提供者在 v0.14.0 從 Alibaba Cloud 更名為 Qwen Cloud;既有 config keys 仍可繼續使用。1519
Custom endpoint config.yaml hermes model → “Custom endpoint”(儲存在 config.yaml

Anthropic:3種驗證方法

Anthropic 需要獨立說明,因為 Hermes 支援3種進入 Claude 的不同路徑,而選對方式很重要。依上游文件所述:2

# Method 1: API key (pay-per-token)
export ANTHROPIC_API_KEY=***
hermes chat --provider anthropic --model claude-sonnet-4-6

# Method 2: OAuth through hermes model (preferred)
# Uses Claude Code's credential store when available
hermes model

# Method 3: Manual setup-token (fallback/legacy)
export ANTHROPIC_TOKEN=***
hermes chat --provider anthropic

# Auto-detect Claude Code credentials
hermes chat --provider anthropic   # reads Claude Code files automatically

當您透過 hermes model 選擇 Anthropic OAuth 時,Hermes 會優先使用 Claude Code 自己的憑證儲存區,而不是將 token 複製到 ~/.hermes/.env。如此可讓可重新整理的 Claude 憑證維持可重新整理。2 如果您已在同一台機器上使用 Claude Code,這是最乾淨俐落的路徑。

若要在 config.yaml 中永久釘選 Anthropic:

model:
  provider: "anthropic"
  default: "claude-sonnet-4-6"

--provider claude--provider claude-code 也可作為 --provider anthropic 的簡寫。2

GitHub Copilot:兩種模式

Copilot 支援兩種模式:直接 Copilot API(建議),以及 Copilot ACP(會將本機 Copilot CLI 作為子程序啟動)。2

# Direct Copilot API
hermes chat --provider copilot --model gpt-5.4

# Copilot ACP (requires the Copilot CLI in PATH + an existing copilot login)
hermes chat --provider copilot-acp --model copilot-acp

依上游文件所述,驗證會按以下順序檢查:2 1. COPILOT_GITHUB_TOKEN 環境變數 2. GH_TOKEN 環境變數 3. GITHUB_TOKEN 環境變數 4. gh auth token CLI 後援 5. 透過 hermes model 使用 OAuth 裝置碼登入

Token 類型很重要。 Copilot API 不支援傳統 Personal Access Tokens(ghp_*)。支援的類型包括 OAuth tokens(gho_*)、fine-grained PATs(具備 Copilot Requests 權限的 github_pat_*),以及 GitHub App tokens(ghu_*)。如果您的 gh auth token 回傳 ghp_* token,請改用 hermes model 透過 OAuth 驗證。2

中國 AI 提供者(一級支援)

Hermes 內建支援 z.ai/GLM、Kimi/Moonshot、MiniMax(global + China 端點),以及 Alibaba Cloud,並提供專用 provider ID。2

# z.ai / ZhipuAI GLM
hermes chat --provider zai --model glm-5                 # Requires: GLM_API_KEY

# Kimi / Moonshot AI
hermes chat --provider kimi-coding --model kimi-for-coding   # Requires: KIMI_API_KEY

# MiniMax (global)
hermes chat --provider minimax --model MiniMax-M2.7          # Requires: MINIMAX_API_KEY

# MiniMax (China)
hermes chat --provider minimax-cn --model MiniMax-M2.7       # Requires: MINIMAX_CN_API_KEY

# Alibaba Cloud / DashScope (Qwen)
hermes chat --provider alibaba --model qwen3.5-plus          # Requires: DASHSCOPE_API_KEY

Base URLs 可透過 GLM_BASE_URLKIMI_BASE_URLMINIMAX_BASE_URLMINIMAX_CN_BASE_URLDASHSCOPE_BASE_URL 環境變數覆寫。2

Z.AI 會自動偵測端點。 使用 z.ai/GLM 提供者時,Hermes 會探測多個端點(global、China、coding variants),找出接受您 API key 的端點。可用端點會自動快取,多數使用者不需要 GLM_BASE_URL2

xAI (Grok) 會自動啟用 prompt caching。 當 base URL 包含 x.ai 時,Hermes 會在每個 request 送出 x-grok-conv-id header,將同一個對話 session 路由到同一台伺服器,重用已快取的 system prompts 與 history。2 這是自動行為,無需設定。

hermes auth 指令

hermes auth 是用於 credential pools 與 OAuth 憑證的憑證管理指令。6

hermes auth                              # Interactive wizard
hermes auth list                         # Show all credential pools
hermes auth list openrouter              # Show one provider's pool
hermes auth add openrouter --api-key sk-or-v1-xxx
hermes auth add anthropic --type oauth
hermes auth remove openrouter 2          # Remove by index
hermes auth reset openrouter             # Clear cooldowns

Credential pools 可讓您為同一個提供者輪替多個 API keys 或 OAuth tokens。這對於在不修改程式碼的情況下,將 rate limits 分散到多組 key 很有用。6 舊版 hermes login / hermes logout 指令已移除;請改用 hermes auth6

自訂與自行託管端點

Hermes 可搭配任何 OpenAI 相容的 API 端點使用。只要伺服器實作 /v1/chat/completions,就可以讓 Hermes 指向它。2

互動式設定(建議):

hermes model
# Select "Custom endpoint (self-hosted / VLLM / etc.)"
# Enter: API base URL, API key, Model name

手動 config.yaml

model:
  default: your-model-name
  provider: custom
  base_url: http://localhost:8000/v1
  api_key: your-key-or-leave-empty-for-local

兩種方式都會持久寫入 config.yaml,它是 main-model、provider 與 base URL 的單一真實來源。2 舊版 env vars OPENAI_BASE_URLLLM_MODEL 不再用於 main-model 設定;請使用 hermes model 或直接編輯 config.yaml2OPENAI_BASE_URL + OPENAI_API_KEY 仍會作為輔助 provider: "main" 路由路徑的後援而被採用;如果您在該處使用它們,請勿貿然刪除。)4

在 session 中途切換自訂端點:

/model custom:qwen-2.5             # Custom endpoint with explicit model
/model custom                      # Auto-detect the model from the endpoint
/model custom:local:qwen-2.5       # Named custom provider "local"
/model custom:work:llama3          # Named custom provider "work"
/model openrouter:claude-sonnet-4  # Back to a cloud provider

/model custom(單獨使用,不帶模型名稱)會查詢您端點的 /v1/models API,若只載入1個模型就會自動選取;這對執行單一模型的本機伺服器很有用。2

本機 LLM 伺服器(設定範本)

上游文件提供 Ollama、vLLM、SGLang、llama.cpp 與 LM Studio 的完整設定指南。以下是您實際會執行的關鍵指令。每一項都設計成能產生 Hermes 可指向的可用端點。2

Ollama — 最簡單的本機路徑,零設定:

ollama pull qwen2.5-coder:32b
OLLAMA_CONTEXT_LENGTH=32768 ollama serve   # Raise from 4k default
hermes model   # Custom endpoint → http://localhost:11434/v1 → qwen2.5-coder:32b

Ollama 關鍵陷阱: Ollama 預設的 context length 很低(24GB VRAM 以下為 4,096 tokens)。您必須透過 OLLAMA_CONTEXT_LENGTH 或 Modelfile 提高它;OpenAI 相容的 API 接受由 client 傳入 context length,因此 Hermes 無法替您設定。2 若用於 agent,至少設為 16k–32k。

vLLM — 高效能 GPU serving:

pip install vllm
vllm serve meta-llama/Llama-3.1-70B-Instruct \
  --port 8000 \
  --max-model-len 65536 \
  --tensor-parallel-size 2 \
  --enable-auto-tool-choice \
  --tool-call-parser hermes

Tool calling 需要 --enable-auto-tool-choice--tool-call-parser <name>。支援的 parsers:hermes(Qwen 2.5、Hermes 2/3)、llama3_jsonmistraldeepseek_v3deepseek_v31xlampythonic。沒有這些 flags,tool calls 會以純文字回傳。2

SGLang — 使用 RadixAttention 重用 KV cache 的快速 serving:

pip install "sglang[all]"
python -m sglang.launch_server \
  --model meta-llama/Llama-3.1-70B-Instruct \
  --port 30000 \
  --context-length 65536 \
  --tp 2 \
  --tool-call-parser qwen

SGLang 陷阱: 預設 max_tokens 為 128。如果回應被截斷,請在伺服器上設定 --default-max-tokens,或在 config.yaml 設定 model.max_tokens2

llama.cpp / llama-server — CPU 與 Apple Silicon Metal:

./build/bin/llama-server \
  --jinja -fa \
  -c 32768 \
  -ngl 99 \
  -m models/qwen2.5-coder-32b-instruct-Q4_K_M.gguf \
  --port 8080 --host 0.0.0.0

tool calling 必須使用 --jinja 沒有它,llama-server 會完全忽略 tools 參數,模型會嘗試在回應文字中寫入 JSON 來呼叫工具,而 Hermes 無法將其解析為真正的 tool calls。2

LM Studio — 具 GUI 的桌面應用程式:

從 LM Studio app 啟動伺服器(Developer tab → Start Server),或透過 CLI:lms server start(在 port 1234 啟動)與 lms load qwen2.5-coder --context-length 327682 接著讓 hermes model 指向 http://localhost:1234/v1

LM Studio 關鍵陷阱: LM Studio 會從模型 metadata 讀取 context length,但許多 GGUF 模型回報的預設值是 2048 或 4096。務必在 LM Studio 模型設定中明確設定 context length:點選模型選擇器旁的齒輪圖示,將 “Context Length” 設為至少 16384(最好是 32768),然後重新載入模型。2

具名自訂提供者

如果您使用多個自訂端點(例如本機開發伺服器與遠端 GPU 伺服器),請在 config.yaml 將它們定義為具名自訂提供者:2

custom_providers:
  - name: local
    base_url: http://localhost:8080/v1
    # api_key omitted — Hermes uses "no-key-required" for keyless local servers
  - name: work
    base_url: https://gpu-server.internal.corp/v1
    api_key: corp-api-key
    api_mode: chat_completions      # optional, auto-detected from URL
  - name: anthropic-proxy
    base_url: https://proxy.example.com/anthropic
    api_key: proxy-key
    api_mode: anthropic_messages    # for Anthropic-compatible proxies

接著可在 session 中途用三段式語法切換:

/model custom:local:qwen-2.5
/model custom:work:llama3-70b
/model custom:anthropic-proxy:claude-sonnet-4

也可以從互動式 hermes model 選單選取具名自訂提供者。2

可插拔提供者架構(v0.13.0+)

v0.13.0 提供 ProviderProfile ABC,以及 plugins/model-providers/ 目錄,讓第三方 inference providers 可在不修改核心的情況下接入。18 如果某個提供者支援 OpenAI、Anthropic 或 Codex 相容的 API 模式,您可以實作一個 ProviderProfile 子類別,宣告 auth path、base URL、model catalog 與 caching headers;Hermes 會透過內建提供者所使用的同一條 runtime_provider.py 路徑解析它。這就是 v0.13.0 provider 擴充背後的架構變更:不必編輯核心程式碼來新增提供者,而是交付一個 plugin。

OpenAI 相容本機 Proxy(v0.14.0+)

hermes proxy 會公開一個 OpenAI 相容的本機端點,背後使用 Hermes 已登入的 OAuth 提供者,例如 Claude Pro、ChatGPT Pro、SuperGrok,或其他相容的已設定提供者。19 這表示期待 OpenAI 風格 API 的工具,包括 Codex CLI、Aider、Cline、Continue 或自訂 scripts,都可以重用您的訂閱制 Hermes auth,而不需要另外的 API key。請將此 proxy 視為本機開發者基礎設施:有意識地綁定它,不要廣泛公開,並留意各提供者的特定條款。

Context Length 偵測

依上游文件所述,以下兩個設定經常被混淆:2

  • context_length — 總 context window(輸入 + 輸出 token 預算合計,例如 Claude Opus 4.7 的 1,000,000,或 Sonnet 4.6 的 200,000)。Hermes 會用它判斷何時壓縮 history。
  • model.max_tokens — 輸出上限(模型在單次回應中可產生的最大 tokens)。與 history 長度無關。

當自動偵測得到錯誤的 window size 時,請設定 context_length

model:
  default: "qwen3.5:9b"
  base_url: "http://localhost:8080/v1"
  context_length: 131072      # tokens

Hermes 使用多來源解析鏈來偵測 context windows:config override → custom provider per-model → persistent cache → endpoint /models → Anthropic /v1/models → OpenRouter API → Nous Portal → models.dev(社群維護、涵蓋 3800+ models 的 registry)→ fallback defaults(128K)。2 這套系統具備 provider awareness,因此同一模型會因服務提供者不同而有不同 context limits(例如 claude-opus-4.6 在 Anthropic direct 上是 1M,但在 GitHub Copilot 上是 128K)。2

Provider Rotation 與 Fallback

Credential pools。 當您有多個同一提供者的 API keys 時,請透過 hermes auth 設定 rotation strategy。這就是將 rate limits 分散到多組 keys 的方式。6

Fallback model。 設定備援 provider:model,讓 Hermes 在 primary model 失敗時(rate limits、server errors、auth failures)自動切換過去:2

fallback_model:
  provider: openrouter            # required
  model: anthropic/claude-sonnet-4  # required
  # base_url: http://localhost:8000/v1    # optional, for custom endpoints
  # api_key_env: MY_CUSTOM_KEY           # optional, env var name

Fallback 會在 session 中途交換 model 與 provider,而不會遺失對話。每個 session 最多觸發一次。2 支援 fallback 的 providers:openrouternousopenai-codexcopilotcopilot-acpanthropichuggingfacezaikimi-codingminimaxminimax-cndeepseekai-gatewayopencode-zenopencode-gokilocodealibabacustom2

輔助模型

Hermes 使用輕量級「輔助」模型處理旁支任務:image analysis、web page summarization、browser screenshot analysis、dangerous command approval classification、context compression、session search summarization、skill matching、MCP tool dispatch,以及 memory flush。4 預設會透過自動偵測使用 Gemini Flash(OpenRouter → Nous → Codex)。

您可以設定每個輔助任務使用哪個模型與提供者。 每個 auxiliary slot 都使用相同3個旋鈕:providermodelbase_url4

auxiliary:
  vision:
    provider: "auto"                # "auto", "openrouter", "nous", "codex", "main", etc.
    model: ""                       # e.g. "openai/gpt-4o", "google/gemini-2.5-flash"
    base_url: ""                    # Custom OpenAI-compatible endpoint
    api_key: ""                     # Falls back to OPENAI_API_KEY
    timeout: 30
    download_timeout: 30
  web_extract:
    provider: "auto"
    model: ""
    timeout: 360
  approval:
    provider: "auto"
    model: ""
    timeout: 30
  compression:
    timeout: 120
  session_search: { provider: "auto", model: "", timeout: 30 }
  skills_hub:    { provider: "auto", model: "", timeout: 30 }
  mcp:           { provider: "auto", model: "", timeout: 30 }
  flush_memories:{ provider: "auto", model: "", timeout: 30 }

"main" provider option 表示「使用我的 main agent 正在使用的任何 provider」,能用在 auxiliary:compression:fallback_model: 設定中。它不能用於頂層 model.provider 設定。如果您使用自訂 OpenAI 相容端點作為 main model,請在 model: 區段設定 provider: custom4

這很重要的原因: 如果您只設定了 Anthropic OAuth(沒有 OpenRouter key),vision、web summarization 與 compression 會降級或失敗,因為預設 auxiliary fallback chain 會先嘗試 OpenRouter。請為輔助任務新增 OPENROUTER_API_KEY,或重新設定每個 auxiliary slot 以使用您的 main provider:

auxiliary:
  vision:
    provider: "main"
  web_extract:
    provider: "main"

這是 Hermes 新使用者最常見的「我的功能默默不能用」陷阱。


設定系統

Hermes採用分層設定系統。理解優先順序至關重要,因為較高層會覆寫較低層,其中一層還是您在config.yaml中看不到的全域 provider 登錄檔。

設定檔版面配置

根據上游文件,以下檔案共同構成Hermes設定:4

~/.hermes/
├── config.yaml       # All settings (model, terminal, TTS, compression, memory, toolsets, ...)
├── .env              # Secrets (API keys, bot tokens, passwords)
├── auth.json         # OAuth provider credentials (Nous Portal, Codex, Anthropic)
├── SOUL.md           # Primary agent identity (slot #1 in system prompt)
├── memories/         # Persistent memory (MEMORY.md, USER.md)
├── skills/           # Bundled + agent-created + hub-installed skills
├── cron/             # Scheduled jobs
├── sessions/         # Gateway session state
└── logs/             # agent.log, gateway.log, errors.log (secrets auto-redacted)

config.yaml.env:兩者都設定時,非機密設定以config.yaml為準。4規則如下: - 機密(API keys、bot tokens、passwords)→ .env - 其他所有項目(model、terminal backend、compression settings、memory limits、toolsets)→ config.yaml

機密可以透過 shell 風格插值從config.yaml參照:4

auxiliary:
  vision:
    api_key: ${GOOGLE_API_KEY}
    base_url: ${CUSTOM_VISION_URL}
  delegation:
    api_key: ${DELEGATION_KEY}

管理設定

hermes config                # View current configuration
hermes config show           # Same as above
hermes config edit           # Open config.yaml in your editor
hermes config set KEY VAL    # Set a specific value
hermes config path           # Print the config file path
hermes config env-path       # Print the .env file path
hermes config check          # Check for missing options (after updates)
hermes config migrate        # Interactively add missing options

範例:4

hermes config set model anthropic/claude-opus-4
hermes config set terminal.backend docker
hermes config set OPENROUTER_API_KEY sk-or-...   # Saves to .env

hermes config checkhermes config migrate是在每次執行hermes update後都應執行的命令。它們會找出您檔案中尚未包含的新設定選項。6

設定優先順序

Hermes會從多個來源載入設定。當多個來源設定相同值時,優先順序較高者勝出:4

  1. CLI argumentshermes chat --model anthropic/claude-sonnet-4(單次呼叫覆寫)
  2. 環境變數 — 在程序啟動時套用
  3. config.yaml — 主要設定檔
  4. .env — 僅限機密
  5. 內建預設值 — 沒有其他來源設定值時套用

CLI flags一律只在該次呼叫中優先。config.yaml則是長期的真實來源。

在地化(v0.13.0+)

v0.13.0為CLI和 gateway 訊息新增了7種語系:中文(簡體)、日文、德文、西班牙文、法文、烏克蘭文和土耳其文。18v0.14.0將所有 gateway commands 和 web dashboard 在地化,新增8種語系,總數達16種。19目前文件僅提供 zh-Hans 在地化版本。Locale會由LC_ALLLANG環境變數解析,或由config.yaml中的明確locale:鍵指定。英文仍是預設語言,也是任何翻譯尚未涵蓋字串的真實來源。

Profiles — 多個隔離的Hermes執行個體

Profiles讓您擁有多個彼此隔離的Hermes執行個體;每個都有自己的 config、sessions、skills、memory 和 gateway PID。這就是您能並行執行「工作用Hermes」與「個人用Hermes」,且兩者互不窺見彼此狀態的方式。6

hermes profile list
hermes profile create work --clone                  # Clone from current profile
hermes profile use work                             # Set sticky default
hermes profile alias work --name h-work             # Create wrapper script
hermes profile export work -o work-backup.tar.gz
hermes profile import work-backup.tar.gz --name restored
hermes -p work chat -q "Hello from work profile"    # One-off without switching

每個 profile 都會取得自己的HERMES_HOME(預設為~/.hermes-<name>/),因此多個 profiles 可以同時執行 gateway,而不會互相干擾。63


CLI 指令

本節為頂層 CLI 指令的實務參考手冊。如需以原始碼為準的權威參考,請參閱上游的 CLI Commands Reference6

全域選項

hermes [global-options] <command> [subcommand/options]
選項 說明
--version, -V 顯示版本並退出
--profile <name>, -p <name> 選擇要使用的 Hermes profile
--resume <session>, -r <session> 透過 ID 或標題恢復工作階段
--continue [name], -c [name] 恢復最近的工作階段(或依標題匹配)
--worktree, -w 在隔離的 git worktree 中啟動
--yolo 跳過危險指令的確認提示
--pass-session-id 在代理的系統提示詞中包含工作階段 ID

頂層指令

指令 用途
hermes chat 互動式或單次對話
hermes model 互動式選擇預設提供者與模型
hermes gateway 執行或管理訊息閘道器
hermes setup 互動式設定精靈
hermes auth 管理憑證——新增、列出、移除、重設、設定策略
hermes status 顯示代理、驗證與平台狀態
hermes cron 檢視並觸發 cron 排程器
hermes webhook 管理動態 webhook 訂閱
hermes doctor 診斷設定與相依性問題
hermes dump 產生可複製貼上的設定摘要,用於支援與除錯
hermes logs 檢視、追蹤及篩選代理/閘道器/錯誤日誌
hermes config 顯示、編輯、遷移、查詢設定
hermes pairing 核准或撤銷訊息配對碼
hermes skills 瀏覽、安裝、發布、稽核 skill
hermes honcho 管理 Honcho 跨工作階段記憶
hermes memory 設定外部記憶提供者
hermes acp 以 ACP 伺服器模式執行 Hermes(編輯器整合)
hermes mcp 管理 MCP 伺服器設定;以 MCP 伺服器模式執行 Hermes
hermes plugins 管理外掛程式
hermes tools 依平台設定啟用的工具
hermes sessions 瀏覽、匯出、清理、刪除工作階段
hermes insights 顯示 token 用量/費用/活動分析
hermes claw OpenClaw 遷移輔助工具
hermes profile 管理 profile(多組隔離實例)
hermes completion 輸出 shell 自動補全腳本(bash/zsh)
hermes whatsapp 設定並配對 WhatsApp 橋接器
hermes version 顯示版本資訊
hermes update 拉取最新程式碼並重新安裝相依套件
hermes uninstall 從系統中移除 Hermes(--full 會一併刪除設定與資料)
hermes backup 完整備份設定、工作階段、skill 與記憶(v0.9.0+)16
hermes import 從備份封存檔還原——可用於跨機器遷移或回滾(v0.9.0+)16
hermes dashboard 啟動本機 Web 儀表板,透過瀏覽器管理代理(v0.9.0+)16
hermes debug share 上傳完整除錯報告至 pastebin,方便疑難排解時分享(v0.9.0+)16

hermes chat——主要進入點

不帶任何參數直接執行 hermes 即進入互動式對話。hermes chat 是帶選項的明確形式:6

hermes chat -q "Summarize the latest PRs"           # One-shot, non-interactive
hermes chat --provider openrouter --model anthropic/claude-sonnet-4.6
hermes chat --toolsets web,terminal,skills          # Enable specific toolsets
hermes chat --quiet -q "Return only JSON"           # Programmatic mode
hermes chat --worktree -q "Review repo and open a PR"

主要選項:

選項 說明
-q, --query "..." 單次非互動式提示
-m, --model <model> 覆寫此次執行的模型
-t, --toolsets <csv> 啟用以逗號分隔的 toolset 集合
--provider <provider> 強制指定提供者(參閱完整列表
-s, --skills <name> 為此工作階段預載一或多個 skill
-v, --verbose 詳細輸出
-Q, --quiet 程式化模式(無橫幅、進度指示器、預覽)
--resume <session> 直接從 chat 恢復工作階段
--worktree 建立隔離的 git worktree
--checkpoints 在執行破壞性變更前啟用檔案系統檢查點
--yolo 跳過確認提示
--source <tag> 工作階段來源標籤(預設:cli;整合用途請設為 tool
--max-turns <N> 每輪最大工具呼叫迭代次數(預設:90)

hermes setup——完整設定精靈

執行完整設定精靈,或直接跳至特定區段:6

hermes setup                 # Full wizard
hermes setup model           # Provider and model only
hermes setup terminal        # Terminal backend only
hermes setup gateway         # Messaging platforms only
hermes setup tools           # Tool enable/disable per platform
hermes setup agent           # Agent behavior only
hermes setup --non-interactive
hermes setup --reset         # Reset config to defaults before setup

hermes logs——結構化日誌查詢

hermes logs 比直接對日誌檔案執行 tail -f 更為強大,因為它支援同時依層級、工作階段 ID 及時間範圍進行篩選。6

hermes logs                          # Last 50 lines of agent.log
hermes logs -f                       # Follow in real time
hermes logs gateway -n 100           # Last 100 lines of gateway.log
hermes logs --level WARNING --since 1h   # Warnings from the last hour
hermes logs --session abc123         # Filter by session ID substring
hermes logs errors --since 30m -f    # Follow errors.log from 30m ago
hermes logs list                     # List all log files with sizes

日誌檔案存放於 ~/.hermes/logs/6 - agent.log——所有代理活動(API 呼叫、工具調度、工作階段生命週期,INFO 以上) - errors.log——僅包含警告與錯誤(agent.log 的篩選子集) - gateway.log——訊息閘道器活動(平台連線、調度、webhooks)

日誌輪替由 Python 的 RotatingFileHandler 自動處理——留意 agent.log.1agent.log.2 等檔案。6

hermes doctor——診斷工具

hermes doctor [--fix] 是出現問題時應優先執行的指令。它會檢查設定有效性、相依套件是否存在、API 金鑰可用性、服務狀態,並可透過 --fix 嘗試自動修復。6

若需與他人分享診斷資訊,請使用 hermes dump——它會產生一份精簡的純文字摘要,其中 API 金鑰已遮蔽處理,可直接貼入 GitHub issue 或 Discord 討論串。6


Slash Commands

Slash commands會在作用中的聊天工作階段(CLI或訊息平台)內執行。它們由hermes_cli/commands.py中的共用COMMAND_REGISTRY分派,因此大多數指令在不同介面上的運作方式都相同。9

工作階段控制

Command Description
/new(別名/reset 開始新的工作階段
/clear 清除畫面並開始新的工作階段
/history 顯示對話記錄
/save 儲存目前對話
/retry 重試上一則訊息
/undo 移除上一組使用者/助理往返訊息
/title <name> 設定目前工作階段的標題
/compress 手動壓縮對話內容脈絡
/rollback [number] 列出或還原檔案系統checkpoint
/stop 終止所有執行中的背景程序
/queue <prompt> 將prompt排入下一輪。注意事項:/q同時被/queue/quit占用;最後註冊者優先,實務上/q會解析為/quit,因此務必明確輸入/queue9
/resume [name] 繼續先前已命名的工作階段
/statusbar(別名/sb 切換內容脈絡/model狀態列
/background <prompt>(別名/bg 在獨立背景工作階段中執行prompt
/btw <question> 暫時性的旁支問題(不使用工具,也不持久保存)
/plan [request] 載入隨附的plan skill,以撰寫計畫而非執行
/branch [name](別名/fork 分支目前的工作階段
/goal <target> 將agent鎖定在目標上,使其在多輪對話中保持任務焦點。將Ralph-loop模式作為一級primitive。可設定輪次預算。v0.13.0新增。18
/subgoal <criterion> 在不重新啟動迴圈的情況下,為作用中的/goal新增成功條件。v0.14.0新增。19
/handoff <target> 將即時工作階段(訊息、工具呼叫與內容脈絡)移交給另一個model、persona或profile。v0.14.0新增。19

設定與Model

Command Description
/config 顯示目前設定
/model [model-name] 顯示或變更目前model
/provider 顯示可用providers與目前provider
/personality [name] 設定personality overlay
/verbose 循環切換工具進度顯示
/reasoning 管理reasoning effort與顯示方式
/skin 顯示或變更顯示skin/theme
/voice [on\|off\|tts\|status] 切換CLI語音模式
/yolo 切換YOLO模式(略過核准提示)
/fast 切換Fast Mode——為OpenAI與Anthropic models提供優先處理(v0.9.0+)16
/debug 跨所有平台的快速診斷(v0.9.0+)16

/model指令是工作階段中途切換provider的主力工具:9

/model                              # Show current model and options
/model claude-sonnet-4              # Switch model (auto-detect provider)
/model zai:glm-5                    # Switch provider:model
/model custom:qwen-2.5              # Use model on custom endpoint
/model custom                       # Auto-detect model from custom endpoint
/model custom:local:qwen-2.5        # Named custom provider
/model openrouter:anthropic/claude-sonnet-4   # Back to cloud

Tools、Skills與資訊

Command Description
/tools [list\|disable\|enable] [name...] 管理目前工作階段的tools
/toolsets 列出可用toolsets
/browser [connect\|disconnect\|status] 管理本機Chrome CDP連線
/skills 搜尋、安裝、檢視或管理skills
/cron 管理排程工作
/reload-mcp 從config.yaml重新載入MCP伺服器
/plugins 列出已安裝的plugins
/help 顯示所有指令
/usage 顯示token用量、成本與耗時
/insights 顯示使用分析(過去30天)
/platforms 顯示訊息平台狀態
/profile 顯示作用中的profile名稱與home

動態Skill Slash Commands

每個已安裝的skill都會自動公開為slash command:9

/gif-search funny cats
/axolotl help me fine-tune Llama 3 on my dataset
/github-pr-workflow create a PR for the auth refactor
/excalidraw       # Just the skill name loads it and lets the agent ask what you need

也可以在config.yaml中定義quick commands,將短名稱作為較長prompt的別名:9

quick_commands:
  review: "Review my latest git diff and suggest improvements"
  deploy: "Run the deployment script at scripts/deploy.sh and verify the output"
  morning: "Check my calendar, unread emails, and summarize today's priorities"

接著在CLI中輸入/review/deploy/morning即可。

前綴比對

指令支援前綴比對:輸入/h會解析為/help/mod會解析為/model。當前綴有歧義時,會採用registry順序中的第一個註冊項目。完整指令名稱與已註冊別名一律優先於前綴比對。9

訊息平台專用指令

有些指令只適用於訊息平台(Telegram、Discord、Slack、WhatsApp、Signal、Email、Home Assistant):9

  • /status——顯示工作階段資訊
  • /sethome(別名/set-home)——將目前聊天標記為平台home
  • /approve [session|always]——核准待處理的危險指令
  • /deny——拒絕待處理的危險指令
  • /update——將Hermes Agent更新至最新版
  • /commands [page]——瀏覽所有指令與skills(分頁顯示)

另有一些指令僅限CLI使用:/skin/tools/toolsets/browser/config/cron/skills/platforms/paste/statusbar/plugins9


Tools與Toolsets

Hermes內建廣泛的工具登錄,涵蓋網頁搜尋、瀏覽器自動化、終端機執行、檔案編輯、記憶、委派、RL訓練、訊息傳遞、Home Assistant整合等功能。10工具會整理成邏輯性的toolsets,並可依平台啟用或停用。

高階分類

類別 範例 說明
Web web_search, web_extract 搜尋網頁並擷取頁面內容
終端機與檔案 terminal, process, read_file, patch 執行命令並操作檔案
瀏覽器 browser_navigate, browser_snapshot, browser_vision 結合文字與視覺的互動式瀏覽器自動化
媒體 vision_analyze, video_analyze, video_generate, image_generate, text_to_speech 多模態分析與生成。video_analyze以Gemini優先,並可擴充支援相容的多模態提供者(v0.13.0+)。v0.14.0新增統一的video_generate,支援可插拔的提供者後端;當作用中的模型具備視覺能力時,也會透過vision_analyze傳送原始像素。1819
Agent編排 todo, clarify, execute_code, delegate_task 規劃、釐清、程式碼執行、subagent委派
Computer use computer_use 透過cua-driver後端控制桌面;v0.14.0讓這項功能可搭配非Anthropic的視覺能力提供者運作。19
記憶與回想 memory, session_search 持久記憶與session搜尋
自動化與傳遞 cronjob, send_message 排程任務、對外訊息傳送
整合 ha_*, MCP tools, rl_* Home Assistant、MCP、RL訓練

常見的toolset名稱包括webterminalfilebrowservisionimage_genmoaskillsttstodomemorysession_searchcronjobcode_executiondelegationclarifyhomeassistantrl10

管理Tools

hermes chat --toolsets "web,terminal"       # Use specific toolsets
hermes tools                                # Interactive per-platform tool config
hermes tools --summary                      # Print enabled-tools summary

也可以在session中途透過/tools disable <name>/tools enable <name>切換工具;這會重設session,讓新的工具集合生效。9

終端機後端

終端機工具可在6種不同環境中執行命令:10

後端 使用情境
local 在您的機器上執行(預設)——開發、可信任任務
docker 隔離容器——安全性、可重現性
ssh 遠端伺服器——sandbox,讓agent遠離自己的程式碼
singularity HPC容器——叢集運算、無root
modal Serverless雲端執行
daytona 雲端sandbox工作區——持久遠端開發環境

使用hermes config set terminal.backend <name>切換後端,或在config.yaml中設定:

terminal:
  backend: docker      # or: local, ssh, singularity, modal, daytona
  cwd: "."             # Working directory
  timeout: 180         # Command timeout in seconds

SSH後端(基於安全性建議使用——agent無法修改自己的程式碼):10

terminal:
  backend: ssh
# In ~/.hermes/.env
TERMINAL_SSH_HOST=my-server.example.com
TERMINAL_SSH_USER=myuser
TERMINAL_SSH_KEY=~/.ssh/id_rsa

Docker後端:

terminal:
  backend: docker
  docker_image: python:3.11-slim

容器資源(適用於docker、singularity、modal、daytona):10

terminal:
  container_cpu: 1
  container_memory: 5120          # MB (default 5GB)
  container_disk: 51200           # MB (default 50GB)
  container_persistent: true      # Persist filesystem across sessions

設定container_persistent: true後,已安裝的套件、檔案與設定會跨session保留。10

所有容器後端都會套用安全強化:唯讀根檔案系統(Docker)、移除所有Linux capabilities,僅保留DAC_OVERRIDECHOWNFOWNER、禁止權限提升、PID限制(256個程序)、完整namespace隔離,以及透過volumes提供持久工作區。10

背景程序

終端機工具支援背景執行,並提供明確的程序管理:10

terminal(command="pytest -v tests/", background=true)
# Returns: {"session_id": "proc_abc123", "pid": 12345}

process(action="list")                            # Show all running processes
process(action="poll", session_id="proc_abc123")  # Check status
process(action="wait", session_id="proc_abc123")  # Block until done
process(action="log", session_id="proc_abc123")   # Full output
process(action="kill", session_id="proc_abc123")  # Terminate
process(action="write", session_id="proc_abc123", data="y")  # Send input

PTY模式(pty=true)可啟用像Codex和Claude Code這類互動式CLI工具。10

Sudo

如果命令需要sudo,Hermes會提示輸入密碼(在該session中快取)。也可以在~/.hermes/.env中設定SUDO_PASSWORD10


Multi-Agent Kanban(v0.13.0+)

v0.13.0將multi-agent協作變成一等原語:一個耐久Kanban看板,可跨agents與重啟追蹤任務、狀態與worker身分。18這個看板讓一群Hermes workers能真正完成工作,而不是卡在失效的交接上。

機制 功能
Heartbeats 每個worker在持有任務時都會送出脈衝。若心跳遺失,該worker會被標記為可疑,並釋放任務以供重新認領。
Reclaim 另一個worker可以接手被遺棄的任務,並取得完整任務狀態與先前的部分輸出。
Zombie detection worker若未將任務標記為完成就離開,會自動被封鎖,無法認領新工作,避免swarm累積失效身分。
Hallucination gate 未通過gate的輸出不會被標記為完成,而是附上原因送回看板。
每項任務的max_retries 對已知較脆弱的任務覆寫預設重試額度。
多專案看板 一個Hermes home可以承載多個彼此獨立的看板。

Kanban看板自然可與目標端的/goal(鎖定目標的Ralph loop)搭配,也可與既有的delegate_task工具搭配處理spawn語意。結果會形成一種swarm模式:每個agent共享同一個事實來源,清楚知道接下來要做什麼、誰正在執行,以及哪些項目卡住。

Skill 系統

skill 是 agent 可在需要時載入的隨需知識文件。它們採用漸進揭露模式,以盡量降低 token 用量,並相容於 agentskills.io 開放標準。11

所有 skill 都位於 ~/.hermes/skills/——這是主要目錄,也是唯一真實來源。全新安裝時,隨附的 skill 會從 repo 複製過來。透過 Hub 安裝與 agent 建立的 skill 也會放在這裡。11

漸進揭露

Level 0: skills_list()            [{name, description, category}, ...]   (~3k tokens)
Level 1: skill_view(name)         Full content + metadata                 (varies)
Level 2: skill_view(name, path)   Specific reference file                 (varies)

agent 只有在實際需要時,才會載入完整的 skill 內容。11

SKILL.md 格式

---
name: my-skill
description: Brief description of what this skill does
version: 1.0.0
platforms: [macos, linux]      # Optional — restrict to OS platforms
metadata:
  hermes:
    tags: [python, automation]
    category: devops
    fallback_for_toolsets: [web]     # Conditional activation
    requires_toolsets: [terminal]    # Conditional activation
    config:                          # Config.yaml settings
      - key: my.setting
        description: "What this controls"
        default: "value"
        prompt: "Prompt for setup"
---

# Skill Title

## When to Use
Trigger conditions for this skill.

## Procedure
1. Step one
2. Step two

## Pitfalls
- Known failure modes and fixes

## Verification
How to confirm it worked.

條件式啟用

skill 可以依據可用工具自行顯示或隱藏。這對備援 skill 最有用,也就是只有在付費工具不可用時才應出現的免費或本機替代方案:11

欄位 行為
fallback_for_toolsets 當列出的 toolset 可用時隱藏 skill
fallback_for_tools 相同,但檢查個別工具
requires_toolsets 當列出的 toolset 不可用時隱藏 skill
requires_tools 相同,但檢查個別工具

範例:內建的 duckduckgo-search skill 使用 fallback_for_toolsets: [web]。當您設定了 FIRECRAWL_API_KEY,web toolset 可用,agent 會使用 web_search——DuckDuckGo skill 會維持隱藏。沒有 API 金鑰時,DuckDuckGo skill 會自動以備援形式出現。11

Agent 管理的 Skill

agent 可以透過 skill_manage 工具建立、更新及刪除自己的 skill。這是 agent 的程序式記憶——當它找出非顯而易見的工作流程時,會將方法儲存成 skill,以便日後重複使用。11

agent 建立 skill 的時機:11 - 成功完成複雜任務後(5 次以上工具呼叫) - 遇到錯誤或走入死路,並找到可行路徑時 - 使用者修正其方法時 - 發現非顯而易見的工作流程時

動作:11

動作 用途
create 從零建立新 skill
patch 針對性修正(建議使用——最節省 token)
edit 大幅重寫結構
delete 完整移除 skill
write_file 新增/更新支援檔案
remove_file 移除支援檔案

Skill Hub

從線上 registry 瀏覽、搜尋、安裝及管理 skill:611

hermes skills browse                          # Browse all hub skills
hermes skills browse --source official        # Browse official optional skills
hermes skills search kubernetes               # Search all sources
hermes skills search react --source skills-sh # Search skills.sh directory
hermes skills inspect openai/skills/k8s       # Preview before installing
hermes skills install openai/skills/k8s       # Install with security scan
hermes skills install skills-sh/anthropics/skills/pdf --force
hermes skills check                           # Check for upstream updates
hermes skills update                          # Reinstall changed hub skills
hermes skills audit                           # Re-scan installed hub skills
hermes skills uninstall k8s
hermes skills publish skills/my-skill --to github --repo owner/repo
hermes skills tap add myorg/skills-repo       # Add custom GitHub source

整合的 hub 來源:11

來源 範例 備註
official official/security/1password 隨 Hermes 提供的選用 skill(builtin 信任)
skills-sh skills-sh/vercel-labs/agent-skills/vercel-react-best-practices Vercel 的公開 skill 目錄
well-known well-known:https://mintlify.com/docs/.well-known/skills/mintlify 來自發布 /.well-known/skills/index.json 網站的 URL 型探索
github openai/skills/k8s 直接安裝 GitHub repo/path
clawhub 第三方 skill marketplace
claude-marketplace Claude 相容的 plugin/marketplace manifests
lobehub LobeHub agent catalog 轉換

預設 GitHub taps(無須設定即可瀏覽):openai/skillsanthropics/skillsVoltAgent/awesome-agent-skillsgarrytan/gstack11

安全掃描

所有透過 hub 安裝的 skill 都會經過安全掃描器檢查,涵蓋資料外洩、prompt injection、破壞性命令、供應鏈訊號及其他威脅。11

信任等級:11

等級 來源 政策
builtin 隨 Hermes 提供 永遠信任
official repo 中的 optional-skills/ builtin 信任,不顯示第三方警告
trusted 受信任 registry(openai/skillsanthropics/skills 較寬鬆的政策
community 其他所有來源 非危險 findings 可用 --force 覆寫;dangerous 判定仍會封鎖

--force 可以覆寫 community skill 的非危險政策封鎖。它不會覆寫 dangerous 掃描判定。11

外部 Skill 目錄

您可以讓 Hermes 指向其他 skill 目錄,並與本機目錄一併掃描:11

skills:
  external_dirs:
    - ~/.agents/skills
    - /home/shared/team-skills
    - ${SKILLS_REPO}/skills

路徑支援 ~ 展開與 ${VAR} 環境變數替換。外部目錄是唯讀——當 agent 建立或編輯 skill 時,一律寫入 ~/.hermes/skills/。如果兩處都有同名 skill,會以本機優先。11


持久記憶

Hermes具備有界且經過整理的記憶,可跨session持續存在。Agent的記憶由2個檔案組成,兩者都儲存在~/.hermes/memories/12

檔案 用途 字元限制
MEMORY.md Agent的個人筆記——環境事實、慣例、已學到的事項 2,200個字元(約800個token)
USER.md 使用者profile——偏好、溝通風格、期望 1,375個字元(約500個token)

兩者都會在session開始時,以凍結快照形式注入system prompt。Agent會透過memory工具管理自己的記憶——addreplaceremove12

凍結快照模式:system prompt注入只會在session開始時擷取一次,session期間不會變更。這是刻意設計——可保留LLM的前綴快取以提升效能。session期間所做的變更會立即持久化到磁碟,但直到下一個session才會出現在system prompt中。12

要儲存哪些內容

儲存這些內容(agent會主動執行):12 - 使用者偏好:「我偏好TypeScript,而不是JavaScript」→user - 環境事實:「這台伺服器執行Debian 12與PostgreSQL 16」→memory - 修正事項:「執行Docker指令時不要使用sudo,使用者在docker群組中」→memory - 慣例:「專案使用tab、120字元行寬、Google風格docstrings」→memory - 已完成工作:「已於2026年1月15日將資料庫從MySQL遷移至PostgreSQL」→memory

略過這些內容:12 - 瑣碎或顯而易見的資訊 - 容易重新發現的事實 - 原始資料傾印(對記憶而言太大) - session限定的短暫資訊 - 已在context檔案中的資訊

除了MEMORY.mdUSER.md之外,agent也可以使用session_search工具搜尋過去的對話。所有CLI與messaging sessions都會儲存在SQLite(~/.hermes/state.db)中,並提供FTS5全文搜尋。查詢會透過Gemini Flash摘要,回傳相關的過往對話。12

功能 持久記憶 Session Search
容量 總計約1,300個token 無限制(所有sessions)
速度 即時(位於system prompt中) 需要搜尋與LLM摘要
使用情境 隨時可用的關鍵事實 找出特定過往對話
管理方式 由agent手動整理 自動——儲存所有sessions
Token成本 每個session固定(約1,300個token) 隨需使用

外部記憶提供者

若需要比MEMORY.mdUSER.md更深入的持久記憶,Hermes內建8個外部記憶provider外掛:Honcho、OpenViking、Mem0、Hindsight、Holographic、RetainDB、ByteRover與Supermemory12

外部providers會與內建記憶並行運作(不會取代它),並加入知識圖譜、語意搜尋、自動事實擷取,以及跨session使用者建模等能力:612

hermes memory setup         # Pick a provider and configure it
hermes memory status        # Check what's active
hermes memory off           # Disable external provider (built-in only)

同一時間只能啟用1個外部provider。內建記憶永遠啟用。6

Session自動續接(v0.13.0+)

v0.13.0讓agent執行途中遭中斷時也能恢復。gateway會在重新啟動後自動續接中斷的sessions;/update重新啟動會在升級期間保留session狀態;開發期間重新載入原始檔時,也會維持作用中的session,而不是強制建立新的session。18實際效果是:長時間執行的gateway工作與cron驅動的jobs,在程序重新啟動時不再重設其context window。

Checkpoints v2(v0.13.0+)

v0.13.0將狀態持久化重寫為單一儲存設計,具備真正的修剪、磁碟防護欄,且不再產生孤立的shadow repos18先前的checkpoint系統會在長時間執行的profiles中於磁碟累積狀態;v2 store為本機checkpoint儲存設定硬性上限,並移除造成成長的重複簿記。不需要變更任何使用者可見的config;下一次checkpoint寫入會使用v2路徑。


個性與SOUL.md

SOUL.md是Hermes instance的主要身分。它佔據system prompt中的第1個位置,取代硬編碼的預設身分。13

Hermes會自動在~/.hermes/SOUL.md(或自訂profiles的$HERMES_HOME/SOUL.md)建立預設SOUL.md。既有使用者檔案永遠不會被覆寫。Hermes只會從HERMES_HOME載入SOUL.md——不會查看目前工作目錄。這讓personality在不同專案之間保持可預期。13

SOUL.md適合放什麼

用於長期穩定的語氣與personality指引:13 - 語氣 - 溝通風格 - 直接程度 - 預設互動風格 - 風格上應避免的事項 - Hermes應如何處理不確定性、分歧與模糊性

較不適合用於:13 - 一次性的專案指示 - 檔案路徑 - repo慣例 - 暫時性的工作流程細節

這些應該放在AGENTS.md,而不是SOUL.md

SOUL.md與AGENTS.md

這是Hermes身分管理中最重要的區別:13

SOUL.md——身分、語氣、風格、溝通預設值、personality層級的行為。

AGENTS.md——專案架構、程式碼慣例、工具偏好、repo特定工作流程、指令、ports、路徑、部署備註。

一個實用規則是:如果它應該跟著您到任何地方,就屬於SOUL.md。如果它屬於某個專案,就屬於AGENTS.md13

內建Personalities

Hermes內建多種personalities,可用/personality切換:13

名稱 說明
helpful 友善、通用型助理
concise 簡短、切中要點的回應
technical 詳細且準確的技術專家
creative 創新、跳脫框架的思考
teacher 有耐心的教育者,提供清楚範例
kawaii 可愛表情、閃亮感、熱情
catgirl 帶有貓系表達的Neko-chan
pirate Captain Hermes,精通技術的海盜
shakespeare 具戲劇感的吟遊詩人式散文
surfer 輕鬆的bro氛圍
noir 冷硬派偵探敘事
uwu 以uwu語氣呈現最大可愛度
philosopher 對每個查詢進行深度沉思
hype 最大能量

config.yaml中的自訂personalities13

agent:
  personalities:
    codereviewer: >
      You are a meticulous code reviewer. Identify bugs, security issues,
      performance concerns, and unclear design choices. Be precise and constructive.

接著用/personality codereviewer切換。

SOUL.md與/personality

SOUL.md是基準語氣。/personality是session層級的覆蓋。13建議保留務實的預設SOUL.md,再針對教學對話使用/personality teacher,或在腦力激盪時使用/personality creative


Nous Tool Gateway(v0.10.0+)

自Hermes Agent v0.10.0(2026年4月16日)起,付費Nous Portal訂閱者可透過既有Portal憑證,取得一組經整理的受管工具存取權——不需要管理額外的API金鑰。21Hermes CLI本身仍採MIT授權,並且完全open source。改變之處在於,您的Portal auth現在解鎖的不只是model inference。

gateway包含什麼

工具 Provider 使用情境
Web search Firecrawl 供需要新資訊的agents進行檢索
Image generation FAL / FLUX 2 Pro 無需設定FAL金鑰,即可內嵌產生圖片
Text-to-speech OpenAI TTS messaging gateways上的語音輸出
Browser automation Browser Use Headless導覽與scraping

運作方式

gateway透過新的use_gateway config欄位,針對每個工具選擇性啟用。如果您在hermes auth中有Portal憑證,且為某個工具啟用gateway,該工具的呼叫就會透過Portal路由。否則會使用您的直接API金鑰(若存在)。

# config.yaml — per-tool gateway opt-in
tools:
  web_search:
    provider: firecrawl
    use_gateway: true          # route via Nous Portal subscription
  image_generation:
    provider: fal
    use_gateway: true

Runtime優先順序:當gateway可用,且工具設定了use_gateway: true時,即使您也設定了直接API金鑰,Hermes仍會優先使用gateway。這對計費很重要——gateway呼叫會從您的Portal訂閱扣除,而不是從直接API金鑰的餘額扣除。

啟用gateway

hermes model                      # select Nous Portal (OAuth flow)
hermes tools                      # per-platform tool picker integrates gateway tools
hermes status                     # confirms gateway/subscription detection

沒有另外的hermes subscribehermes login --portal指令。訂閱會透過您已在hermes auth中擁有的Portal OAuth憑證自動偵測。

定價與存取

定價與tier名稱發布於Nous Portal定價頁(https://portal.nousresearch.com/pricing)。本指南不列舉tiers,因為它們由Portal產品負責,不由Hermes CLI負責,且會獨立於Hermes releases變更。請到https://portal.nousresearch.com/註冊,並查看定價頁取得目前tiers。

棄用通知

  • HERMES_ENABLE_NOUS_MANAGED_TOOLS env var已在v0.10.0中移除。受管工具現在透過各工具的use_gateway config欄位啟用,並依您的Portal訂閱狀態進行gate。21

定位:這個release不是什麼

Hermes Agent CLI不需要訂閱才能使用。此專案仍採MIT授權,所有核心功能(CLI、skills、memory、messaging gateway、cron、MCP、local dashboard、每個provider的BYOK)都能在不付費給任何人的情況下端到端運作。v0.10.0為已經付費使用Nous Portal的使用者新增一條便利路徑——並未從免費路徑移除任何內容。


Messaging Gateway

Hermes可以作為長時間執行的gateway程序,從單一gateway程序連接到22個訊息平台:Telegram、Discord、Slack、WhatsApp、Signal、SMS、Email、Home Assistant、Mattermost、Matrix、DingTalk、Feishu/Lark、WeCom、Weixin (WeChat)、BlueBubbles (iMessage)、QQBot、Microsoft Teams、Tencent Yuanbao、Google Chat、LINE、SimpleX Chat,以及通用Webhook介面卡。320171819 v0.9.0透過BlueBubbles加入了iMessage(自動webhook註冊、設定精靈、當機韌性),並透過iLink Bot API加入原生WeChat支援,另提供企業應用程式使用的WeCom回呼模式。16 v0.11.0加入QQBot。20 v0.12.0加入Microsoft Teams與Tencent Yuanbao。17 v0.13.0將Google Chat作為第20個平台加入,沿用同一套可插拔介面卡架構;IRC與Microsoft Teams也遷移到新的介面卡模式,並具備通用的env_enablement_fncron_deliver_env_var外掛hook。18 v0.14.0加入LINE與SimpleX Chat,並以Graph auth、webhook listener、pipeline runtime與outbound delivery,完成Microsoft Teams堆疊的端到端支援。19

設定

hermes gateway setup                # Interactive platform configuration
hermes gateway install              # Install as user service (systemd/launchd)
hermes gateway start                # Start the installed service
hermes gateway stop
hermes gateway restart
hermes gateway status
hermes gateway run                  # Run in foreground (debugging)

互動式設定會引導您連接每個平台:API tokens、bot IDs、channel mappings、allowlists。6

訊息如何流動

來自上游架構文件:3

Platform event → Adapter.on_message() → MessageEvent
  → GatewayRunner._handle_message()
    → authorize user
    → resolve session key
    → create AIAgent with session history
    → AIAgent.run_conversation()
    → deliver response back through adapter

每個訊息平台都會經過與CLI相同的AIAgent對話迴圈。這就是為什麼slash commands在兩處都以相同方式運作,也解釋了為什麼在Telegram排程的cron工作可以把輸出傳送到Discord:平台差異只存在於邊界。3

使用者授權與配對

hermes pairing list                    # Show pending and approved users
hermes pairing approve <platform> <code>
hermes pairing revoke <platform> <user-id>
hermes pairing clear-pending

配對碼可防止陌生人隨意與您的gateway對話。使用者從自己的訊息平台送出配對碼;您使用hermes pairing approve核准後,該使用者便會自此獲得授權。6


排程工作(Cron)

Hermes具備第一級cron系統,其中工作是agent tasks,而不是shell commands。每個排程工作都會透過全新的AIAgent執行,使用已設定的prompt、選用的附加skills,並將結果傳送到任何平台:36

hermes cron list
hermes cron create --prompt "Check HN for AI news and summarize" --schedule "0 9 * * *" --deliver telegram
hermes cron edit <id>
hermes cron pause <id>
hermes cron resume <id>
hermes cron run <id>         # Trigger now on the next tick
hermes cron remove <id>
hermes cron status           # Check if scheduler is running
hermes cron tick             # Run due jobs once and exit

也可以在訊息聊天室中以對話方式建立:

Every morning at 9am, check Hacker News for AI news and send me a summary on Telegram.

agent會透過自身工具設定cron工作。工作會持久化在JSON中,並在重新啟動後保留。3


MCP整合

Hermes支援Model Context Protocol,可同時作為client與server:6

作為client:將Hermes連接到外部MCP servers,以擴充其工具介面:

hermes mcp add <name> --url https://example.com/mcp
hermes mcp add <name> --command npx --args "-y,@modelcontextprotocol/server-github"
hermes mcp list
hermes mcp test <name>
hermes mcp remove <name>
hermes mcp configure <name>   # Toggle individual tool selection

或在config.yaml中手動設定:14

mcp_servers:
  github:
    command: npx
    args: ["-y", "@modelcontextprotocol/server-github"]
    env:
      GITHUB_PERSONAL_ACCESS_TOKEN: "ghp_xxx"

作為server:將Hermes對話公開給其他agents:

hermes mcp serve
hermes mcp serve -v    # Verbose

Context Compression

Hermes會自動壓縮長對話,使其維持在模型的context window內。壓縮summarizer是獨立的LLM call,您可以將它指向任何provider或endpoint。4

compression:
  enabled: true
  threshold: 0.50                           # Compress at this % of context limit
  target_ratio: 0.20                        # Fraction to preserve as recent tail
  protect_last_n: 20                        # Min recent messages to keep uncompressed
  summary_model: "google/gemini-3-flash-preview"
  summary_provider: "auto"                  # "auto", "openrouter", "nous", "codex", "main", etc.
  summary_base_url: null                    # Custom OpenAI-compatible endpoint

Provider選項:4

summary_provider summary_base_url 結果
auto(預設) 未設定 自動偵測最佳可用provider
nousopenrouter/等等 未設定 強制使用該provider,並使用其auth
any 已設定 直接使用自訂endpoint(忽略provider)

summary_model必須支援至少與主模型一樣大的context length,因為它會接收對話完整的中段內容來進行壓縮。4

預算壓力警告

當agent處理包含大量tool calls的複雜工作時,可能在未察覺的情況下耗盡iteration budget(預設:90 turns)。預算壓力會自動警告模型:4

閾值 層級 模型會看到的內容
70% 注意 [BUDGET: 63/90. 27 iterations left. Start consolidating.]
90% 警告 [BUDGET WARNING: 81/90. Only 9 left. Respond NOW.]

串流逾時

LLM streaming connection有兩層逾時機制,會針對本機providers(localhost、LAN IPs)自動調整:4

逾時 預設 本機providers Env var
Socket讀取逾時 120s 自動提高到1800s HERMES_STREAM_READ_TIMEOUT
過期串流偵測 180s 自動停用 HERMES_STREAM_STALE_TIMEOUT
API call(非串流) 1800s 不變 HERMES_API_TIMEOUT

本機endpoints的socket讀取逾時會提高到30分鐘,因為本機LLMs在大型contexts上進行prefill時,可能需要數分鐘才會產生第一個token。4


本機Web Dashboard(v0.9.0+)

這是一個以瀏覽器為基礎的dashboard,可在本機管理您的Hermes Agent。設定選項、監控sessions、瀏覽skills,並在不碰觸config檔案或terminal的情況下管理gateway。16 使用hermes dashboard啟動。對偏好GUI的新使用者而言,這是最容易上手的onboarding路徑。

背景程序監控(v0.9.0+)

watch_patterns讓您設定要在背景程序輸出中監控的patterns,並在符合時即時收到通知。16 可監控錯誤、等待特定事件(「listening on port」),或觀察build logs,全程不需要polling。結合v0.8.0的notify_on_complete(會在背景工作完成時通知),Hermes現在具備完整的背景程序可觀測性層。15

可插拔Context Engine(v0.9.0+)

context管理現在透過hermes plugins成為可插拔slot。可換入自訂context engines,控制agent每一輪看到的內容,包括篩選、摘要,或注入特定領域context。16 這會將context策略從核心agent loop中解耦,允許依專案或領域自訂context。

備份與還原(v0.9.0+)

hermes backup會建立包含config、sessions、skills與memory的完整封存檔。hermes import則可從備份封存檔還原。16 可用於在機器之間遷移、在重大變更前建立snapshot,或與團隊成員分享已知良好的設定。

Termux/Android支援(v0.9.0+)

Hermes可透過Termux在Android上原生執行。經過調整的安裝路徑、針對行動裝置螢幕最佳化的TUI、voice backend支援,以及/image command都可在裝置端運作。16

安全強化(v0.13.0+)

v0.13.0修復了8個P0安全問題,並將一項預設值改成更有利於使用者的設定。18 v0.14.0接續修復另外12個P0與50個P1問題,包括sudo暴力破解/sudo-stdin強化、危險命令繞過修正、工具錯誤重新注入模型前的清理、dashboard plugin API驗證、skills-hub SSRF涵蓋範圍,以及安裝期間的供應鏈公告掃描。19

修正 變更內容
密鑰遮蔽預設啟用 先前需要選擇性啟用。除非明確停用,否則日誌與hermes debug share上傳內容會遮蔽密鑰。v0.12.0曾因酬載損毀回報而預設停用遮蔽;v0.13.0重新啟用,作為更安全的基準。
Discord跨guild DM繞過(CVSS 8.1) Discord角色允許清單現在限定於guild範圍,封閉了使用者在某個guild上的角色可授權所有guild中DM的路徑。
WhatsApp預設限制 WhatsApp配接器預設拒絕陌生人,且絕不在self-chat中回應。
MCP OAuth TOCTOU視窗 關閉了MCP OAuth流程中儲存憑證時的競態條件。
CLI auth.json TOCTOU 關閉了CLI驗證儲存區憑證寫入器中類似的TOCTOU視窗。
瀏覽器SSRF底線 Hybrid routing會強制套用雲端中繼資料SSRF底線,防止請求嘗試存取169.254.169.254及其等效位址。
Cron提示注入掃描 組合後的提示(包含載入的skill內容)會在cron job執行前接受提示注入掃描。
hermes debug share遮蔽 Debug share上傳會在上傳時遮蔽日誌內容,而不只是寫入時遮蔽。

如果您維護Hermes部署,請將v0.13.0與v0.14.0視為與安全相關的升級,而不只是功能發布。v0.13.0修復了Discord跨guild繞過與兩個TOCTOU視窗;v0.14.0則在sudo處理、工具錯誤重新注入、plugin API、skills-hub SSRF與相依套件公告方面再做一輪強化。


給實務使用者的架構說明

本節適合想了解底層運作的人員,方便除錯、擴充,或推敲效能表現。內容綜合自上游架構文件。3

進入點→AIAgent

Hermes中的每個進入點最終都會呼叫AIAgent.run_conversation()

┌──────────────────────────────────────────────────────────────────┐
                        Entry Points                              
                                                                  
  CLI (cli.py)    Gateway (gateway/run.py)    ACP (acp_adapter/)  
  Batch Runner    API Server                  Python Library     
└──────────┬──────────────┬───────────────────────┬────────────────┘
                                                
                                                
┌──────────────────────────────────────────────────────────────────┐
                     AIAgent (run_agent.py)                       
                                                                  
  ┌─────────────┐  ┌──────────────┐  ┌──────────────┐             
   Prompt         Provider        Tool                      
   Builder        Resolution      Dispatch                  
  └──────┬──────┘  └──────┬───────┘  └──────┬───────┘             
                                                              
  ┌──────┴───────┐ ┌──────┴───────┐  ┌──────┴───────┐             
   Compression    3 API Modes     Tool Registry             
   & Caching      chat_compl      47 tools                  
                  codex_resp      20 toolsets               
                  anthropic                                 
  └──────────────┘ └──────────────┘  └──────────────┘             
└──────────────────────────────────────────────────────────────────┘

圖表改編自上游架構文件。3

橫幅中的「47 tools / 20 toolsets」與「28 tools」。「47 tools」是上游儲存庫的工具登錄總數,也就是Hermes隨原始碼提供、跨所有toolset的每一項工具。實際執行中的CLI會在啟動橫幅顯示較小的數字(我驗證本指南時使用的安裝顯示28 tools / 89 skills)。這不是錯誤。許多toolset是選擇性啟用,必須在config.yamltoolsets:下明確開啟,例如訊息平台配接器、瀏覽器自動化、較重的抓取工具等。登錄總數代表「可用項目」;橫幅數字代表「目前profile中已啟用的項目」。可用hermes tools --list檢查哪些toolset處於啟用狀態,並在~/.hermes/config.yaml中透過toolsets:區塊啟用或停用個別toolset(或在執行中的工作階段內使用/tools list/tools enable <name>/tools disable <name>;移除工具會觸發工作階段重設,讓agent重建工具清單)。

三種API模式

Hermes會將供應商差異抽象成三種API模式,並在執行階段自動選擇:3

API模式 使用者
chat_completions OpenRouter、z.ai、Kimi、MiniMax、DeepSeek、Alibaba、多數自訂端點、任何OpenAI相容伺服器
codex_responses OpenAI Codex(透過ChatGPT OAuth)
anthropic_messages Anthropic API(原生)、Anthropic OAuth、Anthropic相容proxy

runtime_provider.py解析器會將(provider, model)tuple對應到(api_mode, api_key, base_url),支援18個以上的供應商,並處理OAuth流程、憑證池與別名解析。3

CLI工作階段中的資料流

User input  HermesCLI.process_input()
   AIAgent.run_conversation()
     prompt_builder.build_system_prompt()
     runtime_provider.resolve_runtime_provider()
     API call (chat_completions / codex_responses / anthropic_messages)
     tool_calls?  model_tools.handle_function_call()  loop
     final response  display  save to SessionDB

來自上游架構頁面。3

提示組合順序

提示堆疊包含:13

  1. SOUL.md(agent身分;若無法使用,則採用內建備援)
  2. 具工具感知能力的行為指引
  3. 記憶/使用者脈絡(MEMORY.mdUSER.md
  4. Skills指引
  5. 脈絡檔案(AGENTS.md.cursorrules
  6. 時間戳記
  7. 平台特定格式提示
  8. 選用系統提示覆蓋,例如/personality

SOUL.md是基礎,其他所有內容都建立在它之上。13

工作階段儲存

以SQLite為基礎的工作階段儲存,搭配FTS5全文搜尋。工作階段具備譜系追蹤(壓縮前後的父/子關係)、各平台隔離,以及具競用處理的原子寫入。3

Plugin System

三個探索來源:~/.hermes/plugins/(使用者)、.hermes/plugins/(專案)與pip進入點。Plugin會透過脈絡API註冊工具、hook與CLI命令。Memory provider是plugins/memory/下的專用plugin類型。3

hermes plugins                       # Interactive enable/disable UI
hermes plugins install <repo>        # Install from Git URL or owner/repo
hermes plugins enable <name>
hermes plugins disable <name>
hermes plugins list

設計原則

來自上游架構頁面:3

原則 實務上的意義
提示穩定性 系統提示不會在對話中途改變。除明確的使用者動作(/model)外,不會發生破壞快取的突變
可觀測執行 每次工具呼叫都會透過callback讓使用者看見。進度會在CLI(spinner)與gateway(聊天訊息)中更新
可中斷 使用者輸入或訊號可在進行中取消API呼叫與工具執行
平台無關核心 單一AIAgent類別服務CLI、gateway、ACP、batch與API伺服器。平台差異存在於進入點
鬆耦合 選用子系統(MCP、plugins、memory providers、RL環境)使用registry patterns與check_fn gating,而非硬性相依
Profile隔離 每個profile都有自己的HERMES_HOME、config、memory、sessions與gateway PID。多個profile可並行執行

從OpenClaw遷移

Hermes Agent是OpenClaw的繼任者。若您要從既有OpenClaw安裝遷移:65

hermes claw migrate --dry-run                    # Preview what would be migrated
hermes claw migrate --preset full                # Full migration including API keys
hermes claw migrate --preset user-data --overwrite   # User data only, no secrets
hermes claw migrate --source /custom/path        # Non-default OpenClaw location

hermes claw migrate預設會從~/.openclaw讀取(也會自動偵測舊版~/.clawdbot~/.moldbot目錄),並寫入~/.hermes6

直接匯入(30個以上類別):SOUL.mdMEMORY.mdUSER.mdAGENTS.md、來自4個來源目錄的skills、預設模型、自訂供應商、MCP伺服器、訊息平台token與允許清單(Telegram、Discord、Slack、WhatsApp、Signal、Matrix、Mattermost)、agent預設值(reasoning effort、compression、human delay、timezone、sandbox)、工作階段重設政策、approval rules、TTS config、瀏覽器設定、工具設定、exec timeout、command allowlist、gateway config,以及來自3個來源的API keys。6

封存供人工審查: cron jobs、plugins、hooks/webhooks、memory backend(QMD)、skills registry config、UI/identity、logging、multi-agent setup、channel bindings、IDENTITY.mdTOOLS.mdHEARTBEAT.mdBOOTSTRAP.md6

API key解析會依優先順序檢查3個來源:config values→~/.openclaw/.envauth-profiles.json6

疑難排解

「API key not set」

執行 hermes model 以互動方式設定供應商,或執行 hermes config set OPENROUTER_API_KEY your_keyhermes doctor 指令會明確告訴您缺少哪些金鑰。7

啟動時出現「Context limit: 2048 tokens」(本地模型)

Hermes 會自動從伺服器的 /v1/models 端點偵測上下文長度,但許多本地伺服器回報的預設值偏低。請在 config.yaml 中明確設定:2

model:
  default: your-model
  provider: custom
  base_url: http://localhost:11434/v1
  context_length: 32768

工具呼叫顯示為文字而非實際執行

您的伺服器未啟用工具呼叫,或該模型透過伺服器實作不支援工具呼叫。2

伺服器 修復方式
llama.cpp 在啟動指令中加入 --jinja
vLLM 加入 --enable-auto-tool-choice --tool-call-parser hermes
SGLang 加入 --tool-call-parser qwen(或適當的解析器)
Ollama 工具呼叫預設啟用——使用 ollama show <model> 確認您的模型支援
LM Studio 升級至 0.3.6+ 並使用具備原生工具支援的模型

回應在句子中途被截斷

兩種可能原因:2

  1. 輸出上限過低(max_tokens)——SGLang 預設每次回應 128 個 token。請在伺服器設定 --default-max-tokens,或在 config.yaml 中設定 model.max_tokens
  2. 上下文耗盡——模型已填滿其上下文視窗。請增加 model.context_length 或在 Hermes 中啟用上下文壓縮。

從 WSL2 連線至 Windows 主機上的模型伺服器時出現「Connection refused」

WSL2 使用具有自有子網路的虛擬網路介面卡——WSL2 內的 localhost 指的是 Linux 虛擬機,而非 Windows 主機。有兩種解決方式:2

鏡像網路(Windows 11 22H2+):編輯 %USERPROFILE%\.wslconfig:

[wsl2]
networkingMode=mirrored

接著執行 wsl --shutdown 並重新啟動。localhost 即可雙向運作。

主機 IP 備援(較舊版 Windows):從 WSL2 內取得 Windows 主機 IP,改用該 IP 取代 localhost:

ip route show | grep -i default | awk '{ print $3 }'
# Use that IP as the base_url host

您也需要讓模型伺服器繫結至 0.0.0.0,而非 127.0.0.1——Ollama 請設定 OLLAMA_HOST=0.0.0.0,llama-server/SGLang 請加上 --host 0.0.0.0,LM Studio 則請啟用「Serve on Network」。2

各項資源在哪裡?

hermes statushermes dump 是您的好幫手。hermes logs list 會列出所有日誌檔案及其大小。hermes config path 會印出設定檔位置。hermes config env-path 則會印出 .env 檔案位置。6


常見問題

Hermes Agent 與 Claude Code 有什麼差別?

Claude Code 是 Anthropic 的官方 CLI,僅限使用 Anthropic 模型。Hermes Agent 是 Nous Research 開發的開源代理框架,可搭配任何 OpenAI 相容供應商運作——Nous Portal、OpenRouter、Anthropic、GitHub Copilot、z.ai、Kimi、MiniMax、DeepSeek、Hugging Face、Google,或您自行架設的端點皆可。12 Hermes 還內建 Telegram/Discord/Slack/WhatsApp/Signal 訊息閘道,這是 Claude Code 所沒有的。

我可以用 Anthropic API 金鑰搭配 Hermes 嗎?

可以。有三種方式:2

  1. ~/.hermes/.env 中設定 ANTHROPIC_API_KEY,然後執行 hermes chat --provider anthropic --model claude-sonnet-4-6
  2. 執行 hermes model 並選擇 Anthropic——可用時 Hermes 會使用 Claude Code 的憑證儲存區
  3. 設定手動 ANTHROPIC_TOKEN(setup-token 或 OAuth token)作為備援

如果您已在同一台機器上使用 Claude Code,建議採用選項 2——這樣可保留可重新整理的 Claude 憑證之重新整理能力。

如何在不遺失對話的情況下切換供應商?

在工作階段中使用 /model provider:model。對話歷史、記憶與技能皆會延續:9

/model zai:glm-5
/model openrouter:anthropic/claude-sonnet-4
/model custom:local:qwen-2.5

我設定了 Anthropic,但視覺/網頁/壓縮功能無法運作

您遇到的是輔助模型備援問題。視覺、網頁摘要、壓縮等附屬任務使用獨立的輔助 LLM——預設透過自動偵測使用 Gemini Flash(OpenRouter → Nous → Codex)。若以上皆未設定且您僅設定了 Anthropic,這些功能會無聲降級。4

修復方式:可選擇加入 OPENROUTER_API_KEY 供輔助任務使用,或重新設定輔助插槽改用主供應商。請注意,上下文壓縮位於獨立的頂層 compression: 區塊,使用 summary_provider,而非 auxiliary.compression.provider——auxiliary.compression 插槽僅暴露 timeout。完整修復如下:

auxiliary:
  vision:      { provider: "main" }
  web_extract: { provider: "main" }

compression:
  summary_provider: "main"

SOUL.md 與 AGENTS.md 有什麼差別?

SOUL.md 是您代理的身分——語氣、風格、溝通預設。它位於 ~/.hermes/SOUL.md 並隨您走遍各處。AGENTS.md 則是專案專屬——架構、慣例、指令、路徑——位於您的專案目錄中。13 若該設定應隨您走遍各處,使用 SOUL.md;若屬於某專案,使用 AGENTS.md

如何同時執行多個 Hermes 實例?

使用 profile。每個 profile 都有自己的 HERMES_HOME、設定、記憶、工作階段與閘道 PID:6

hermes profile create work --clone
hermes profile use work                 # Sticky default
hermes -p work chat -q "..."            # One-off without switching
hermes profile alias work --name h-work # Wrapper script

Hermes 支援本地 LLM 嗎?

支援,透過自訂端點路徑。Hermes 可搭配任何 OpenAI 相容伺服器運作:Ollama、vLLM、SGLang、llama.cpp/llama-server、LM Studio、LocalAI、Jan,或您自行架設的伺服器皆可。2 各伺服器的設定方式請參閱 Custom & Self-Hosted Endpoints

為什麼我的啟動橫幅顯示的工具數量比指南所述的少?

指南引用上游架構註冊表的 47 個工具 / 20 個 toolset——這是 Hermes 在所有 toolset 中所提供原始碼的工具總數。您執行中的安裝會在橫幅中顯示較小的數字(本指南所用的參考安裝回報 28 個工具),因為 Hermes 啟動時只會啟用預設的 toolset 集合。許多 toolset 屬於選用性質:訊息閘道介接器、瀏覽器自動化、較重型的爬蟲堆疊,以及多個專門整合,都必須在 ~/.hermes/config.yamltoolsets: 下明確列出後才會載入。註冊表總數 =「啟用後可使用的工具」。橫幅總數 =「您目前 profile 實際載入的工具」。請使用 hermes tools --list 查看哪些 toolset 處於啟用狀態,以及哪些可用但已停用。可在執行階段以 /tools enable <name>/tools disable <name> 切換個別 toolset(停用會觸發工作階段重置,讓代理以新的形態重建工具清單)。

主供應商失敗時 Hermes 如何處理模型備援?

請在 config.yaml 中設定 fallback_model 區塊:2

fallback_model:
  provider: openrouter
  model: anthropic/claude-sonnet-4

當主供應商失敗(速率限制、伺服器錯誤、驗證失敗)時,Hermes 會在工作階段中途切換至備援,且不會遺失對話歷史。每個工作階段最多觸發一次。

代理可以隨時間自我改進技能嗎?

可以——這正是 Hermes Agent 的「自我改進」之處。代理可透過 skill_manage 工具建立、更新與刪除 skill。當它摸索出非顯而易見的工作流程時,會將該方法儲存為 skill 以供日後重用。11 代理會在以下情況建立 skill:完成複雜任務後(5 次以上工具呼叫)、遇到錯誤並找到可行路徑時、您糾正其方法時,或它發現非顯而易見的工作流程時。

是否有 IDE 整合?

有——Hermes 可作為 ACP(Agent Client Protocol)伺服器運行,支援 VS Code、Zed 與 JetBrains:6

pip install -e '.[acp]'
hermes acp

變更記錄

日期 變更 來源
2026-05-21 指南 v1.6:新增 v0.14.0(2026年5月16日)— Foundation release。重點:更輕量的安裝與執行期基礎,加上更廣的 provider、gateway、媒體與驗證介面。新增 SuperGrok OAuth,具備 grok-4.3 1M context;為 OAuth providers 提供 OpenAI-compatible hermes proxy;第一級 x_searchpip install hermes-agent;lazy dependency installs;啟動快約 19 秒;browser CDP calls 快 180 倍;LINE + SimpleX Chat,涵蓋 22 個 messaging platforms;Microsoft Teams end-to-end;/handoff/subgoal;Telegram/Discord 的原生 clarify buttons;Discord history backfill;raw-pixel vision_analyze;每回合 file-mutation verifier footer;每次寫入皆執行 LSP semantic diagnostics;統一的 video_generate;透過 cua-driver 為非 Anthropic providers 提供 computer_use;OSC8 clickable URLs;Zed ACP Registry support;OpenRouter Pareto Code router;NovitaAI;Codex app-server runtime;huggingface/skills trusted tap;9 個 optional skills;plugin ctx.llm / tool_override;Brave/DDGS web search;Qwen Cloud rename;native Windows beta;以及 12 個 P0 / 50 個 P1 結案。 19
2026-05-07 指南 v1.5:新增 v0.13.0(2026年5月7日)— Tenacity release。重點:耐用的 multi-agent Kanban board(heartbeat、reclaim、zombie detection、hallucination gate、每項任務 max_retries、multi-project boards),將 swarms 從 delegation pattern 提升為第一級 primitive。/goal command 可讓 agent 跨回合鎖定目標(將 Ralph-loop pattern 化為 slash command)。新增 video_analyze tool,以 Gemini 為優先,並支援可擴充的 compatible-model。xAI Custom Voices TTS provider,支援 voice cloning。CLI 與 gateway messages 支援 7-language i18n(zh-Hans、ja、de、es、fr、uk、tr);docs 僅 zh-Hans。透過 pluggable adapter pattern,新增 Google Chat 作為第 20 個 messaging platform;IRC + Microsoft Teams 也遷移到同一 pattern。ProviderProfile ABC + plugins/model-providers/ 讓第三方 providers 可插拔,無須修改核心。gateway restart、/update 與 source-file reload 後支援 Session auto-resumeCheckpoints v2 以 single-store design、真正 pruning 與 disk guardrails 重寫。8 個 P0 security closures:secret redaction 預設啟用、Discord cross-guild DM bypass(CVSS 8.1)、WhatsApp stranger-reject + self-chat-mute、MCP OAuth TOCTOU、CLI auth.json TOCTOU、browser SSRF floor、cron prompt-injection scanning、hermes debug share redaction。Python/JSON/YAML/TOML 的 Post-write linting;cron no_agent script-only mode;Slack/Telegram/Mattermost/Matrix/DingTalk 的 platform allowlists;MCP enhancements(SSE transport、OAuth forwarding、image MEDIA tags)。自 v0.12.0 以來的統計:864 次 commits、588 個 merged PRs、829 個 files changed、295 位 community contributors、282 個 issues closed(13 個 P0、36 個 P1)。 18
2026-05-06 指南 v1.4:新增 v0.12.0(2026年4月30日)— Curator release。重點:在 gateway 的 cron ticker 上執行的 autonomous background Curator(預設 7 天週期),會依 rubric 評分 skill library、移除失效 skills、整併相關 skills,並撰寫每次執行報告——Hermes 會在 active sessions 之間自我維護。Self-improvement loop 升級為 rubric-based grading、active-update bias、正確的 runtime inheritance,以及限制於 memory 和 skills 的 scoped toolsets。4 個新的 inference providers:GMI Cloud、Azure AI Foundry、MiniMax OAuth 與 Tencent Tokenhub。LM Studio 提升為第一級。Remote model catalog manifests 現在不必 release 也會 auto-update。2 個新的 messaging platforms:Microsoft Teams(第 19 個,透過 pluggable gateway architecture)與 Tencent Yuanbao(第 18 個,native text + media)。透過 PKCE OAuth 提供 Native Spotify,並附 bundled skill;用於 calls 與 transcription 的 Google Meet plugin;Piper local TTS provider。ComfyUI v5 + TouchDesigner-MCP 從 optional 改為預設 bundled。New skills:Humanizer、claude-design、design-md、airtable。CLI additions:hermes -z one-shot mode、hermes update --check preflight、/reload-skills slash command、pluggable busy-indicator styles。透過 lazy agent init 與 lazy imports,可見 TUI cold start 約縮短 57%。Security:secret redaction 預設停用,以避免 payload corruption;針對 unrecoverable commands 的 hardline blocklist。Stats:1,096 次 commits、550 個 merged PRs、213 位 community contributors。 17
2026-04-25 指南 v1.3:新增 v0.11.0(2026年4月23日)— Interface release。互動式 TUI 完整 React/Ink rewrite,搭配 Python JSON-RPC backend(tui_gateway);sticky composer、支援 OSC-52 clipboard 的 live streaming、stable picker keys、含 per-turn stopwatch 與 git branch 的 status bar、/clear confirm、light-theme preset、subagent spawn observability overlay。Pluggable transport architecture——format conversion 與 HTTP transport 抽離至 agent/transports/,讓 provider plumbing 更清爽。透過 Converse API 提供 Native AWS Bedrock5 條新的 inference paths:NVIDIA NIM、Arcee AI、Step Plan、Google Gemini CLI OAuth 與 Vercel ai-gateway。透過 Codex OAuth 使用 GPT-5.5——新的 OpenAI flagship 現已可透過 ChatGPT Codex OAuth 存取,無須額外的 API key。QQBot(第 17 個 messaging platform),支援 QR-scan setup 與 streaming。Plugin surface expansion:slash commands、tool dispatch、execution blocking、result transformation。/steer <prompt>——mid-run agent nudges,會注入一則正在執行的 agent 在下一次 tool call 後可看見的 note,不會中斷該回合,也不會破壞 prompt cache。Shell hooks 可將 scripts 接為 lifecycle hooks,無須 Python plugins。Webhook direct-delivery mode 會將 payloads 直接轉送到 platform chat,略過 agent 以支援 fan-out。Smarter delegation,包含 orchestrator roles、可設定的 spawn depth 與 file coordination。Dashboard 新增 plugin system、live theme switching、i18n 與 mobile responsiveness。自 v0.9.0 以來的統計:1,556 次 commits、761 個 merged PRs、1,314 個 files changed、224,174 次 insertions、29 位 community contributors。 20
2026-04-16 指南 v1.2:新增 v0.10.0 — Nous Tool Gateway。付費 Nous Portal 訂閱者現在不需額外的 API keys,即可使用 managed tools(Firecrawl web search、FAL / FLUX 2 Pro image generation、OpenAI TTS、Browser Use browser automation)。透過新的 use_gateway config field,可針對每個 tool opt-in。當 gateway 與 direct API keys 都已設定時,runtime 會優先使用 gateway。HERMES_ENABLE_NOUS_MANAGED_TOOLS env var 已移除。Hermes Agent CLI 維持 MIT-licensed,且完全免費。 21
2026-04-13 指南 v1.1:新增 v0.8.0 與 v0.9.0 功能。Local web dashboard、/fast mode、iMessage + WeChat platforms(總計 16 個)、background process monitoring(watch_patterns)、pluggable context engine、hermes backup/hermes import、Termux/Android、xAI + MiMo + Google AI Studio + Qwen providers、/debug command,以及全面的 security hardening。 15 16
2026-04-10 指南 v1.0:Initial release,涵蓋 Hermes Agent v0.7.0。Provider auth、config、CLI、slash commands、tools、skills、memory、gateway、cron、MCP、compression、architecture、OpenClaw migration、troubleshooting、FAQ。

參考資料


  1. Nous Research,“Hermes Agent”專案README,位於GitHub。產品描述(自我改進代理、多供應商、messaging gateway、terminal後端、skill演進、cron排程器、delegation)與“Quick Install”單行安裝指令的主要來源。 

  2. Nous Research,Hermes Agent文件中的“AI Providers”。完整供應商清單、各供應商驗證方式(Nous Portal OAuth、Codex裝置碼、GitHub Copilot權杖類型、Anthropic三種驗證方式、中國AI供應商、Hugging Face路由、自訂端點)、三種驗證路徑(.env中的API金鑰、透過hermes model使用OAuth、config.yaml中的自訂端點)、/model斜線命令語法(包含custom:name:model)、Ollama/vLLM/SGLang/llama.cpp/LM Studio設定範本、WSL2網路操作說明、context長度偵測鏈、fallback模型設定、smart model routing,以及具名自訂供應商的主要來源。本文所有供應商專屬環境變數名稱、權杖類型、base URL覆寫與模型識別碼皆來自此頁。 

  3. Nous Research,Hermes Agent開發者指南中的“Architecture”。系統總覽圖、目錄結構、資料流經CLI session與gateway訊息路徑、三種API模式(chat_completionscodex_responsesanthropic_messages)、透過runtime_provider.py解析供應商、透過SQLite + FTS5保存session、messaging gateway平台清單、plugin system探索來源、profile隔離,以及六項設計原則的主要來源。 

  4. Nous Research,Hermes Agent使用者指南中的“Configuration”。設定目錄結構、config.yaml.env規則(「非機密設定以config.yaml為準」)、設定優先順序鏈(CLI args → env → config.yaml → .env → defaults)、context壓縮設定(含thresholdtarget_ratioprotect_last_nsummary_modelsummary_providersummary_base_urlcompression.*區塊)、預算壓力門檻(70% caution、90% warning)、串流逾時與本機供應商自動調整,以及完整輔助模型設定區塊(auxiliary:,包含visionweb_extractapprovalcompressionsession_searchskills_hubmcpflush_memories槽位)的主要來源。"main"供應商僅限輔助、壓縮、fallback槽位的限制也出自此頁。 

  5. Nous Research,Hermes Agent指南中的“Migrate from OpenClaw”。OpenClaw → Hermes遷移流程的來源。 

  6. Nous Research,Hermes Agent參考文件中的“CLI Commands Reference”。本文記錄的每個頂層CLI命令之主要來源,包括hermes chathermes modelhermes gatewayhermes setuphermes authhermes statushermes cronhermes webhookhermes doctorhermes dumphermes logshermes confighermes pairinghermes skillshermes honchohermes memoryhermes acphermes mcphermes pluginshermes toolshermes sessionshermes insightshermes clawhermes profilehermes completionhermes updatehermes uninstall。本文所有子命令旗標、選項描述、credential pool行為、log篩選語法、OpenClaw遷移旗標、profile管理命令,以及服務安裝命令皆來自此頁。 

  7. Nous Research,Hermes Agent入門指南中的“Installation”。單行安裝指令、安裝程式行為(先決條件、平台支援、Termux自動偵測、Windows/WSL2需求)、選用extras表格、手動安裝步驟,以及驗證命令的主要來源。 

  8. Nous Research,“CLI Commands Reference”——請特別參閱hermes dump章節,其中說明該命令的輸出格式(標頭、環境、身分、模型、終端機、API金鑰、功能、服務、工作負載、設定覆寫),以及用於分享診斷資訊的預期用途。 

  9. Nous Research,Hermes Agent參考文件中的“Slash Commands Reference”。本文列出的每個斜線命令、COMMAND_REGISTRY架構、CLI與messaging分流、動態skill斜線命令、config.yaml中的快速命令、前綴比對行為,以及僅限messaging的命令(/status/sethome/approve/deny/update/commands)的主要來源。 

  10. Nous Research,Hermes Agent使用者指南中的“Tools & Toolsets”。tool分類總覽、toolset使用命令、六種terminal後端(local、docker、ssh、singularity、modal、daytona)、容器設定(cpu、memory、disk、persistent)、容器安全強化、背景程序管理API,以及sudo支援的主要來源。 

  11. Nous Research,Hermes Agent使用者指南中的“Skills System”。progressive disclosure、SKILL.md格式、平台專屬skills、條件式啟用(fallback_for_toolsetsrequires_toolsetsfallback_for_toolsrequires_tools)、透過skill_manage由代理管理skills、skill hub命令與來源清單(officialskills-shwell-knowngithubclawhubclaude-marketplacelobehub)、安全掃描與信任等級,以及外部skill目錄的主要來源。 

  12. Nous Research,Hermes Agent使用者指南中的“Persistent Memory”MEMORY.md / USER.md字元限制、frozen snapshot模式、memory tool動作(addreplaceremove)、應儲存與略過的內容、memory與session search比較,以及8個外部memory供應商清單(Honcho、OpenViking、Mem0、Hindsight、Holographic、RetainDB、ByteRover、Supermemory)的主要來源。 

  13. Nous Research,Hermes Agent使用者指南中的“Personality & SOUL.md”SOUL.md行為(位於HERMES_HOME、永不覆寫、system prompt中的第1槽、納入前會先經過安全掃描)、SOUL.md與AGENTS.md差異、內建personality清單(從helpfulhype共14種personality)、config.yaml中的自訂personality、/personality覆蓋模式,以及完整prompt stack組裝順序的主要來源。 

  14. Nous Research,Hermes Agent指南與參考文件中的“Use MCP with Hermes”MCP Config Referenceconfig.yaml中含commandargsenv欄位的mcp_servers:設定格式來源。 

  15. Hermes Agent v0.8.0 Release Notes。2026年4月8日。背景程序自動通知、Nous Portal上的免費MiMo v2 Pro、跨平台即時/model切換、Google AI Studio原生供應商、Qwen OAuth、依閒置時間觸發的逾時、Slack/Telegram上的核准按鈕、MCP OAuth 2.1 PKCE、集中式logging、plugin system擴充。 

  16. Hermes Agent v0.9.0 Release Notes。2026年4月13日。本機web dashboard、Fast Mode(/fast)、透過BlueBubbles支援iMessage、WeChat + WeCom、Termux/Android、背景程序監控(watch_patterns)、xAI + Xiaomi MiMo原生供應商、可插拔context engine、統一proxy支援、安全強化(path traversal、shell injection、SSRF、RCE修正)、hermes backup/hermes import/debug + hermes debug share、16個支援平台。487次commit、269個合併PR、24位貢獻者。 

  17. Hermes Agent v0.12.0 Release Notes。2026年4月30日。「The Curator release。」自主背景Curator會以7天為預設週期,在gateway的cron ticker上執行,負責評分、修剪並整合skill library。自我改進迴圈升級:以rubric評分、active-update bias、正確的runtime inheritance、將scoped toolsets限制為memory與skills。4個新的推論供應商:GMI Cloud、Azure AI Foundry、MiniMax OAuth、Tencent Tokenhub。LM Studio升級為一級支援。遠端model catalog manifest可在不發行版本的情況下自動更新。2個新的messaging平台:Microsoft Teams(第19個,透過可插拔gateway架構)與Tencent Yuanbao(第18個,原生text + media)。原生Spotify透過PKCE OAuth並搭配內建skill;Google Meet plugin用於通話與轉錄;Piper本機TTS供應商。預設內建ComfyUI v5 + TouchDesigner-MCP。新增skills:Humanizer、claude-design、design-md、airtable。CLI:hermes -z一次性模式、hermes update --check預檢、/reload-skills斜線命令、可插拔busy-indicator樣式。TUI冷啟動透過lazy initialization縮短約57%。安全:預設停用secret redaction;針對不可復原命令採用嚴格blocklist。自v0.11.0以來統計:1,096次commit、550個合併PR、213位社群貢獻者。另請參閱:v2026.4.30 release tag。 

  18. Hermes Agent v0.13.0 Release Notes。2026年5月7日。「The Tenacity release。」多代理Kanban board,含heartbeat、reclaim、zombie detection、hallucination gate、每項task的max_retries、multi-project boards。/goal斜線命令用於跨turn目標鎖定(Ralph loop primitive),並可設定turn預算。video_analyze工具,以Gemini優先並具備相容的multimodal擴充性。xAI Custom Voices TTS供應商,支援voice cloning。7語言i18n:zh-Hans、ja、de、es、fr、uk、tr(CLI + gateway訊息;文件僅zh-Hans)。Google Chat作為第20個messaging平台,透過可插拔adapter pattern,搭配通用env_enablement_fn / cron_deliver_env_var plugin hooks;IRC與Microsoft Teams也已遷移到相同模式。ProviderProfile ABC + plugins/model-providers/用於可插拔第三方供應商。Session在gateway重新啟動、/update與source-file重新載入後自動恢復。Checkpoints v2單一store重寫,具備真正pruning、磁碟防護,且無orphan shadow repos。8項P0安全結案:secret redaction預設開啟、Discord跨guild DM繞過(CVSS 8.1,role allowlists以guild為範圍)、WhatsApp預設拒絕陌生人 + 永不回應self-chat、MCP OAuth credential-save TOCTOU、credential writers中的CLI auth.json TOCTOU、hybrid routing中的browser cloud-metadata SSRF下限、cron assembled-prompt scanning(包含skill內容)以防prompt injection、hermes debug share在上傳時進行log-content redaction。其他值得注意項目:Python/JSON/YAML/TOML的post-write linting、cron no_agent純script watchdog模式、Slack/Telegram/Mattermost/Matrix/DingTalk的platform allowlists、MCP增強(SSE transport、OAuth forwarding、image results作為MEDIA tags)。自v0.12.0以來統計:864次commit、588個合併PR、829個檔案變更、295位社群貢獻者、282個issue結案(13個P0、36個P1)。 

  19. Hermes Agent v0.14.0 Release Notes。2026年5月16日。「The Foundation release。」自v0.13.0以來:808次commit、633個合併PR、1,393個檔案變更、165,061行新增、545個issue結案(12個P0、50個P1),以及215位社群貢獻者。新增SuperGrok OAuth與grok-4.3 1M context、hermes proxyx_search、PyPI封裝、lazy dependencies、跨session的1小時Claude prompt cache、啟動快約19秒、browser CDP calls快180倍、LINE與SimpleX Chat讓messaging平台達22個、/handoff、原生clarify按鈕、Discord歷史回填、raw-pixel vision_analyze、每turn檔案變更verifier footer、LSP semantic diagnostics、統一video_generate、cua-driver computer_use、OSC8 links、Zed ACP Registry支援、OpenRouter Pareto Code router、NovitaAI、Codex app-server runtime、huggingface/skills、plugin ctx.llmtool_override、Brave/DDGS搜尋、dangerous-command hardening、/subgoal、Qwen Cloud改名、原生Windows beta、總計16個locale,以及廣泛的文件與測試更新。 

  20. Hermes Agent v0.11.0 Release Notes。2026年4月23日。「The Interface release」——互動式CLI完整以React/Ink重寫,搭配Python JSON-RPC後端(tui_gateway);可插拔transport架構(agent/transports/);透過Converse API原生支援AWS Bedrock;5條新的推論路徑(NVIDIA NIM、Arcee AI、Step Plan、Google Gemini CLI OAuth、Vercel ai-gateway);透過Codex OAuth使用GPT-5.5;QQBot作為第17個messaging平台,支援QR掃描設定;擴充plugin surface(斜線命令、tool dispatch、execution blocking、result transformation);/steer <prompt>可在執行中對代理提供引導,於下一次tool call後注入context且不破壞prompt cache;生命週期事件的shell hooks,無需Python plugins;webhook direct-delivery模式,將payload直接轉送到平台chat;更聰明的delegation,具備orchestrator roles + 可設定spawn depth + file coordination;dashboard plugin system、即時theme switching、i18n、mobile responsiveness。自v0.9.0以來統計:1,556次commit · 761個合併PR · 1,314個檔案變更 · 224,174行新增 · 29位社群貢獻者。另請參閱:Hermes Agent v0.11.0 GitHub release tag。 

  21. Hermes Agent v0.10.0 Release Notes。2026年4月16日。「The Tool Gateway Release。」為付費Nous Portal訂閱者整合Nous Tool Gateway——可受管理地存取Firecrawl web search、FAL / FLUX 2 Pro image generation、OpenAI TTS與Browser Use browser automation,且不需要額外API金鑰。透過新的use_gateway設定欄位逐工具選擇啟用。當gateway與直接API金鑰皆已設定時,runtime會優先使用gateway。完整整合hermes toolshermes status。取代已棄用的HERMES_ENABLE_NOUS_MANAGED_TOOLS環境變數。由@jquesnelle(emozilla)實作。Hermes Agent CLI維持MIT授權並完全開源;gateway是與既有Portal訂閱產品的整合,不是設在CLI上的付費牆。另請參閱:Nous Portal以了解訂閱價格與註冊資訊。 

NORMAL hermes.md EOF