ツールとは、エージェントの機能を拡張する機能 (または関数) のことです。これらは論理的なツールセットに整理されており、プラットフォームごとに有効化または無効化できます。
Hermesには、Web検索、ブラウザ自動化、ターミナル実行、ファイル編集、メモリ、委任、スケジュールタスク、ホームアシスタント, 等、幅広い組み込みツールが同梱されています。
Hermes エージェント☤ 入門 : 機能 – コア : ツール & ツールセット
作成 : Masashi Okumura (@classcat.com)
作成日時 : 07/22/2026
バージョン : Hermes Agent v0.19.0 (2026.7.20) — The Quicksilver Release
* 本記事は hermes-agent.nousresearch.com/docs の以下のページを参考にしています :
* サンプルコードの動作確認はしておりますが、必要な場合には適宜、追加改変しています。

Hermes エージェント☤ 入門 : 機能 – コア : ツール & ツールセット
ツールとは、エージェントの機能を拡張する機能のことです。これらは論理的なツールセットに整理されており、プラットフォームごとに有効化または無効化できます。
利用可能なツール
Hermesには、Web検索、ブラウザ自動化、ターミナル実行、ファイル編集、メモリ、委任、スケジュールタスク、ホームアシスタント, 等、幅広い組み込みツールが同梱されています。
ℹ️ Note : Honcho の セッション間メモリ 機能は、組み込みツールセットではなく、メモリプロバイダ・プラグイン(plugins/memory/honcho/)として提供されています。See Plugins for installation.
上位カテゴリー :
- (カテゴリー – 例 – 説明)
- Web – web_search, web_extract – Web を検索してページコンテンツを抽出します。
- X 検索 – x_search – xAI の組み込みの x_search Responses ツールを使用して X (Twitter) の投稿とスレッドを検索します – xAI 認証情報 (SuperGrok OAuth または XAI_API_KEY) で制限されています; デフォルトではオフになっています、`hermes tools → 🐦 X (Twitter)` からオプトインしてください。
- ターミナル, ファイル – terminal, process, read_file, patch – コマンドを実行し、ファイルを操作します。
- ブラウザ – browser_navigate, browser_snapshot, browser_vision – テキストと画像をサポートする、インタラクティブなブラウザ自動化機能。
- メディア – vision_analyze, image_generate, text_to_speech – マルチモーダルな分析と生成
- エージェント・オーケストレーション – todo, clarify, execute_code, delegate_task – 計画立案、明確化 (仕様確認, clarification)、コード実行、およびサブエージェントへの委任。
- メモリ & 想起 (検索, recall) – memory, session_search – 永続的メモリとセッション検索。
- 自動化 – cronjob – 作成/一覧表示/更新/一時停止/再開/実行/削除アクションを持つスケジュール・タスク。送信配信は – エージェントから呼び出し可能なツールではなく – cron 独自の配信機能、`hermes send` CLI、そしてゲートウェイ通知機能によって処理されます。
- 統合 – ha_*, MCP サーバ・ツール – ホームアシスタント、MCP、その他の統合機能。
公式なコード由来のレジストリについては、Built-in Tools Reference と Toolsets Reference をご覧ください。
ツールセットの使用
# Use specific toolsets
hermes chat --toolsets "web,terminal"
# See all available tools
hermes tools
# Configure tools per platform (interactive)
hermes tools
一般的なツールセットには、web, search, terminal, file, browser, vision, image_gen, skills, tts, todo, memory, session_search, cronjob, code_execution, delegation, clarify, homeassistant, messaging, spotify, discord, discord_admin, debugging, そして safe があります。
完全なセットについては、Toolsets Reference をご覧ください。これには、hermes-cli、hermes-telegram などのプラットフォーム・プリセットや、mcp-<server> のような動的 MCP ツールセットも含まれます。
ターミナルバックエンド
ターミナルツールは、さまざまな環境でコマンドを実行できます :
- (バックエンド – 説明 – ユースケース)
- local – ユーザのマシンで実行 (デフォルト) – 開発、信頼できるタスク
- docker – 隔離されたコンテナ – セキュリティ、再現性
- ssh – リモートサーバ – サンドボックス化により、エージェントを自身のコードから隔離する。
- singularity – HPC コンテナ – クラスタコンピューティング、ルートレス
- modal – クラウド実行 – サーバレス、スケール
- daytona – クラウド・サンドボックス・ワークスペース – 永続的なリモート開発環境
Configuration
# In ~/.hermes/config.yaml
terminal:
backend: local # or: docker, ssh, singularity, modal, daytona
cwd: "." # Working directory
timeout: 180 # Command timeout in seconds
Docker バックエンド
プロセス全体で共有される、永続的な 1 つのコンテナです。Hermes は初回使用時に単一の長期コンテナを起動し (docker run -d … sleep 2h)、すべてのターミナル、ファイル、および execute_code 呼び出しを docker exec 経由でその同じコンテナにルーティングします。作業ディレクトリの変更、インストールされたパッケージ、環境調整、および /workspace に書き込まれたファイルはすべて、Hermesプロセスの存続期間中、/new、/reset と delegate_task サブエージェントを介して、一つのツール呼び出しから次へと引き継がれます。コンテナはシャットダウン時に停止され、削除されます。
これは、Docker バックエンドがコマンドごとに新しいコンテナではなく、永続的なサンドボックス VM のように動作することを意味します。一度 `pip install foo` を実行すると、セッション中はそれが維持されます。`cd /workspace/project` を実行すると、以降の `ls` コマンドではそのディレクトリが参照されます。ライフサイクルの詳細と、/workspace および /root が Hermes の再起動後も保持されるかどうかを制御する container_persistent フラグについては、Configuration → Docker Backend を参照してください。
SSH バックエンド
セキュリティ上の理由から推奨されます — エージェントは自身のコードを変更できません :
terminal:
backend: ssh
# Set credentials in ~/.hermes/.env
TERMINAL_SSH_HOST=my-server.example.com
TERMINAL_SSH_USER=myuser
TERMINAL_SSH_KEY=~/.ssh/id_rsa
以上