Hermes Agent入門:インストール、最初の会話、カスタムOpenAI互換エンドポイント
Hermes Agent 0.21.3を使い、インストール、最小の会話、カスタムOpenAI互換エンドポイント、BazaarLink接続までを確認します。
Hermes Agent入門:インストール、最初の会話、カスタムOpenAI互換エンドポイント
Hermes Agentは、NousResearchが公開しているオープンソースのAIエージェントです。一度きりの質問に答えるだけでなく、会話、ツール、メモリ、skills、サブタスクを組み合わせて、少し長い作業を進められます。初めて使うなら、「作業ディレクトリを見て、結果を説明するチャット」と考えると分かりやすいでしょう。
この記事は公式ドキュメントと公式のリリース情報を2026-09-21に確認し、Hermes Agent 0.21.3を基準にしています。接続先の例には、公開モデル一覧で実在を確認したgemini-3.8-flashを使います。
1. Hermes Agentとは。何ができるのか
普通のチャットは、質問と回答の一往復が中心です。エージェントは、ファイルを読んだり、ターミナルを使ったり、長い会話を圧縮したりしながら、次の手順を決めます。Hermes Agentは、このような作業をCLIやTUIから始められるようにしたものです。session、永続メモリ、skills、Gateway、サブエージェントへの委譲も用意されています。
向いているのは、次のようなケースです。
- プロジェクトのファイルを調べ、コマンドを実行して結果を確認したい。
- 複数ターンの調査や整理で、前の文脈を残したい。
- 最初は自分のPCで使い、必要になったら常駐Gatewayやメッセージ連携へ広げたい。
ただし、インストールできたことと、モデルへ接続できることは別です。最初は短く、結果を目で確認しやすい作業から試します。
2. インストールして、最小構成で動かす
公式インストーラーは、Hermesに必要なPython、Node.js、ripgrep、ffmpegなどを準備します。Linux、macOS、WSL2、Android/Termuxでは次を実行します。
curl -fsSL https://hermes-agent.nousresearch.com/install.sh | bash
WindowsのPowerShellではこちらです。
iex (irm https://hermes-agent.nousresearch.com/install.ps1)
インストール後にシェルを読み直し、TUIを起動します。
source ~/.bashrc # zshなら source ~/.zshrc
hermes --tui
従来のCLIを使うならhermesだけでも構いません。最初の入力は、たとえば「現在のディレクトリで重要そうなファイルを3つ挙げ、理由を説明して」のようにします。公式quickstartの考え方どおり、通常のチャットが動いてからGateway、cron、skills、delegationを追加すると、どこで問題が起きたかを切り分けやすくなります。
Hermes Agentは、モデルに少なくとも64Kのcontextを要求します。短いデモだけでなく、ツールを使う作業を続けるなら、この条件を先に確認してください。
3. 設定:カスタムOpenAI互換エンドポイントを使う
通常の設定は~/.hermes/config.yaml、APIキーなどの秘密情報は~/.hermes/.envに置きます。カスタムエンドポイントの最小例は次のとおりです。
# ~/.hermes/.env
OPENAI_API_KEY=<BAZAARLINK_API_KEY>
# ~/.hermes/config.yaml
model:
provider: custom
default: gemini-3.8-flash
base_url: https://api.bazaarlink.ai/v1
api_mode: chat_completions
gemini-3.8-flashは、2026-09-21にBazaarLinkの公開モデル一覧から確認したIDです。表示名を想像で補わず、一覧のidをそのまま使います。設定をCLIから選びたい場合はhermes modelを使い、custom endpointを選んで同じモデルIDを入力します。
設定が反映されたかは、次で確認できます。
hermes config get model --json
hermes status
hermes --tui
圧縮、画像解析、delegationなどの補助タスクは、メインの会話が動いてから調整します。補助タスクにもprovider、model、base_urlを個別に設定できます。
2026-09-21実測(最小リプレイ): Hermesのcustom
chat_completions形状はAuthorization: BearerでPOST https://api.bazaarlink.ai/v1/chat/completionsを呼びます。純粋なテキスト対話は200、finish_reason=stopで通常のテキストが返りました。toolsとtool_choice: autoを加えたリクエストも200で、finish_reason=tool_calls、get_weatherと{"city":"Taipei"}が返りました。OpenAI互換のtool callについて、今回の標準的な終了理由を確認済みです。
stream: trueは200、SSEは5チャンクで、最後に[DONE]で終了しました。標準のtop-levelreasoning_effort: "low"も200でしたが、応答にはroleとcontentしかなく、構造化reasoningフィールドはありませんでした。したがってリクエスト欄が受理されたことは確認できますが、reasoning出力の完全互換性は未検証です。image_urlのdata URIによる画像入力は200で、モデルが画像を読み取って色を回答しました。この入力形状は2026-09-21に確認済みです。
GET https://api.bazaarlink.ai/v1/modelsは200で、一覧にgemini-3.8-flashがありました。defaultに既知のモデルIDを固定した生成は一覧に依存しませんが、Hermesのmodel picker、能力探索、モデル名なしの/model customでは/modelsを問い合わせることがあります。公式設定にはdiscover_modelsでこの動作を制御する欄もあります。Anthropic Messages形状をx-api-keyで/v1/messagesへ送ると200で、レスポンスはtype=messageでした。ただしこれはapi_modeを明示的に切り替えた場合の別経路で、Anthropic形式のツールとストリーミングの相互運用は未検証です。
4. よくあるつまずき
hermesが見つからない
まずシェルを再読み込みします。ユーザー単位のインストールでは、launcherが~/.local/bin/hermesに置かれることがあります。そこがPATHに入っているかを確認してください。
401や「モデルがない」エラーになる
.envのキーが実際の値になっているか、defaultが公開一覧のidと完全一致しているかを確認します。別のprofileや環境変数が設定ファイルを上書きしていないかも見ます。
設定を変えたのに、開いている会話が変わらない
既存のsessionは開始時のモデルを使い続けます。新しいsessionを開くか、会話中に/modelで切り替えてください。
ツールを使う作業だけ失敗する
まず小さいタスクに戻し、モデルのcontextが64K以上あるか確認します。自作エンドポイント側のtool、streaming、reasoningの対応は、モデル名だけでは判断できません。実際のレスポンスを確認してから設定を追加します。
応答がほとんど空で、finish_reasonがlengthになるのはなぜですか?
このモデルはデフォルトで思考を有効にしています。max_tokensが小さすぎると推論トークンで上限を使い切り、finish_reason=lengthになって表示テキストがほとんど残らないことがあります。max_tokensを増やしてください。実測では16から400に増やすと正常に出力されました。
5. BazaarLinkにつなぐ場合
上のcustom設定のbase_urlはhttps://api.bazaarlink.ai/v1にし、キーには<BAZAARLINK_API_KEY>を入れます。モデルIDは公開モデル一覧から選んでください。テキスト、tool call(finish_reason=tool_calls)、5チャンクのストリーミング、画像入力(モデルが画像を読み取って色を回答)の最小request shapeは2026-09-21に確認済みです。Anthropic形式のツールとストリーミングの相互運用は未検証として扱います。追加情報はSDKドキュメントを参照してください。
FAQ
Hermes Agentとは何ですか?
Hermes AgentはNousResearchのオープンソースAIエージェントで、CLI、TUI、ツール、メモリ、skills、session、delegationを提供します。
Hermes Agentの基準バージョンは?
2026-09-21に公式リリース一覧を確認した時点では、Hermes Agent 0.21.3を基準にしています。
カスタムOpenAI互換エンドポイントを使えますか?
はい。provider: custom、default、base_url、api_modeを設定できます。キーは.envに置き、記事やソースコードに固定値を書きません。
モデルのcontextはどのくらい必要ですか?
公式quickstartでは、Hermes Agentには少なくとも64Kのcontextが必要とされています。
BazaarLinkへの実際の生成リクエストは検証済みですか?
2026-09-21に最小リクエストでテキスト生成(finish_reason=stop)、tool call(finish_reason=tool_calls、get_weatherのcityはTaipei)、5チャンクのSSEストリーミング、画像data URI(モデルが画像を読み取って色を回答)、/v1/messages(type=message)を確認しました。Anthropic形式のツールとストリーミングの相互運用は未検証です。
応答がほとんど空で、finish_reasonがlengthの場合は?
このモデルはデフォルトで思考を有効にしています。max_tokensが小さすぎると推論トークンで上限を使い切り、finish_reason=lengthになって表示テキストがほとんど残らないことがあります。max_tokensを増やしてください。実測では16から400に増やすと正常に出力されました。