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: 4402 read_time: 51m updated: 2026-05-22 03:45
$ less hermes.md

TL;DR: Hermes Agentは、Nous Researchによるオープンソースの自己改善型AIエージェントです。CLIとしても、マルチプラットフォームのメッセージングgatewayとしても動作し、永続的なアイデンティティと継続的なメモリをディスクに保存し、使うほど改善されるskillを集約します。また、OpenAI互換の任意のLLMプロバイダー(Nous Portal、OpenRouter、Anthropic、GitHub Copilot、z.ai、Kimi、MiniMax、DeepSeek、Qwen Cloud、Hugging Face、Google、xAI/SuperGrok、または自分でセルフホストしたエンドポイント)で利用できます。1219 v0.14.0(2026年5月16日)時点で、Hermesにはgrok-4.3 1Mコンテキスト対応のSuperGrok OAuth、OAuthプロバイダー向けのOpenAI互換ローカルプロキシ(hermes proxy)、ファーストクラスのx_search、PyPIインストール対応、遅延依存関係インストール、LINEとSimpleX Chatを含む22のメッセージングプラットフォーム、/handoff、書き込み後のLSPセマンティック診断、統合されたvideo_generate、非Anthropicプロバイダー向けのcua-driver経由computer_use、ネイティブWindowsベータ、そして12件のP0 / 50件のP1クローズが追加されています。19 ほとんどの新規ユーザーにとって最も難しいのは、プロバイダー認証です。Hermesは約20のファーストクラスプロバイダーとカスタムエンドポイントに対応しており、認証経路も3つ(.envのAPIキー、hermes model経由のOAuth、またはconfig.yamlのカスタムエンドポイント)に分かれています。まず学ぶべきなのは、この認証モデルです。それ以外はすべて、どのプロバイダーが解決されるかに依存します。

Hermes Agentはチャットラッパーではなく、完全なエージェントランタイムとして動作します。 ファイルシステムを読み取り、サンドボックス化されたバックエンドでコマンドを実行し、Webをスクレイピングし、サブエージェントを起動し、スケジュールされたcronジョブを実行し、単一のgatewayプロセスからTelegram/Discord/Slack/WhatsApp/Signal/Emailとやり取りし、経験から独自のskillを作成します。1 CLIは、run_agent.pyの会話ループ上に構築されたターミナルUIです。gatewayは、メッセージングプラットフォームからのメッセージを同じ会話ループへルーティングする、長時間実行されるプロセスです。3

Hermesを気軽に使う場合と熟練して使う場合の違いは、5つのシステムを理解しているかどうかです。 これらを習得すると、Hermesは大きな力になります。

  1. Provider resolution: 認証フローがどのようにAPI呼び出しへ対応するか
  2. Configuration hierarchy: config.yaml + .env + auth.json + SOUL.md + AGENTS.md
  3. Tool + toolset system: エージェントが何をできるか、プラットフォームごとにどう制限されるか
  4. Skills system: エージェントが作成し進化させる手続き的メモリ
  5. Gateway + cron + profiles: いまいる場所だけでなく、普段使っている場所でHermesを動かす仕組み

重要ポイント

  • プロバイダー認証は1つではなく、3つの経路があります。 .envのAPIキー、hermes model/hermes auth経由のOAuth、またはconfig.yamlのカスタムエンドポイントです。慣れている方法ではなく、プロバイダーに合った経路を選んでください。
  • プロバイダーの切り替えは1つのコマンドでできます。 hermes modelは、OAuthログインを含む対応済みプロバイダーを対話的に案内します。また、/model provider:modelを使えば、履歴を失わずにセッション途中で切り替えられます。2
  • ユーザーが編集する設定面は2つのファイルです。 ~/.hermes/config.yamlには設定が入り、~/.hermes/.envにはシークレットが入ります。auth.jsonSOUL.mdMEMORY.mdskills/はHermesが直接管理します。SOUL.mdは手動で編集できますが、それ以外はエージェント自身が扱います。4
  • HermesはOpenClawの後継です。 移行する場合、hermes claw migrateが30以上のカテゴリの状態を自動でインポートします。5
  • サービス品質は補助モデルに左右されます。 Vision、Web要約、圧縮、メモリフラッシュはいずれも別の補助LLMを使います。デフォルトでは自動検出(OpenRouter → Nous → Codex)によるGemini Flashです。これらが設定されていない場合、補助スロットをメインプロバイダーに向けるまで、該当機能は静かに劣化します。4

v0.14で変わったこと

v0.14.0は、目玉機能が1つあるというよりも、Hermesを実行できる場所を広げながら、セットアップの手間を減らすリリースです。19 主な運用上の変更は次のとおりです。

  • インストールと起動が軽くなりました。 pip install hermes-agentでPyPIからインストールでき、重いアダプターは初回使用時に遅延インストールされます。また、起動パスで十分な処理を後回しにすることで、コールドスタートが約19秒短縮されています。
  • サブスクリプションをローカルAPIエンドポイントにできます。 hermes proxyは、Claude Pro、ChatGPT Pro、SuperGrokなどのOAuthベースのプロバイダーを、Codex、Aider、Cline、Continueのようなツール向けのOpenAI互換ローカルエンドポイントに変換します。
  • gatewayの対応範囲が広がりました。 LINEとSimpleX Chatによりプラットフォーム数は22になり、Microsoft Teamsはエンドツーエンドで接続され、Discord履歴バックフィルはデフォルトで有効になりました。また、Telegram/Discordのclarifyプロンプトはネイティブボタンを使うようになっています。
  • 書き込み時の検証が改善されました。 編集後、Hermesは次のターンの前に、ターンごとのファイル変更サマリーと言語サーバーのセマンティック診断を表示できます。これにより、エビデンス主導のエージェント作業に近づいています。
  • デスクトップとメディア系ツールが広がりました。 computer_useは非Anthropicプロバイダー向けにcua-driver経由で動作し、video_generateはプラガブルなバックエンドの背後に統合され、vision_analyzeは実際に画像を認識できるモデルへ生ピクセルを送ります。

以下の各セクションは、アップストリームのドキュメントであるhermes-agent.nousresearch.com/docsと、ソースツリーのgithub.com/NousResearch/hermes-agentに基づいています。すべての事実主張には、その情報が由来する具体的なアップストリームページへの脚注を付けています。

目的別ガイド

必要なこと 参照先
Hermesをインストールする インストール — 1行インストーラーまたは手動手順
プロバイダーにサインインする 認証とプロバイダー — ここを目的に来た方のためのセクション
セッション途中でモデルを切り替える The hermes auth Commandカスタムおよびセルフホストエンドポイント/model構文を確認してください
ローカルLLMを実行する カスタムおよびセルフホストエンドポイント — Ollama、vLLM、SGLang、llama.cpp、LM Studio
メッセージングプラットフォームを接続する メッセージングgateway — Telegram、Discord、Slack、WhatsApp、Signal、Google Chat、LINE、SimpleX Chat(合計22)
skillを書く、またはインストールする Skills System — 段階的開示 + skill hub
すべてのCLIコマンドの詳細リファレンス 続けて読んでください。そしてCLI Commandsへ直接リンクできます

Hermes の仕組み:メンタルモデル

Hermes は、どのエントリーポイントからでも呼び出せる単一の会話ループを中心に構成されています。エントリーポイントには、CLI(cli.py)、messaging gateway(gateway/run.py)、エディター連携用の ACP アダプター、バッチランナー、API サーバーがあります。3 これらは最終的にすべて run_agent.pyAIAgent.run_conversation() を呼び出します。この処理では、次のことを行います。

  1. prompt_builder.py を通じて、SOUL.mdMEMORY.mdUSER.md、skills、コンテキストファイル、ツールガイダンスからシステムプロンプトを構築します。3
  2. runtime_provider.py を通じて実行時 provider を解決します。ここで auth、base URL、API mode が選ばれます。3
  3. chat_completionscodex_responsesanthropic_messages の 3 つの API mode のいずれかで provider を呼び出します。3
  4. 返された tool calls を model_tools.py と中央のツールレジストリ(tools/registry.py)経由でディスパッチします。3
  5. モデルが最終レスポンスを生成するまでループし、その後セッションを FTS5 付きの SQLite に永続化します。3

このループを理解することは重要です。personalities、memory、skills、compression、fallback といったすべての機能は、このどこかのステージに接続されているからです。設定キーを読んで「これは何をするのか」と迷ったとき、答えはたいてい「上のループのステージ 1、2、3、4 のどこかにある調整ノブ」です。

プラットフォーム非依存のコア。 1 つの AIAgent クラスが、CLI、gateway、ACP、batch、API server を担います。プラットフォームごとの差分はエントリーポイント側にあり、agent 自体にはありません。3 そのため、同じ slash commands がターミナルでも Telegram でも動作します。これらは hermes_cli/commands.py の共有 COMMAND_REGISTRY からディスパッチされているためです。6

