Hermes Agent Wiki 非公式・日本語wiki

Raft の設定

目次

Hermes は、ローカルの wake チャンネルブリッジを通じて、外部エージェントとして Raft につながります。アダプターはループバックの HTTP エンドポイントを立ち上げ、ブリッジから届く「中身のない起動ヒント」を受け取って、Hermes ゲートウェイのセッションパイプラインへ流し込みます。メッセージの読み書きはエージェントが Raft CLI で行い、アダプターはメッセージ本文にも配信カーソルにも一切触れません。


前提条件

  • External Agent を作成できる Raft ワークスペース
  • Raft CLI がインストール済みで、その External Agent のプロファイルにログインしていること
  • aiohttp — Python パッケージ(Hermes の [all] extras に同梱)

Raft の Agents メニューを開いて External Agent を作成し、セットアップカードの案内どおりに Raft CLI をインストールしてエージェントのプロファイルにログインします。エージェントを作成すると、ゲートウェイの起動に必要な環境変数と設定をまとめた Hermes 向けの手引きが Raft 上に表示されます。


セットアップ

~/.hermes/.env に次を追加します。

RAFT_PROFILE=your-agent-profile

これだけです。RAFT_PROFILE が設定されていればアダプターは自動的に有効になります。セッションごとのブリッジトークンを生成し、空いているポートを選び、ゲートウェイの起動時にブリッジの子プロセスを自動で立ち上げます。


しくみ

Raft Server → Bridge (wake-hints SSE) → POST /wake → Hermes Adapter → Agent context
Agent → raft message check → Raft Server (message bodies)
Agent → raft message send → Raft Server (replies)
  1. Raft サーバーが SSE でブリッジプロセスへ起動ヒントを送ります。
  2. ブリッジは各ヒントを POST /wake としてアダプターのループバックエンドポイントへ転送します。
  3. アダプターはブリッジトークンを検証し、ペイロードに中身が含まれていないことを確かめたうえで、起動通知を Hermes のセッションへ差し込みます。
  4. エージェントは起動通知を見て、Raft CLI でメッセージを読み、返信します。

起動時のペイロードは取り決めとして中身を持ちません。メタデータ(イベント ID、メッセージ ID、時刻)は運びますが、メッセージ本文・チャンネル名・送信者の情報は決して含みません。アダプターは、中身にあたるフィールド(textbodycontentmessages など)を含むペイロードを拒否します。


ブリッジ

アダプターは raft agent bridge を子プロセスとして自動的に起動し、エンドポイントの URL とトークンを渡します。ブリッジは指定されたプロファイルで Raft サーバーに接続し、起動ヒントの転送を始めます。ゲートウェイが終了すると、ブリッジも終了します。


環境変数

変数 説明 既定値
RAFT_PROFILE Raft エージェントのプロファイル slug。設定するとアダプターが自動で有効になります _(必須)_