ディレクトリ構造そのものがシステムです。 Hermes はすべてを ~/.hermes/(または非デフォルト profile の場合は $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 をどこに保存するのか」を探しているなら、この中のどれかです。


インストール

ほとんどのユーザーには、1 行インストーラーが引き続き案内付きの推奨パスです。Python、uv、Node.js、ripgrep、ffmpeg、repo clone、仮想環境、グローバルな hermes コマンドまで処理します。7 v0.14.0 では実際の PyPI パッケージも提供されるため、すでに Python 環境を管理できている場合は、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 で動作します(インストーラーは Termux を自動検出し、テスト済みの Android bundle に切り替えます)。7 v0.14.0 では PowerShell インストーラーによるネイティブ Windows 対応が early beta として追加されましたが、Windows パスが成熟するまでは、本番利用には WSL2 を選ぶほうが安全です。19

完了したら、次を実行します。

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

唯一の前提条件は git です。インストーラーは 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 スレッドへ貼るための診断コマンドです。secret を伏せたうえで、セットアップ全体をプレーンテキストで要約します。8

手動インストール

完全に制御したい場合、たとえばカスタム Python バージョン、特定の extras、Nix/NixOS 連携が必要な場合は、upstream のインストールガイドに手順が段階的に記載されています。7 uv pip install -e ".[<extras>]" と組み合わせられる主な optional extras は次のとおりです。

Extra 追加されるもの
all 以下のすべて
messaging Telegram & Discord gateway
cron cron 式の解析
cli セットアップウィザード用のターミナルメニュー UI
modal Modal cloud execution backend
voice CLI のマイク入力 + 音声再生
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 のインストールコマンドは異なりますuv pip ではなく、constraints file 付きの pip を使います。

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

これは、Android で .[all] を使うと voice extra 経由で faster-whisper が取り込まれ、その依存である ctranslate2 の wheels が Android 向けに公開されていないためです。7

認証とProviders

Hermesは、約19のファーストクラスProvidersに加えてカスタムエンドポイントをサポートし、3つの異なる認証パスを提供します。手元の環境に合う方法を見つけやすいよう、認証の全体像をパス別に整理します。

3つの認証パス

Hermesの各Providerは、次の3つの認証パターンのいずれかに当てはまります。

パス1 — .env内のAPIキー。 キーを~/.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、その他ほとんどのサードパーティProvidersで使われます。2

パス2 — hermes modelまたはhermes 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.yamlに保存されます。2

完全なProviderマトリクス

以下は、ファーストクラスProvidersの完全な一覧と、それぞれの正確なセットアップフローです。2

Provider 認証パス セットアップ
Nous Portal OAuth hermes model(OAuthログイン、サブスクリプションベース)
OpenAI Codex OAuth hermes model(ChatGPTデバイスコード、Codexモデルを使用)
GitHub Copilot OAuthまたはトークン hermes model(OAuthデバイスコード)、またはCOPILOT_GITHUB_TOKEN / GH_TOKEN / gh auth token
GitHub Copilot ACP ローカルサブプロセス hermes model(PATH内のcopilot CLI + copilot loginが必要)
Anthropic OAuthまたはAPIキー hermes model(Claude Code認証情報を優先)、またはANTHROPIC_API_KEY、またはANTHROPIC_TOKEN setup-token
OpenRouter APIキー ~/.hermes/.env内のOPENROUTER_API_KEY
AI Gateway (Vercel) APIキー ~/.hermes/.env内のAI_GATEWAY_API_KEY(provider: ai-gateway
z.ai / GLM (ZhipuAI) APIキー ~/.hermes/.env内のGLM_API_KEY(provider: zai
Kimi / Moonshot APIキー ~/.hermes/.env内のKIMI_API_KEY(provider: kimi-coding
MiniMax (global) APIキー ~/.hermes/.env内のMINIMAX_API_KEY(provider: minimax
MiniMax China APIキー ~/.hermes/.env内のMINIMAX_CN_API_KEY(provider: minimax-cn
Alibaba Cloud (Qwen) APIキー ~/.hermes/.env内のDASHSCOPE_API_KEY(provider: alibaba、エイリアス: dashscopeqwen
Kilo Code APIキー ~/.hermes/.env内のKILOCODE_API_KEY(provider: kilocode
OpenCode Zen APIキー ~/.hermes/.env内のOPENCODE_ZEN_API_KEY(provider: opencode-zen
OpenCode Go APIキー ~/.hermes/.env内のOPENCODE_GO_API_KEY(provider: opencode-go
DeepSeek APIキー ~/.hermes/.env内のDEEPSEEK_API_KEY(provider: deepseek
Hugging Face APIキー ~/.hermes/.env内のHF_TOKEN(provider: huggingface、エイリアス: hf
Google / Gemini APIキー ~/.hermes/.env内のGOOGLE_API_KEYまたはGEMINI_API_KEY(provider: gemini
xAI (Grok) ネイティブProvider / SuperGrok OAuth 直接APIアクセスとモデルカタログを備えたファーストクラスProvider(v0.9.0+)。v0.14.0ではSuperGrok OAuthが追加され、対象アカウントではgrok-4.3のコンテキストウィンドウが1Mに引き上げられます。21619
xAI Custom Voices APIキー 音声クローン対応のTTS Provider。v0.13.0で追加されました。config.yamltts:配下で設定し、xAIキーを.envに指定します。18
Xiaomi MiMo ネイティブProvider セットアップウィザードとモデルカタログを備えたファーストクラスProvider。補助タスク向けに、Nous Portal上で無料のMiMo v2 Proを利用できます(v0.9.0+)。1615
Google AI Studio APIキー ~/.hermes/.env内のGOOGLE_API_KEYまたはGEMINI_API_KEY。models.devレジストリによる自動検出コンテキスト長付きの、Geminiへの直接アクセスです(v0.8.0+)。15
Qwen Cloud OAuth ポータルリクエスト対応のOAuth Provider(v0.8.0+)。このProviderはv0.14.0でAlibaba CloudからQwen Cloudに改名されました。既存の設定キーは引き続き動作します。1519
Custom endpoint config.yaml hermes model → “Custom endpoint”(config.yamlに保存)

Anthropic: 3つの認証方式

Anthropicは、HermesがClaudeへの3つの異なるパスをサポートしており、正しいものを選ぶことが重要なため、独立したセクションにしています。上流ドキュメントでは次のように説明されています。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はトークンを~/.hermes/.envにコピーするよりも、Claude Code自身の認証情報ストアを優先します。これにより、更新可能なClaude認証情報を更新可能なまま保てます。2 同じマシンで既にClaude Codeを使っている場合、これが最もクリーンな方法です。

Anthropicをconfig.yamlに恒久的に固定するには、次のようにします。

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

--provider claude--provider claude-codeも、--provider anthropicの短縮形として機能します。2

GitHub Copilot: 2つのモード

Copilotは2つのモードでサポートされています。直接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デバイスコードログイン

トークンの種類が重要です。 Copilot APIは、従来のPersonal Access Tokens(ghp_*)をサポートしていません。サポートされるのは、OAuthトークン(gho_*)、fine-grained PAT(Copilot Requests権限付きのgithub_pat_*)、GitHub Appトークン(ghu_*)です。gh auth tokenghp_*トークンを返す場合は、代わりにhermes modelを使ってOAuthで認証してください。2

中国AI Providers(ファーストクラスサポート)

Hermesには、z.ai/GLM、Kimi/Moonshot、MiniMax(グローバル + 中国エンドポイント)、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

ベースURLは、GLM_BASE_URLKIMI_BASE_URLMINIMAX_BASE_URLMINIMAX_CN_BASE_URL、またはDASHSCOPE_BASE_URL環境変数で上書きできます。2

Z.AIはエンドポイントを自動検出します。 z.ai/GLM Providerを使う場合、Hermesは複数のエンドポイント(グローバル、中国、coding variants)を調べ、APIキーを受け付けるものを見つけます。動作するエンドポイントは自動的にキャッシュされるため、ほとんどのユーザーはGLM_BASE_URLを設定する必要がありません。2

xAI (Grok)はプロンプトキャッシュを自動的に有効にします。 ベースURLにx.aiが含まれている場合、Hermesは各リクエストにx-grok-conv-idヘッダーを送信し、会話セッション内で同じサーバーにルーティングします。これにより、キャッシュ済みのシステムプロンプトと履歴を再利用できます。2 自動で行われるため、設定は不要です。

hermes authコマンド

hermes authは、プールと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

認証情報プールは、同じProviderに対して複数のAPIキーやOAuthトークンをローテーションする仕組みです。コードを変更せずに、複数のキーへレート制限を分散したい場合に便利です。6 従来のhermes login / hermes logoutコマンドは削除されました。代わりにhermes authを使ってください。6

カスタムおよびセルフホストエンドポイント

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

どちらの方法でも、main-model、provider、base URLの単一の信頼できる情報源であるconfig.yamlに保存されます。2 従来の環境変数OPENAI_BASE_URLLLM_MODELは、main-model設定ではもう読み取られませんhermes modelを使うか、config.yamlを直接編集してください。2(補助的なprovider: "main"ルーティングパスのフォールバックとしては、OPENAI_BASE_URL + OPENAI_API_KEYは引き続き尊重されます。その用途で使っている場合は、むやみに削除しないでください。)4

セッション途中でカスタムエンドポイントを切り替える:

/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のデフォルトのコンテキスト長は非常に低く設定されています(24GB VRAM未満では4,096トークン)。OLLAMA_CONTEXT_LENGTHまたはModelfileで引き上げる必要があります。OpenAI互換のAPIはクライアントからコンテキスト長を受け付けないため、Hermes側では設定できません。2 エージェント用途では、少なくとも16k〜32kに設定してください。

vLLM — 高性能なGPUサービングです。

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

ツール呼び出しには、--enable-auto-tool-choice--tool-call-parser <name>が必要です。サポートされるパーサーは、hermes(Qwen 2.5、Hermes 2/3)、llama3_jsonmistraldeepseek_v3deepseek_v31xlampythonicです。これらのフラグがないと、ツール呼び出しはプレーンテキストとして返ってきます。2

SGLang — KVキャッシュ再利用のためのRadixAttentionを備えた高速サービングです。

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.yamlmodel.max_tokensを設定してください。2

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

ツール呼び出しには--jinjaが必須です。 これがないと、llama-serverはtoolsパラメーターを完全に無視し、モデルが応答テキスト内にJSONを書いてツールを呼び出そうとします。しかしHermesはそれを実際のツール呼び出しとして解析できません。2

LM Studio — GUI付きのデスクトップアプリです。

LM Studioアプリからサーバーを起動します(Developerタブ → Start Server)。またはCLIで、lms server start(ポート1234で起動)とlms load qwen2.5-coder --context-length 32768を実行します。2 その後、hermes modelhttp://localhost:1234/v1に向けてください。

LM Studioの重要な注意点: LM Studioはモデルメタデータからコンテキスト長を読み取りますが、多くのGGUFモデルはデフォルトとして2048または4096を報告します。LM Studioのモデル設定で必ずコンテキスト長を明示的に設定してください。モデルピッカー横の歯車アイコンをクリックし、”Context Length”を少なくとも16384(できれば32768)に設定して、モデルを再読み込みします。2

名前付きカスタムProviders

複数のカスタムエンドポイント(たとえばローカル開発サーバーとリモートGPUサーバー)を扱う場合は、config.yamlで名前付きカスタムProvidersとして定義します。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

その後、セッション途中でトリプル構文を使って切り替えられます。

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

対話式のhermes modelメニューから名前付きカスタムProvidersを選ぶこともできます。2

プラグイン可能なProviderアーキテクチャ(v0.13.0+)

v0.13.0では、ProviderProfile ABCplugins/model-providers/ディレクトリが提供され、サードパーティの推論Providersがコアを変更せずに追加できるようになりました。18 ProviderがOpenAI、Anthropic、またはCodex互換のAPIモードを話せる場合、認証パス、ベースURL、モデルカタログ、キャッシュヘッダーを宣言するProviderProfileサブクラスを実装できます。Hermesは組み込みProvidersと同じruntime_provider.pyパスを通じてそれを解決します。これがv0.13.0のProvider拡張を支えるアーキテクチャ変更です。Providerを追加するためにコアコードを編集するのではなく、プラグインとして配布できます。

OpenAI互換ローカルProxy(v0.14.0+)

hermes proxyは、Hermesが既にサインインしているOAuth Providerをバックエンドにした、OpenAI互換のローカルエンドポイントを公開します。対象はClaude Pro、ChatGPT Pro、SuperGrok、または設定済みの別の互換Providerです。19 つまり、Codex CLI、Aider、Cline、Continue、カスタムスクリプトなど、OpenAIスタイルのAPIを期待するツールは、別のAPIキーなしで、サブスクリプションに紐づいたHermes認証を再利用できます。このproxyはローカル開発インフラとして扱ってください。意図してバインドし、広く公開せず、Provider固有の利用規約も念頭に置きましょう。

コンテキスト長の検出

上流ドキュメントによると、次の2つの設定は頻繁に混同されます。2

  • context_length — 合計コンテキストウィンドウ(入力 + 出力のトークン予算の合計。例: Claude Opus 4.7では1,000,000、Sonnet 4.6では200,000)。Hermesは履歴をいつ圧縮するかの判断にこれを使います。
  • model.max_tokens — 出力上限(モデルが1回の応答で生成できる最大トークン数)。履歴の長さとは関係ありません。

自動検出がウィンドウサイズを誤る場合は、context_lengthを設定します。

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

Hermesは、コンテキストウィンドウを検出するために複数ソースの解決チェーンを使います。config override → custom provider per-model → persistent cache → endpoint /models → Anthropic /v1/models → OpenRouter API → Nous Portal → models.dev(3800以上のモデルに対応するコミュニティ管理レジストリ)→ fallback defaults(128K)という順序です。2 この仕組みはProviderを認識するため、同じモデルでも、どこが提供するかによってコンテキスト制限が異なることがあります(例: claude-opus-4.6はAnthropic directでは1Mですが、GitHub Copilotでは128Kです)。2

Providerローテーションとフォールバック

認証情報プール。 同じProviderに対して複数のAPIキーがある場合は、hermes authでローテーション戦略を設定します。これにより、複数のキーにレート制限を分散できます。6

フォールバックモデル。 プライマリモデルが失敗した場合(レート制限、サーバーエラー、認証失敗)、Hermesが自動的に切り替えるバックアップのprovider:modelを設定します。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

フォールバックは、会話を失わずにセッション途中でモデルとProviderを切り替えます。発動するのは1セッションにつき最大1回です。2 フォールバック対応Providers: openrouternousopenai-codexcopilotcopilot-acpanthropichuggingfacezaikimi-codingminimaxminimax-cndeepseekai-gatewayopencode-zenopencode-gokilocodealibabacustom2

補助モデル

Hermesは、軽量な「補助」モデルをサイドタスクに使います。画像分析、Webページ要約、ブラウザースクリーンショット分析、危険なコマンド承認分類、コンテキスト圧縮、セッション検索要約、skillマッチング、MCPツールディスパッチ、メモリフラッシュなどです。4 デフォルトでは、自動検出(OpenRouter → Nous → Codex)経由でGemini Flashを使います。

各補助タスクで使うモデルとProviderを設定できます。 すべての補助スロットは、同じ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オプションは、「メインエージェントが使っているProviderを使う」という意味です。これはauxiliary:compression:fallback_model:設定内でのみ有効です。トップレベルのmodel.provider設定では有効ではありません。メインモデルとしてカスタムOpenAI互換エンドポイントを使う場合は、model:セクションでprovider: customを設定してください。4

これが重要な理由: Anthropic OAuthだけを設定している場合(OpenRouterキーがない場合)、デフォルトの補助フォールバックチェーンはまずOpenRouterを試すため、vision、Web要約、圧縮が劣化するか失敗します。補助タスク用にOPENROUTER_API_KEYを追加するか、各補助スロットをメインProviderに向け直してください。

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

これは、新しいHermesユーザーにとって最もよくある「機能が静かに動かない」注意点です。


設定システム

Hermesには階層化された設定システムがあります。優先順位を理解することが重要です。上位の階層は下位の階層を上書きし、そのうち1つはconfig.yamlからは見えないグローバルなプロバイダーレジストリだからです。

設定ファイルのレイアウト

upstream docsによると、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は、その1回の呼び出しでは常に最優先されます。config.yamlは長期的な信頼できる情報源です。

ローカライゼーション(v0.13.0+)

v0.13.0では、CLI と gateway messages 向けに7つのロケールが追加されました。中国語(簡体字)、日本語、ドイツ語、スペイン語、フランス語、ウクライナ語、トルコ語です。18 v0.14.0では、すべてのgateway commandsとweb dashboardがローカライズされ、さらに8ロケールが追加されて、合計は16になりました。19 ドキュメントは現在、zh-Hansのみローカライズされています。ロケールはLC_ALL / LANG環境変数、または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 Referenceを参照してください。6

グローバルオプション

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 メッセージング gateway の実行・管理
hermes setup インタラクティブなセットアップウィザード
hermes auth 認証情報の管理 — 追加、一覧、削除、リセット、戦略の設定
hermes status エージェント、認証、プラットフォームのステータスを表示
hermes cron cron スケジューラーの確認とティック実行
hermes webhook 動的な webhook サブスクリプションの管理
hermes doctor 設定と依存関係の問題を診断
hermes dump サポート/デバッグ用のコピペ可能なセットアップ概要
hermes logs エージェント/gateway/エラーログの表示、追跡、フィルタリング
hermes config 設定の表示、編集、移行、クエリ
hermes pairing メッセージングペアリングコードの承認・取り消し
hermes skills skill の閲覧、インストール、公開、監査
hermes honcho Honcho クロスセッションメモリの管理
hermes memory 外部メモリプロバイダーの設定
hermes acp Hermes を ACP サーバーとして実行(エディタ統合)
hermes mcp MCP サーバー設定の管理、Hermes を MCP サーバーとして実行
hermes plugins プラグインの管理
hermes tools プラットフォームごとに有効なツールを設定
hermes sessions セッションの閲覧、エクスポート、整理、削除
hermes insights トークン/コスト/アクティビティの分析を表示
hermes claw OpenClaw 移行ヘルパー
hermes profile profile の管理(複数の隔離インスタンス)
hermes completion シェル補完スクリプトの出力(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 トラブルシューティング用のデバッグレポートをペーストビンにアップロード(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> このセッションに1つ以上の skill をプリロード
-v, --verbose 詳細出力
-Q, --quiet プログラマティックモード(バナー、スピナー、プレビューなし)
--resume <session> chat から直接セッションを再開
--worktree 隔離されたgit worktreeを作成
--checkpoints 破壊的変更の前にファイルシステム checkpoint を有効化
--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 — メッセージング gateway のアクティビティ(プラットフォーム接続、ディスパッチ、webhook)

ローテーションは 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(alias /reset 新しいセッションを開始します
/clear 画面をクリアし、新しいセッションを開始します
/history 会話履歴を表示します
/save 現在の会話を保存します
/retry 最後のメッセージを再試行します
/undo 最後のユーザー/assistantのやり取りを削除します
/title <name> 現在のセッションにタイトルを設定します
/compress 会話コンテキストを手動で圧縮します
/rollback [number] ファイルシステムcheckpointを一覧表示または復元します
/stop 実行中のすべてのバックグラウンドプロセスを終了します
/queue <prompt> 次のターン用にpromptをキューに入れます。注意点: /q/queue/quitの両方で使われています。最後の登録が優先されるため、実際には/q/quitに解決されます。必ず/queueを明示的に入力してください。9
/resume [name] 以前に名前を付けたセッションを再開します
/statusbar(alias /sb コンテキスト/modelステータスバーを切り替えます
/background <prompt>(alias /bg 別のバックグラウンドセッションでpromptを実行します
/btw <question> 一時的な補足質問です(ツールなし、永続化なし)
/plan [request] 実行する代わりに計画を書くため、同梱のplan skillを読み込みます
/branch [name](alias /fork 現在のセッションを分岐します
/goal <target> agentをtargetに固定し、ターンをまたいでもタスクに集中させます。Ralph-loopパターンを第一級のプリミティブにしたものです。ターン予算を設定できます。v0.13.0で追加されました。18
/subgoal <criterion> ループを再開せずに、アクティブな/goalへ成功基準を追加します。v0.14.0で追加されました。19
/handoff <target> ライブセッション(メッセージ、tool calls、コンテキスト)を別のmodel、persona、またはprofileへ引き継ぎます。v0.14.0で追加されました。19

設定とModel

Command Description
/config 現在の設定を表示します
/model [model-name] 現在のmodelを表示または変更します
/provider 利用可能なproviderと現在のproviderを表示します
/personality [name] personality overlayを設定します
/verbose ツール進捗表示を切り替えます
/reasoning reasoning effortと表示を管理します
/skin 表示skin/themeを表示または変更します
/voice [on\|off\|tts\|status] CLIの音声モードを切り替えます
/yolo YOLOモードを切り替えます(承認promptをスキップ)
/fast Fast Modeを切り替えます。OpenAIおよびAnthropic model向けの優先処理です(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

ツール、Skills、情報

Command Description
/tools [list\|disable\|enable] [name...] 現在のセッションのツールを管理します
/toolsets 利用可能なtoolsetを一覧表示します
/browser [connect\|disconnect\|status] ローカルChrome CDP接続を管理します
/skills skillを検索、インストール、調査、または管理します
/cron スケジュール済みタスクを管理します
/reload-mcp config.yamlからMCPサーバーを再読み込みします
/plugins インストール済みpluginを一覧表示します
/help すべてのコマンドを表示します
/usage token使用量、コスト、所要時間を表示します
/insights 使用状況analyticsを表示します(直近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では、短い名前を長いpromptにaliasするquick commandsも定義できます。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と入力します。

Prefix Matching

コマンドはprefix matchingに対応しています。/hと入力すると/helpに、/mod/modelに解決されます。prefixが曖昧な場合は、registry順で最初に登録されたものが優先されます。完全なコマンド名と登録済みaliasは、prefix matchより常に優先されます。9

メッセージング固有のコマンド

一部のコマンドは、メッセージングプラットフォーム(Telegram、Discord、Slack、WhatsApp、Signal、Email、Home Assistant)でのみ動作します。9

  • /status — セッション情報を表示します
  • /sethome(alias /set-home) — 現在のチャットをプラットフォームhomeとしてマークします
  • /approve [session|always] — 保留中の危険なコマンドを承認します
  • /deny — 保留中の危険なコマンドを拒否します
  • /update — Hermes Agentをlatestに更新します
  • /commands [page] — すべてのコマンドとskillを閲覧します(ページ分割)

また、CLI専用のものもあります: /skin/tools/toolsets/browser/config/cron/skills/platforms/paste/statusbar/plugins9


Tools と toolsets

Hermes には、Web 検索、ブラウザー自動化、ターミナル実行、ファイル編集、メモリ、委任、RL training、メッセージ配信、Home Assistant 連携などをカバーする、幅広い組み込みツールレジストリが同梱されています。10 ツールは論理的な toolsets に整理されており、プラットフォームごとに有効化または無効化できます。

上位カテゴリ

カテゴリ 説明
Web web_search, web_extract Web を検索し、ページ内容を抽出します
ターミナルとファイル terminal, process, read_file, patch コマンドを実行し、ファイルを操作します
ブラウザー browser_navigate, browser_snapshot, browser_vision テキストと vision を使ったインタラクティブなブラウザー自動化
Media vision_analyze, video_analyze, video_generate, image_generate, text_to_speech マルチモーダルな分析と生成です。video_analyze は Gemini-first で、互換性のあるマルチモーダルプロバイダーへ拡張できるサポートを備えています(v0.13.0+)。v0.14.0 では、プロバイダーバックエンドを差し替え可能な統合 video_generate が追加され、active model が vision-capable の場合は vision_analyze を通じて raw pixels を送信します。1819
Agent orchestration todo, clarify, execute_code, delegate_task 計画、確認、コード実行、subagent 委任
Computer use computer_use cua-driver バックエンドによるデスクトップ制御です。v0.14.0 では、非 Anthropic の vision-capable providers でも動作するようになりました。19
Memory と recall memory, session_search 永続メモリとセッション検索
Automation と delivery cronjob, send_message スケジュール済みタスク、アウトバウンドメッセージング
Integrations ha_*, MCP tools, rl_* Home Assistant、MCP、RL training

一般的な toolset 名には、webterminalfilebrowservisionimage_genmoaskillsttstodomemorysession_searchcronjobcode_executiondelegationclarifyhomeassistantrl があります。10

Tools の管理

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

ツールは、セッション中に /tools disable <name>/tools enable <name> で切り替えることもできます。これによりセッションがリセットされ、新しいツールセットが有効になります。9

ターミナルバックエンド

ターミナルツールは、6 種類の環境でコマンドを実行できます。10

バックエンド ユースケース
local 自分のマシンで実行(デフォルト)— 開発、信頼できるタスク
docker 分離されたコンテナ — セキュリティ、再現性
ssh リモートサーバー — サンドボックス、agent を自身のコードから切り離す
singularity HPC コンテナ — クラスターコンピューティング、rootless
modal サーバーレスクラウド実行
daytona クラウドサンドボックスワークスペース — 永続的なリモート開発環境

バックエンドは 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 backend(セキュリティのため推奨 — 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 backend:

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 を指定すると、インストール済みパッケージ、ファイル、設定がセッションをまたいで保持されます。10

すべてのコンテナバックエンドはセキュリティ強化された状態で実行されます。読み取り専用 root ファイルシステム(Docker)、DAC_OVERRIDECHOWNFOWNER を除くすべての Linux capability の削除、権限昇格なし、PID 制限(256 プロセス)、完全な namespace 分離、volume による永続ワークスペースが含まれます。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 はパスワードの入力を求めます(セッション中はキャッシュされます)。または、~/.hermes/.envSUDO_PASSWORD を設定してください。10


Multi-Agent Kanban(v0.13.0+)

v0.13.0 では、multi-agent コラボレーションが第一級のプリミティブになりました。agent 間および再起動後もタスク、ステータス、worker identity を追跡する durable Kanban board です。18 この board によって、Hermes worker の群れは、行き詰まった handoff で止まるのではなく、実際に作業を完了できるようになります。

メカニズム 役割
Heartbeats 各 worker はタスクを所有している間、pulse を送ります。heartbeat が途切れると worker は suspect として扱われ、タスクは reclaim できる状態になります。
Reclaim 別の worker が、完全なタスク状態と以前の部分的な出力を引き継いで、放棄されたタスクを拾えます。
Zombie detection タスクを完了としてマークせずに終了した worker は、新しい作業を claim できないよう自動でブロックされます。これにより、swarm に dead identity が蓄積するのを防ぎます。
Hallucination gate gate を通過できなかった出力は、完了扱いにされるのではなく、理由を添えてタスクが board に戻されます。
Per-task max_retries 壊れやすいと分かっているタスクについて、デフォルトの retry budget を上書きできます。
Multi-project boards 1 つの Hermes home で、複数の独立した board をホストできます。

Kanban board は、ターゲット側では /goal(locked-target Ralph loop)と自然に組み合わさり、spawn semantics では既存の delegate_task ツールと連携します。その結果、すべての agent が「次に何をするか」「誰が担当しているか」「何が詰まっているか」について 1 つの truth source を共有する swarm パターンが生まれます。

skillシステム

skillは、必要なときにagentが読み込めるオンデマンドの知識ドキュメントです。token使用量を抑えるため、progressive disclosureパターンに従っており、agentskills.ioのオープン標準と互換性があります。11

すべてのskillは~/.hermes/skills/に置かれます。ここが主要ディレクトリであり、信頼できる唯一の情報源です。新規インストール時には、bundled skillがrepoからコピーされます。Hub経由でインストールしたskillや、agentが作成したskillもここに配置されます。11

Progressive Disclosure

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.

条件付きActivation

skillは、利用可能なツールに応じて自分自身を表示したり非表示にしたりできます。これはfallback skill、つまりpremium toolが利用できない場合にだけ表示されるべき無料またはローカルの代替手段で特に便利です。11

フィールド 動作
fallback_for_toolsets 指定されたtoolsetが利用可能な場合、skillを非表示にします
fallback_for_tools 同じですが、個別のtoolを確認します
requires_toolsets 指定されたtoolsetが利用できない場合、skillを非表示にします
requires_tools 同じですが、個別のtoolを確認します

例: built-inのduckduckgo-search skillはfallback_for_toolsets: [web]を使用します。FIRECRAWL_API_KEYを設定している場合、web toolsetが利用可能になり、agentはweb_searchを使います。このときDuckDuckGo skillは非表示のままです。APIキーがない場合、DuckDuckGo skillがfallbackとして自動的に表示されます。11

Agent管理のskill

agentは、skill_manage toolを通じて自分自身のskillを作成、更新、削除できます。これはagentの手続き的記憶です。非自明なワークフローを見つけたとき、その手順をskillとして保存し、今後再利用できるようにします。11

agentがskillを作成するタイミング:11 - 複雑なタスク(5回以上のtool call)を正常に完了した後 - エラーや行き詰まりに遭遇し、うまくいく手順を見つけたとき - ユーザーが進め方を修正したとき - 非自明なワークフローを発見したとき

Actions:11

Action 用途
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 trust)
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を公開しているsiteからのURLベースdiscovery
github openai/skills/k8s 直接GitHub repo/path install
clawhub サードパーティのskill marketplace
claude-marketplace Claude互換のplugin/marketplace manifest
lobehub LobeHub agent catalog conversion

デフォルトのGitHub taps(設定なしで閲覧可能): openai/skills, anthropics/skills, VoltAgent/awesome-agent-skills, garrytan/gstack11

Security Scanning

Hub経由でインストールされるすべてのskillは、security scannerを通過します。data exfiltration、prompt injection、破壊的コマンド、supply-chain signals、その他の脅威をチェックします。11

Trust levels:11

Level Source Policy
builtin Hermesに同梱 常に信頼されます
official repo内のoptional-skills/ Builtin trust、サードパーティ警告なし
trusted 信頼済みregistry(openai/skills, anthropics/skills より許容的なpolicy
community それ以外すべて 危険でないfindingは--forceで上書き可能です。dangerous verdictは引き続きブロックされます

--forceは、community skillに対する危険でないpolicy blockを上書きできます。ただし、dangerous scan verdictは上書きできません11

外部skillディレクトリ

ローカルのskillディレクトリと併せてscanされる追加のskillディレクトリを、Hermesに指定できます。11

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

pathでは~展開と${VAR}環境変数の置換をサポートしています。外部ディレクトリは読み取り専用です。agentがskillを作成または編集する場合、常に~/.hermes/skills/に書き込みます。両方に同じskill名が存在する場合は、ローカルが優先されます。11


永続メモリ

Hermes には、セッションをまたいで保持される、範囲を絞ってキュレーションされたメモリがあります。agent のメモリは 2 つのファイルで構成され、どちらも ~/.hermes/memories/ に保存されます:12

ファイル 目的 文字数制限
MEMORY.md Agent の個人メモ。環境情報、規約、学習したこと 2,200 文字(約800 tokens)
USER.md ユーザープロファイル。好み、コミュニケーションスタイル、期待値 1,375 文字(約500 tokens)

どちらも セッション開始時点の固定スナップショットとして system prompt に注入されます。agent は memory ツールを使って、自分のメモリを管理します。操作は addreplaceremove です。12

固定スナップショットパターン: system prompt への注入はセッション開始時に 1 回だけ取得され、セッション中に変わることはありません。これは意図的な設計です。パフォーマンスのため、LLM の prefix cache を維持するためです。セッション中に行った変更はすぐディスクへ永続化されますが、system prompt に反映されるのは次のセッションからです。12

保存すべき内容

保存するもの(agent が主体的に行います):12 - ユーザー設定: “I prefer TypeScript over JavaScript” → user - 環境情報: “This server runs Debian 12 with PostgreSQL 16” → memory - 修正事項: “Don’t use sudo for Docker commands, user is in docker group” → memory - 規約: “Project uses tabs, 120-char line width, Google-style docstrings” → memory - 完了した作業: “Migrated database from MySQL to PostgreSQL on 2026-01-15” → memory

保存しないもの:12 - 些細な情報、明白な情報 - 簡単に再発見できる事実 - 生データのダンプ(メモリには大きすぎます) - セッション固有の一時的な情報 - すでに context ファイルにある情報

セッション検索

MEMORY.mdUSER.md に加えて、agent は session_search ツールを使って過去の会話を検索できます。すべての CLI とメッセージングセッションは SQLite(~/.hermes/state.db)に保存され、FTS5 全文検索に対応しています。クエリは、関連する過去の会話を Gemini Flash の要約付きで返します。12

機能 永続メモリ セッション検索
容量 合計約1,300 tokens 無制限(全セッション)
速度 即時(system prompt 内) 検索 + LLM 要約が必要
用途 常に利用できる重要情報 特定の過去の会話を探す
管理 agent が手動でキュレーション 自動。全セッションを保存
Token コスト セッションごとに固定(約1,300 tokens) オンデマンド

外部メモリプロバイダー

MEMORY.mdUSER.md を超える、より深い永続メモリのために、Hermes には 8 つの外部メモリプロバイダープラグインが同梱されています: Honcho, OpenViking, Mem0, Hindsight, Holographic, RetainDB, ByteRover, and Supermemory12

外部プロバイダーは組み込みメモリと並行して動作します(置き換えることはありません)。知識グラフ、semantic search、自動的な事実抽出、セッション横断のユーザーモデリングなどの機能を追加します: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 つだけです。組み込みメモリは常に有効です。6

セッションの自動再開(v0.13.0+)

v0.13.0 では、agent の途中中断から復帰できるようになりました。gateway は再起動後に中断されたセッションを自動再開します。/update による再起動では、アップグレード中もセッション状態が保持されます。開発中にソースファイルをリロードしても、新しいセッションを強制せず、アクティブなセッションが維持されます。18 実用上は、長時間実行される gateway 作業や cron 駆動ジョブが、プロセス再起動時に context window をリセットしなくなります。

Checkpoints v2(v0.13.0+)

v0.13.0 では、状態の永続化が単一ストア設計として書き直され、実際の pruning、ディスク保護、orphan shadow repos の排除が導入されました。18 以前の checkpoint システムは、長時間実行される profile でディスク上の状態を蓄積していました。v2 store はローカル checkpoint ストレージに厳格な上限を設け、その増加を引き起こしていた重複 bookkeeping を取り除きます。ユーザー向けの config 変更は不要です。次回 checkpoint が書き込まれると v2 path が使われます。


パーソナリティと SOUL.md

SOUL.md は Hermes インスタンスの主要な identityです。system prompt の slot #1 を占め、ハードコードされたデフォルト identity を置き換えます。13

Hermes は、デフォルトの SOUL.md~/.hermes/SOUL.md(またはカスタム profile では $HERMES_HOME/SOUL.md)に自動で配置します。既存のユーザーファイルが上書きされることはありません。Hermes が SOUL.md を読み込むのは HERMES_HOME からだけです。現在の作業ディレクトリは見ません。これにより、プロジェクト間でパーソナリティが予測しやすくなります。13

SOUL.md に含めるべき内容

長く使う voice やパーソナリティの指針に使います:13 - トーン - コミュニケーションスタイル - 直接性のレベル - デフォルトの対話スタイル - スタイル面で避けること - Hermes が不確実性、意見の相違、曖昧さをどう扱うべきか

あまり向いていないもの:13 - 1 回限りのプロジェクト指示 - ファイルパス - repo の規約 - 一時的な workflow の詳細

これらは SOUL.md ではなく AGENTS.md に属します。

SOUL.md と AGENTS.md の違い

これは Hermes の identity 管理で最も重要な区別です:13

SOUL.md — identity、トーン、スタイル、コミュニケーションのデフォルト、パーソナリティレベルの振る舞い。

AGENTS.md — プロジェクトアーキテクチャ、coding conventions、ツールの好み、repo 固有の workflows、commands、ports、paths、deployment notes。

便利な判断基準はこうです。どこへ行っても付いてくるべきものは SOUL.md に入れます。プロジェクトに属するものは AGENTS.md に入れます。13

組み込みパーソナリティ

Hermes には、/personality で切り替えられる組み込みパーソナリティがあります:13

名前 説明
helpful 親しみやすい、汎用 assistant
concise 簡潔で要点に絞った responses
technical 詳細で正確な技術専門家
creative 革新的で、枠にとらわれない発想
teacher 明確な例を示す、忍耐強い教育者
kawaii かわいい表現、きらめき、熱量
catgirl 猫のような表現をする Neko-chan
pirate Captain Hermes、技術に強い buccaneer
shakespeare 劇的な趣のある吟遊詩人的な prose
surfer ゆるい bro vibes
noir hard-boiled detective narration
uwu uwu-speak 全開の最大級のかわいさ
philosopher すべての query に深い思索で応える
hype MAXIMUM ENERGY

config.yaml 内のカスタムパーソナリティ:13

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 は基準となる voice です。/personality はセッションレベルの overlay です。13 実用的なデフォルトの SOUL.md を保ちつつ、個別指導の会話では /personality teacher、brainstorming では /personality creative を使いましょう。


Nous Tool Gateway(v0.10.0+)

Hermes Agent v0.10.0(2026年4月16日)以降、有料の Nous Portal subscribers は、既存の Portal credentials を通じて、キュレーションされた tool 群への managed access を利用できます。追加の API keys を管理する必要はありません。21 Hermes CLI 自体は引き続き MIT ライセンスで、完全に open source です。変わったのは、Portal auth によって model inference 以外もアンロックされるようになった点です。

gateway に含まれるもの

Tool Provider 用途
Web search Firecrawl 新しい情報が必要な agents 向けの retrieval
Image generation FAL / FLUX 2 Pro FAL key を設定せずに inline で画像を生成
Text-to-speech OpenAI TTS messaging gateways での音声出力
Browser automation Browser Use Headless navigation と scraping

仕組み

gateway は、新しい use_gateway config field によってツールごとに opt-in します。hermes auth に Portal credentials があり、かつ tool の gateway を有効にしている場合、その tool の calls は Portal 経由で route されます。それ以外の場合は、直接の API key(存在する場合)が使われます。

# 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 precedence: gateway が利用可能で、tool に use_gateway: true が設定されている場合、直接の API key も設定されていても、Hermes は gateway を優先します。これは billing に関係します。gateway calls は直接の API key の balance ではなく、Portal subscription から消費されます。

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 command はありません。subscription は、hermes auth にすでにある Portal OAuth credentials から自動検出されます。

価格とアクセス

価格と tier 名は Nous Portal の pricing page(https://portal.nousresearch.com/pricing)で公開されています。このガイドでは tiers を列挙しません。tiers は Hermes CLI ではなく Portal product の責任範囲であり、Hermes releases とは独立して変更されるためです。https://portal.nousresearch.com/ で登録し、現在の tiers は pricing page で確認してください。

非推奨のお知らせ

  • HERMES_ENABLE_NOUS_MANAGED_TOOLS env var は v0.10.0 で削除されました。managed tools は現在、tool ごとの use_gateway config field で有効化され、Portal subscription state によって gate されます。21

位置づけ: このリリースが そうではない もの

Hermes Agent CLI はsubscription の背後に gate されていません。プロジェクトは引き続き MIT ライセンスで、すべての core features(CLI、skills、memory、messaging gateway、cron、MCP、local dashboard、すべての provider の BYOK)は、誰にも支払わず end-to-end で動作します。v0.10.0 は、すでに Nous Portal に支払っている users 向けに便利な path を追加するものです。無料 path から何かを取り除くものではありません。


Messaging Gateway

Hermesは、単一のgatewayプロセスから22のmessaging platformsに接続する長時間稼働のgatewayプロセスとして実行できます。対応するのは、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サポート、さらにenterprise apps向けのWeCom callback modeが追加されました。16 v0.11.0ではQQBotが追加されました。20 v0.12.0ではMicrosoft TeamsとTencent Yuanbaoが追加されました。17 v0.13.0では20番目のplatformとしてGoogle Chatが追加され、同じプラグ可能なアダプターアーキテクチャに乗っています。IRCとMicrosoft Teamsも、新しいアダプターパターンへ移行され、汎用のenv_enablement_fn / cron_deliver_env_var plugin hooksに対応しました。18 v0.14.0ではLINEとSimpleX Chatが追加され、Microsoft TeamsスタックもGraph auth、webhook listener、pipeline runtime、outbound deliveryまでエンドツーエンドで完成しました。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)

インタラクティブなセットアップでは、各platformへの接続を順に進められます。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

すべてのmessaging platformは、CLI と同じAIAgent conversation loopを通ります。 そのためslash commandsはどちらでも同じように動作し、Telegramでスケジュールしたcron jobの出力をDiscordへ配信できます。platformの違いは、あくまでエッジ部分にあるだけです。3

ユーザー認可とPairing

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

Pairing codesにより、見知らぬ第三者がgatewayに話しかけることを防げます。ユーザーはmessaging platformからpairing codeを送信し、hermes pairing approveで承認します。以後、そのユーザーは認可済みになります。6


Scheduled Tasks (Cron)

Hermesには、shell commandsではなくagent tasksとして扱うファーストクラスのcronシステムがあります。各scheduled jobは、設定されたprompt、任意で添付されたskillsを持つ新しいAIAgentを通じて実行され、結果を任意のplatformへ配信します。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

または、messaging chat内で会話しながら作成できます。

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

agentはツールを使ってcron jobを設定します。JobsはJSONに永続化され、再起動後も残ります。3


MCP Integration

Hermesは、Model Context Protocolをclientとしてもserverとしてもサポートしています。6

clientとして — Hermesを外部のMCP serversに接続し、tool surfaceを拡張できます。

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 conversationsを他のagentsに公開できます。

hermes mcp serve
hermes mcp serve -v    # Verbose

Context Compression

Hermesは、長いconversationsを自動的に圧縮し、modelの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 options:4

summary_provider summary_base_url Result
auto(デフォルト) 未設定 利用可能な最適providerを自動検出
nous / openrouter / etc. 未設定 そのproviderを強制し、そのauthを使用
any 設定済み カスタムendpointを直接使用(providerは無視)

summary_modelは、main model以上のcontext lengthをサポートしている必要があります。圧縮のためにconversationの中央部分全体を受け取るためです。4

Budget Pressure Warnings

agentが多くのtool callsを伴う複雑なtaskに取り組むと、自覚しないままiteration budget(デフォルト:90 turns)を使い切ることがあります。Budget pressureはmodelへ自動的に警告します。4

Threshold Level modelに表示される内容
70% Caution [BUDGET: 63/90. 27 iterations left. Start consolidating.]
90% Warning [BUDGET WARNING: 81/90. Only 9 left. Respond NOW.]

Stream Timeouts

LLM streaming connectionには、local providers(localhost、LAN IPs)向けに自動調整される2つのtimeoutレイヤーがあります。4

Timeout Default Local providers Env var
Socket read timeout 120s 1800sへ自動引き上げ HERMES_STREAM_READ_TIMEOUT
Stale stream detection 180s 自動無効化 HERMES_STREAM_STALE_TIMEOUT
API call(non-streaming) 1800s 変更なし HERMES_API_TIMEOUT

local LLMsでは、大きなcontextsで最初のtokenを生成する前のprefillに数分かかることがあるため、local endpointsではsocket read timeoutが30分に引き上げられます。4


Local Web Dashboard (v0.9.0+)

Hermes Agentをローカルで管理するためのブラウザベースのdashboardです。config filesやterminalに触れずに、設定の構成、sessionsの監視、skillsの閲覧、gatewayの管理ができます。16 hermes dashboardで起動します。GUIを好む新規ユーザーにとって、もっとも簡単なオンボーディング経路です。

Background Process Monitoring (v0.9.0+)

watch_patternsでは、background process outputを監視するpatternsを設定し、一致したときにリアルタイムで通知を受け取れます。16 エラーの監視、特定イベント(”listening on port”)の待機、build logsの監視を、pollingなしで行えます。v0.8.0のnotify_on_complete(background task完了時に通知)と組み合わせることで、Hermesには完全なbackground process observability layerが備わりました。15

Pluggable Context Engine (v0.9.0+)

Context managementは、hermes pluginsを通じてプラグ可能なslotになりました。agentが各turnで見る内容を制御するcustom context enginesに差し替えられます。filtering、summarization、domain-specific context injectionに対応できます。16 これによりcontext strategyがcore agent loopから切り離され、project別またはdomain別にcontextをカスタマイズできます。

Backup & Restore (v0.9.0+)

hermes backupは、config、sessions、skills、memoryを含む完全なarchiveを作成します。hermes importはbackup archiveから復元します。16 machines間の移行、大きな変更前のsnapshots作成、またはteam membersとの既知の正常なconfiguration共有に使用できます。

Termux / Android Support (v0.9.0+)

HermesはTermux経由でAndroid上にネイティブ実行できます。適応済みのinstall paths、mobile screens向けのTUI最適化、voice backend support、/image commandがon-deviceで動作します。16

セキュリティ強化(v0.13.0+)

v0.13.0では8件のP0セキュリティ問題が解消され、ユーザーに有利な形でデフォルト設定が1つ変更されました。18 v0.14.0ではさらに12件のP0と50件のP1が解消され、sudoブルートフォース / sudo-stdinの強化、危険なコマンドのバイパス修正、モデルへの再注入前のツールエラーサニタイズ、dashboard plugin API auth、skills-hub SSRF対応、インストール時のサプライチェーンアドバイザリスキャンなどが含まれます。19

修正 変更内容
Secret redaction default-on 以前はオプトインでした。明示的に無効化しない限り、ログとhermes debug shareのアップロードではシークレットが伏せ字になります。v0.12.0ではペイロード破損の報告を受けてデフォルトで伏せ字化が無効でしたが、v0.13.0ではより安全な基準として再び有効化されています。
Discord cross-guild DM bypass(CVSS 8.1) Discordのロール許可リストがギルド単位になり、あるギルドのユーザーロールによって全ギルドのDMが許可されてしまう経路が閉じられました。
WhatsApp default restrictions WhatsAppアダプターはデフォルトで知らない相手を拒否し、自分自身とのチャットには決して応答しません。
MCP OAuth TOCTOU window MCP OAuthフローで認証情報を保存する際の競合状態が解消されました。
CLI auth.json TOCTOU CLI authストアの認証情報 writer にあった同種のTOCTOU windowが解消されました。
Browser SSRF floor ハイブリッドルーティングでは、169.254.169.254や同等の宛先へ到達しようとするリクエストに対して、クラウドメタデータSSRFの下限防御が適用されます。
Cron prompt-injection scanning cronジョブの実行前に、読み込まれたskillコンテンツを含む組み立て済みプロンプトがプロンプトインジェクションの有無についてスキャンされます。
hermes debug share redaction debug shareのアップロードでは、書き込み時だけでなくアップロード時にもログ内容が伏せ字化されます。

Hermesのデプロイを維持している場合、v0.13.0とv0.14.0は単なる機能追加ではなく、セキュリティ上重要なアップグレードとして扱ってください。v0.13.0ではDiscord cross-guild bypassと2つのTOCTOU windowが解消され、v0.14.0ではsudo処理、ツールエラー再注入、plugin API、skills-hub SSRF、依存関係アドバイザリにまたがる追加の強化が入っています。


実務者のためのアーキテクチャ

このセクションは、内部で何が起きているかを理解し、デバッグ、拡張、パフォーマンス検討に役立てたい人向けです。上流のアーキテクチャドキュメントを統合した内容です。3

Entry Points → 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で有効なもの」です。有効なtoolsetはhermes tools --listで確認できます。個別のtoolsetは~/.hermes/config.yamltoolsets:ブロックで有効化または無効化できます(実行中のセッション内では/tools list / /tools enable <name> / /tools disable <name>も使えます。ツールを削除すると、agentがツールマニフェストを再構築するためセッションがリセットされます)。

3つのAPIモード

Hermesはプロバイダーごとの差異を3つのAPIモードに抽象化し、実行時に自動選択します。3

API mode 使用元
chat_completions OpenRouter, z.ai, Kimi, MiniMax, DeepSeek, Alibaba, ほとんどのカスタムエンドポイント、任意のOpenAI互換サーバー
codex_responses OpenAI Codex(ChatGPT OAuth経由)
anthropic_messages Anthropic API(native)、Anthropic OAuth、Anthropic互換プロキシ

runtime_provider.pyのresolverは、18以上のプロバイダーについて(provider, model)タプルを(api_mode, api_key, base_url)へマッピングし、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 identity。利用できない場合は組み込みフォールバック)
  2. ツールを意識した動作ガイダンス
  3. メモリ / ユーザーコンテキスト(MEMORY.md, USER.md
  4. Skillsガイダンス
  5. コンテキストファイル(AGENTS.md, .cursorrules
  6. タイムスタンプ
  7. プラットフォーム固有のフォーマットヒント
  8. /personalityなどの任意のシステムプロンプトオーバーレイ

SOUL.mdが土台です。それ以外のすべては、その上に積み重なります。13

セッションストレージ

FTS5全文検索を備えたSQLiteベースのセッションストレージです。セッションには系譜追跡(圧縮をまたぐ親子関係)、プラットフォームごとの分離、競合処理付きのアトミック書き込みがあります。3

Plugin System

発見元は3つあります。~/.hermes/plugins/(user)、.hermes/plugins/(project)、pip entry pointsです。Pluginはcontext APIを通じて、ツール、hooks、CLIコマンドを登録します。Memory providersは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

原則 実務上の意味
Prompt stability 会話の途中でsystem promptは変わりません。明示的なユーザー操作(/model)を除き、キャッシュを壊す変更はありません
Observable execution すべてのツール呼び出しは、callbackを通じてユーザーから見えます。進捗更新はCLI(spinner)とgateway(チャットメッセージ)で行われます
Interruptible API呼び出しとツール実行は、ユーザー入力またはsignalによって途中でキャンセルできます
Platform-agnostic core 1つのAIAgentクラスがCLI、gateway、ACP、batch、API serverに対応します。プラットフォーム差分はエントリーポイント側にあります
Loose coupling 任意のサブシステム(MCP、plugins、memory providers、RL environments)は、強い依存関係ではなくregistry patternとcheck_fn gatingを使います
Profile isolation 各profileは独自のHERMES_HOME、設定、メモリ、セッション、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ディレクトリも自動検出します)、~/.hermesへ書き込みます。6

直接インポートされるもの(30以上のカテゴリ): SOUL.mdMEMORY.mdUSER.mdAGENTS.md、4つのソースディレクトリからのskills、デフォルトモデル、カスタムプロバイダー、MCP servers、メッセージングプラットフォームのトークンと許可リスト(Telegram, Discord, Slack, WhatsApp, Signal, Matrix, Mattermost)、agent defaults(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.mdです。6

API key resolutionは、config values → ~/.openclaw/.envauth-profiles.jsonの優先順位で3つのソースを確認します。6


トラブルシューティング

“API key not set”

hermes model を実行してプロバイダーをインタラクティブに設定するか、hermes config set OPENROUTER_API_KEY your_key を実行してください。hermes 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 つあります。2

  1. サーバー側の出力上限が低いmax_tokens)— SGLang のデフォルトは応答あたり 128 トークンです。サーバー側で --default-max-tokens を指定するか、config.yamlmodel.max_tokens を設定してください。
  2. コンテキストの枯渇 — モデルがコンテキストウィンドウを使い切った状態です。model.context_length を増やすか、Hermes のコンテキスト圧縮を有効にしてください。

WSL2 から Windows 上のモデルサーバーへの接続で「Connection refused」

WSL2 は独自のサブネットを持つ仮想ネットワークアダプターを使用しているため、WSL2 内の localhost は Linux VM を指し、Windows ホストではありません。選択肢は 2 つあります。2

ミラーリングネットワーク(Windows 11 22H2 以降):%USERPROFILE%\.wslconfig を編集します。

[wsl2]
networkingMode=mirrored

その後 wsl --shutdown してから再起動してください。これで localhost が双方向で機能します。

ホスト IP のフォールバック(古い Windows 環境):WSL2 内から Windows ホストの IP を取得し、localhost の代わりに使用します。

ip route show | grep -i default | awk '{ print $3 }'
# その IP を base_url のホストとして使用

加えて、モデルサーバーは 127.0.0.1 ではなく 0.0.0.0 にバインドする必要があります。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 は config ファイルの場所を、hermes config env-path.env の場所を表示します。6


FAQ

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 key で Hermes を使えますか?

はい、3 つの方法があります。2

  1. ~/.hermes/.envANTHROPIC_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 を設定したが vision/web/compression が動作しない

補助モデルのフォールバックに引っかかっています。Vision、Web 要約、圧縮、その他のサイドタスクは別の補助 LLM を使用しており、デフォルトでは自動検出(OpenRouter → Nous → Codex)経由で Gemini Flash になります。これらが何も設定されておらず、Anthropic のみセットアップされている場合、これらの機能は静かに劣化します。4

修正方法:補助タスク用に OPENROUTER_API_KEY を追加するか、補助スロットをメインプロバイダーに使うよう再設定してください。なお、コンテキスト圧縮は独自のトップレベル compression: ブロックに置かれ、auxiliary.compression.provider ではなく summary_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、config、メモリ、セッション、ゲートウェイ PID を持ちます。6

hermes profile create work --clone
hermes profile use work                 # 固定デフォルト
hermes -p work chat -q "..."            # 切り替えずに単発実行
hermes profile alias work --name h-work # ラッパースクリプト

Hermes はローカル LLM に対応していますか?

はい、custom エンドポイント経由で対応しています。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 が有効で、どれが利用可能だが無効化されているかを確認できます。個別の toolset は実行時に /tools enable <name>/tools disable <name> で切り替えられます(無効化するとセッションリセットがトリガーされ、新しい構成でエージェントがツールマニフェストを再構築します)。

プライマリプロバイダーが失敗したとき、Hermes はどうモデルフォールバックを処理しますか?

config.yamlfallback_model ブロックを設定してください。2

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

プライマリが失敗した場合(レート制限、サーバーエラー、認証失敗)、Hermes は会話履歴を失うことなくセッションの途中でフォールバックに切り替えます。発動はセッションあたり最大 1 回までです。

エージェントは時間とともに自分のスキルを改善できますか?

はい — それが Hermes Agent の「self-improving(自己改善)」たる所以です。エージェントは skill_manage ツールを通じてスキルを作成、更新、削除できます。エージェントが自明でないワークフローを見つけ出すと、そのアプローチをスキルとして保存し、将来の再利用に備えます。11 エージェントは複雑なタスク(ツール呼び出し 5 回以上)を終えたあと、エラーに直面して動作する経路を見つけたとき、あなたがアプローチを修正したとき、または自明でないワークフローを発見したときにスキルを作成します。

IDE 統合はありますか?

はい — Hermes は VS Code、Zed、JetBrains 向けの ACP(Agent Client Protocol)サーバーとして動作します。6

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

変更履歴

日付 変更内容 ソース
2026-05-21 ガイド v1.6: v0.14.0(2026年5月16日)— The Foundation release を追加しました。見出し: インストールとランタイムの基盤を軽量化し、provider、gateway、メディア、検証まわりの対応範囲を拡大。grok-4.3 1M context 対応の SuperGrok OAuth、OAuth providers 向け OpenAI 互換 hermes proxy、第一級の x_searchpip install hermes-agent、lazy dependency installs、約19秒高速な起動、180倍高速な browser CDP calls、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、すべての write に対する LSP semantic diagnostics、統合 video_generate、非 Anthropic providers 向け cua-driver 経由の 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日)— The Tenacity release を追加しました。見出し: durable な multi-agent Kanban board(heartbeat、reclaim、zombie detection、hallucination gate、タスクごとの max_retries、multi-project boards)により、swarms を delegation pattern ではなく第一級の primitive にしました。/goal command は、ターンをまたいで agent を target に固定します(Ralph-loop pattern を slash command 化)。新しい video_analyze tool は Gemini-first で、compatible-model support を拡張可能です。voice cloning 対応の xAI Custom Voices TTS provider。CLI と gateway messages 向けの 7言語 i18n(zh-Hans、ja、de、es、fr、uk、tr)。docs は zh-Hans のみです。pluggable adapter pattern により、Google Chat を20番目の messaging platform として追加。IRC + Microsoft Teams も同じ pattern に移行しました。core changes なしで pluggable third-party providers を追加できる ProviderProfile ABC + plugins/model-providers/。gateway restart、/update、source-file reload をまたぐ Session auto-resume。single-store design、実際の pruning、disk guardrails を備えた Checkpoints v2 rewrite。8件の P0 security closures: secret redaction default-on、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日)— The Curator release を追加しました。見出し: gateway の cron ticker 上で動く autonomous background Curator(デフォルトは7日 cycle)が、skill library を rubric で評価し、dead skills を prune し、関連 skills を consolidate し、run ごとの reports を書きます。つまり 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 なしで自動更新されるようになりました。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-by-default に移行。 新しい 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 により、visible TUI cold start を約57%短縮しました。Security: payload corruption を防ぐため secret redaction はデフォルトで無効化。復旧不能な commands には hardline blocklist を適用。統計: 1,096 commits、550 merged PRs、213 community contributors。 17
2026-04-25 ガイド v1.3: v0.11.0(2026年4月23日)— The Interface release を追加しました。interactive TUI を React/Ink で全面 rewrite し、Python JSON-RPC backend(tui_gateway)を採用。sticky composer、OSC-52 clipboard support 付き live streaming、stable picker keys、ターンごとの stopwatch と git branch を表示する status bar、/clear confirm、light-theme preset、subagent spawn observability overlay を追加しました。Pluggable transport architecture — より整理された provider plumbing のため、format conversion と HTTP transport を agent/transports/ に抽出。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 は、別の API key なしで ChatGPT Codex OAuth から利用できるようになりました。QR-scan setup と streaming 対応の QQBot(17番目の messaging platform)Plugin surface expansion: slash commands、tool dispatch、execution blocking、result transformation。/steer <prompt> — 実行中の agent が次の tool call 後に見る note を注入する mid-run agent nudges です。turn を interrupt せず、prompt cache も壊しません。Shell hooks は、Python plugins なしで scripts を lifecycle hooks として接続します。Webhook direct-delivery mode は、fan-out のため agent を迂回して payloads を platform chat に直接転送します。orchestrator roles、configurable spawn depth、file coordination による Smarter delegationDashboard には 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 subscribers は、追加の 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 できます。direct API keys と gateway の両方が設定されている場合、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: 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)。製品説明(自己改善型エージェント、マルチプロバイダー、メッセージング gateway、ターミナルバックエンド、skill 進化、cron スケジューラー、委任)と、“Quick Install” のワンライナーの一次情報源です。 

  2. Nous Research、Hermes Agent ドキュメントの “AI Providers”。完全なプロバイダー一覧、プロバイダーごとの認証方式(Nous Portal OAuth、Codex デバイスコード、GitHub Copilot トークン種別、Anthropic の3方式認証、中国系 AI プロバイダー、Hugging Face ルーティング、カスタムエンドポイント)、3つの認証パス(.env の API キー、hermes model 経由の OAuth、config.yaml のカスタムエンドポイント)、/model slash command 構文(custom:name:model を含む)、Ollama/vLLM/SGLang/llama.cpp/LM Studio セットアップテンプレート、WSL2 ネットワーク手順、コンテキスト長検出チェーン、フォールバックモデル設定、スマートモデルルーティング、名前付きカスタムプロバイダーの一次情報源です。この投稿に含まれる、プロバイダー固有の環境変数名、トークン種別、ベース URL オーバーライド、モデル識別子はすべてこのページに基づいています。 

  3. Nous Research、Hermes Agent 開発者ガイドの “Architecture”。システム概要図、ディレクトリ構造、CLI セッションと gateway メッセージパスを通るデータフロー、3つの API モード(chat_completionscodex_responsesanthropic_messages)、runtime_provider.py によるプロバイダー解決、SQLite + FTS5 によるセッション永続化、メッセージング gateway のプラットフォーム一覧、プラグインシステムの検出ソース、profile 分離、6つのデザイン原則の一次情報源です。 

  4. Nous Research、Hermes Agent ユーザーガイドの “Configuration”。設定ディレクトリ構造、config.yaml.env のルール(「非シークレット設定では config.yaml が優先」)、設定の優先順位チェーン(CLI 引数 → env → config.yaml → .env → デフォルト)、コンテキスト圧縮設定(thresholdtarget_ratioprotect_last_nsummary_modelsummary_providersummary_base_url を含む compression.* ブロック)、予算圧迫しきい値(70% 注意、90% 警告)、ローカルプロバイダー自動調整付きのストリーミングタイムアウト、補助モデル設定ブロック全体(visionweb_extractapprovalcompressionsession_searchskills_hubmcpflush_memories スロットを含む auxiliary:)の一次情報源です。"main" プロバイダーを補助/圧縮/フォールバックスロットに制限する仕様もこのページに基づいています。 

  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 が含まれます。この投稿に含まれるすべてのサブコマンドフラグ、オプション説明、認証情報プールの挙動、ログフィルタリング構文、OpenClaw 移行フラグ、profile 管理コマンド、サービスインストールコマンドは、このページに基づいています。 

  7. Nous Research、Hermes Agent 入門ガイドの “Installation”。ワンラインインストーラーコマンド、インストーラーの挙動(前提条件、プラットフォーム対応、Termux 自動検出、Windows/WSL2 要件)、任意 extras の表、手動インストール手順、検証コマンドの一次情報源です。 

  8. Nous Research、“CLI Commands Reference” — 特に hermes dump セクションを参照してください。コマンドの出力形式(ヘッダー、環境、ID、モデル、ターミナル、API キー、機能、サービス、ワークロード、設定オーバーライド)と、診断情報共有のための用途が説明されています。 

  9. Nous Research、Hermes Agent 参照ドキュメントの “Slash Commands Reference”。この投稿に掲載しているすべての slash command、COMMAND_REGISTRY アーキテクチャ、CLI とメッセージングの分離、動的 skill slash command、config.yaml のクイックコマンド、プレフィックス一致の挙動、メッセージング専用コマンド(/status/sethome/approve/deny/update/commands)の一次情報源です。 

  10. Nous Research、Hermes Agent ユーザーガイドの “Tools & Toolsets”。ツールカテゴリ概要、toolset 使用コマンド、6つのターミナルバックエンド(local、docker、ssh、singularity、modal、daytona)、コンテナ設定(cpu、memory、disk、persistent)、コンテナのセキュリティ強化、バックグラウンドプロセス管理 API、sudo サポートの一次情報源です。 

  11. Nous Research、Hermes Agent ユーザーガイドの “Skills System”。プログレッシブディスクロージャー、SKILL.md 形式、プラットフォーム固有 skill、条件付き有効化(fallback_for_toolsetsrequires_toolsetsfallback_for_toolsrequires_tools)、skill_manage によるエージェント管理 skill、skill hub コマンドとソース一覧(officialskills-shwell-knowngithubclawhubclaude-marketplacelobehub)、セキュリティスキャンと信頼レベル、外部 skill ディレクトリの一次情報源です。 

  12. Nous Research、Hermes Agent ユーザーガイドの “Persistent Memory”MEMORY.md / USER.md の文字数制限、凍結スナップショットパターン、memory ツールのアクション(addreplaceremove)、保存すべきものとスキップすべきもの、memory とセッション検索の比較、8つの外部 memory プロバイダー(Honcho、OpenViking、Mem0、Hindsight、Holographic、RetainDB、ByteRover、Supermemory)の一覧の一次情報源です。 

  13. Nous Research、Hermes Agent ユーザーガイドの “Personality & SOUL.md”SOUL.md の挙動(HERMES_HOME に配置、上書きされない、システムプロンプトのスロット #1、取り込み前にセキュリティスキャン)、SOUL.md と AGENTS.md の違い、組み込み personality 一覧(helpful から hype までの14種類)、config.yaml のカスタム personality、/personality オーバーレイパターン、プロンプトスタック全体の組み立て順序の一次情報源です。 

  14. Nous Research、Hermes Agent ガイドと参照の “Use MCP with Hermes” および MCP Config Referencecommandargsenv フィールドを持つ config.yamlmcp_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、集中ログ、プラグインシステム拡張。 

  16. Hermes Agent v0.9.0 Release Notes。2026年4月13日。ローカル Web ダッシュボード、Fast Mode(/fast)、BlueBubbles 経由の iMessage、WeChat + WeCom、Termux/Android、バックグラウンドプロセス監視(watch_patterns)、xAI + Xiaomi MiMo ネイティブプロバイダー、プラグイン可能な context engine、統合プロキシサポート、セキュリティ強化(パストラバーサル、シェルインジェクション、SSRF、RCE の修正)、hermes backup/hermes import/debug + hermes debug share、対応プラットフォーム16種。487コミット、269件のマージ済み PR、24名のコントリビューター。 

  17. Hermes Agent v0.12.0 Release Notes。2026年4月30日。「The Curator release」。バックグラウンドで自律動作する Curator を追加し、gateway の cron ティッカー上でデフォルト7日周期で skill ライブラリを採点、刈り込み、統合します。自己改善ループを強化し、ルーブリックベースの採点、アクティブ更新バイアス、適切なランタイム継承、memory と skills に制限されたスコープ付き toolsets を導入しました。新しい推論プロバイダーは4つです: GMI Cloud、Azure AI Foundry、MiniMax OAuth、Tencent Tokenhub。LM Studio はファーストクラスに昇格しました。リモートモデルカタログマニフェストは、リリースなしで自動更新されます。新しいメッセージングプラットフォームは2つです: Microsoft Teams(19番目、プラグイン可能な gateway アーキテクチャ経由)と Tencent Yuanbao(18番目、ネイティブのテキスト + メディア)。PKCE OAuth によるネイティブ Spotify と同梱 skill、通話と文字起こし用の Google Meet プラグイン、Piper ローカル TTS プロバイダー。ComfyUI v5 + TouchDesigner-MCP はデフォルトで同梱されます。新しい skills: Humanizer、claude-design、design-md、airtable。CLI: hermes -z ワンショットモード、hermes update --check プリフライト、/reload-skills slash command、プラグイン可能なビジーインジケーターのスタイル。遅延初期化により TUI コールドスタートを約57%短縮。セキュリティ: シークレットのリダクションはデフォルトで無効化。復旧不能なコマンド向けの厳格なブロックリスト。v0.11.0 以降の統計: 1,096コミット、550件のマージ済み PR、213名のコミュニティコントリビューター。関連: v2026.4.30 release tag。 

  18. Hermes Agent v0.13.0 Release Notes。2026年5月7日。「The Tenacity release」。ハートビート、再取得、ゾンビ検出、ハルシネーションゲート、タスクごとの max_retries、複数プロジェクトボードを備えたマルチエージェント Kanban ボード。ターン横断の目標ロック(Ralph ループのプリミティブ)用 /goal slash command と、設定可能なターン予算。video_analyze ツール、Gemini ファーストで互換性のあるマルチモーダル拡張性。音声クローン対応の xAI Custom Voices TTS プロバイダー。7言語 i18n: zh-Hans、ja、de、es、fr、uk、tr(CLI + gateway メッセージ、ドキュメントは zh-Hans のみ)。汎用 env_enablement_fn / cron_deliver_env_var プラグインフックを備えたプラグイン可能アダプターパターンにより、20番目のメッセージングプラットフォームとして Google Chat を追加。IRC と Microsoft Teams も同じパターンへ移行しました。プラグイン可能なサードパーティプロバイダー向けに ProviderProfile ABC + plugins/model-providers/ を追加。gateway 再起動、/update、ソースファイル再読み込みをまたいだセッション自動再開。Checkpoints v2 は、実際の刈り込み、ディスクガードレール、孤立したシャドウリポジトリなしの単一ストアへ書き換え。8件の P0 セキュリティ修正: シークレットリダクションのデフォルト有効化、Discord のクロスギルド DM バイパス(CVSS 8.1、ロール許可リストをギルド単位に限定)、WhatsApp の見知らぬ相手のデフォルト拒否 + 自分自身とのチャットには応答しない、MCP OAuth 認証情報保存 TOCTOU、認証情報ライター内の CLI auth.json TOCTOU、ハイブリッドルーティングにおけるブラウザ cloud-metadata SSRF の下限設定、cron の組み立て済みプロンプトスキャン(skill コンテンツを含む)によるプロンプトインジェクション対策、hermes debug share のアップロード時ログ内容リダクション。その他の注目項目: Python/JSON/YAML/TOML の書き込み後 lint、cron no_agent スクリプト専用ウォッチドッグモード、Slack/Telegram/Mattermost/Matrix/DingTalk 横断のプラットフォーム許可リスト、MCP 強化(SSE トランスポート、OAuth 転送、MEDIA タグとしての画像結果)。v0.12.0 以降の統計: 864コミット、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コミット、633件のマージ済み PR、1,393ファイル変更、165,061行追加、545件の issue クローズ(12件 P0、50件 P1)、215名のコミュニティコントリビューター。grok-4.3 1M コンテキスト対応の SuperGrok OAuth、hermes proxyx_search、PyPI パッケージング、遅延依存関係、セッション横断1時間 Claude プロンプトキャッシュ、約19秒速い起動、180倍高速なブラウザ CDP 呼び出し、22のメッセージングプラットフォーム向け LINE と SimpleX Chat、/handoff、ネイティブ clarify ボタン、Discord 履歴バックフィル、raw-pixel vision_analyze、ターンごとのファイル変更検証フッター、LSP セマンティック診断、統合 video_generate、cua-driver computer_use、OSC8 リンク、Zed ACP Registry サポート、OpenRouter Pareto Code ルーター、NovitaAI、Codex app-server ランタイム、huggingface/skills、プラグイン ctx.llmtool_override、Brave/DDGS 検索、危険コマンドの強化、/subgoal、Qwen Cloud へのリネーム、ネイティブ Windows ベータ、合計16ロケール、広範なドキュメント/テスト更新を追加しました。 

  20. Hermes Agent v0.11.0 Release Notes。2026年4月23日。「The Interface release」 — インタラクティブ CLI を React/Ink で全面書き換えし、Python JSON-RPC バックエンド(tui_gateway)を採用。プラグイン可能なトランスポートアーキテクチャ(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、QR スキャン設定対応の17番目のメッセージングプラットフォーム QQBot、拡張されたプラグインサーフェス(slash command、ツールディスパッチ、実行ブロック、結果変換)、プロンプトキャッシュを壊さずに次のツール呼び出し後へコンテキストを注入する実行中エージェント調整用 /steer <prompt>、Python プラグインなしでライフサイクルイベントに対応するシェルフック、ペイロードをプラットフォームチャットへ直接転送する webhook ダイレクト配信モード、オーケストレーターロール + 設定可能な spawn depth + ファイル調整によるよりスマートな委任、ダッシュボードプラグインシステム、ライブテーマ切り替え、i18n、モバイル対応。v0.9.0 以降の統計: 1,556コミット · 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 統合 — 追加の API キーなしで、Firecrawl Web 検索、FAL / FLUX 2 Pro 画像生成、OpenAI TTS、Browser Use ブラウザ自動化へのマネージドアクセスを提供します。新しい use_gateway 設定フィールドにより、ツールごとにオプトインできます。直接 API キーと gateway の両方が設定されている場合、ランタイムは gateway を優先します。hermes toolshermes status に完全統合されています。非推奨の HERMES_ENABLE_NOUS_MANAGED_TOOLS 環境変数を置き換えます。実装は @jquesnelle(emozilla)。Hermes Agent CLI は引き続き MIT ライセンスの完全なオープンソースであり、gateway は既存の Portal サブスクリプション製品との統合であって、CLI へのペイウォールではありません。サブスクリプション料金と登録については Nous Portal も参照してください。 

NORMAL hermes.md EOF