オープンソースのAIエージェント「Hermes Agent」が、LINEに正式対応しました。

Nous ResearchはLINE Messaging APIを通じてHermes Agentをボットとして動作させるアダプターを追加し、2026年5月10日に開発者のTeknium氏がXで発表しました。LINEは日本・台湾・タイで圧倒的なシェアを持つメッセージングアプリで、国内ユーザーにとって最も親しみやすいチャンネルがHermesで使えるようになります。

この記事でわかること:

  • Hermes AgentのLINE連携でできること
  • LINE Messaging APIチャンネルの作成手順
  • HermesへのLINE設定の追加方法
  • 遅延応答時の自動対処の仕組み
  • 利用前に知っておくべき制限事項

https://hermes-agent.nousresearch.com/docs/user-guide/messaging/line

Hermes Agentとは

GitHub上で145,000スターを超えるオープンソースのパーソナルAIエージェントです。Telegram、Discord、Slack、WhatsAppなど20以上のプラットフォームに対応しており、チャットで指示を出すだけでタスクを自律実行します。

今回のLINE対応により、対応プラットフォームがさらに拡充されました。ドキュメントには「LINEは日本・台湾・タイで主流のメッセージングアプリ。ユーザーがそこにいるなら、このチャンネルが最適な接続方法」と明記されています。

LINEチャンネルでできること

連携後は1対1チャット、グループチャット、マルチユーザールームのいずれからでもHermesに話しかけられます。1対1チャットではすべてのメッセージに応答し、グループやルームではアクセスを許可したIDのみが対象です。

テキスト・画像・音声・動画・ファイル・スタンプ・位置情報の受信に対応しています。返信はLINEの「リプライトークン」(受信後約60秒有効)を優先使用し、期限切れの場合はPush APIにフォールバックします。

設定手順

ステップ1:LINE Messaging APIチャンネルを作成する

LINE Developers Console でプロバイダーを作成し、その下に「Messaging API」チャンネルを追加します。「Basic settings」タブからチャンネルシークレットをコピーし、「Messaging API」タブの「Channel access token (long-lived)」で長期アクセストークンを発行します。同タブで「Auto-reply messages」と「Greeting messages」は無効化しておきます。

ステップ2:Webhookポートを外部公開する

LINE WebhookはパブリックなHTTPS URLを要求します。デフォルトポートは8646です。

# 本番環境推奨(URL固定)
cloudflared tunnel --url http://localhost:8646

# 開発用
ngrok http 8646

表示されたhttps://...のURLをメモします。

ステップ3:Hermesに設定を追加する

~/.hermes/.envに以下を追記します。

LINE_CHANNEL_ACCESS_TOKEN=取得した長期アクセストークン
LINE_CHANNEL_SECRET=チャンネルシークレット
LINE_ALLOWED_USERS=Uxxxxxxxxxxxxxxxx   # アクセスを許可するユーザーID(U始まり)
LINE_PUBLIC_URL=https://my-tunnel.example.com  # 画像・動画送信に必要

~/.hermes/config.yamlにはLINEを有効化する1行を追加します。

gateway:
  platforms:
    line:
      enabled: true

プラグインはplugins/platforms/line/に格納されており、設定ファイルを追加するだけで自動認識されます。コアコードの編集は不要です。

ステップ4:Webhook URLを設定する

LINE Developers ConsoleのチャンネルページでWebhook URLにhttps://<トンネルURL>/line/webhookを入力し、「Verify」をクリックします。200レスポンスが返れば成功です。「Use webhook」をオンに切り替えます。

ステップ5:ゲートウェイを起動してボットを友達追加する

hermes gateway

ログにLINE: webhook listening on 0.0.0.0:8646/line/webhookが表示されたら起動完了です。LINE Developers ConsoleのQRコードをスキャンしてボットを友達追加し、メッセージを送って動作確認します。

遅延応答への対処

LINEのリプライトークンは約60秒で失効するため、重いLLMを使うと期限切れになり有料のPush APIを消費してしまいます。

Hermesにはこれを自動で処理する仕組みがあります。LINE_SLOW_RESPONSE_THRESHOLD(デフォルト45秒)を超えてもLLMが応答中の場合、まずポストバックボタン付きのバブルをユーザーに送信します。

🤔 Still thinking. Tap below to fetch the answer when it’s ready.
[ Get answer ]

ユーザーがボタンをタップした時点で新たなリプライトークンが生成されるため、キャッシュされた回答を無料で届けられます。「Get answer」を押す前に返答が届いた場合はボタンが不要になるケースもあります。

この仕組みを正しく動かすには、ツール進捗の中間表示をオフにしておきます。

display:
  interim_assistant_messages: false
  platforms:
    line:
      tool_progress: off

制限事項

把握しておくべき制約が4点あります。

1. テキストバブルのサイズ制限 — 1バブルあたり5,000文字、1回の返信・Push送信につき最大5バブルまでです。長い回答は末尾が省略されます。

2. メッセージ編集不可 — LINE APIにはメッセージ編集機能がありません。ストリーミング応答は既存のバブルを更新するのではなく、新しいバブルを都度追加します。

3. Markdownは非対応**太字**# 見出しはLINE上では記号のままレンダリングされます。Hermesアダプターは送信前に自動でMarkdownを除去し、URLはラベル (URL)の形式に変換します。

4. タイピングインジケーターはDM専用 — LINEのAPI仕様上、グループチャットやルームでは入力中表示が使えません。1対1チャットのみで動作します。

まとめ

Hermes AgentのLINE対応は、日本語圏のユーザーがAIエージェントを日常的なメッセージ環境で動かすための実用的な選択肢です。セットアップは5ステップで完了し、遅延応答への自動対処やクロン通知配信にも対応しています。Markdown非対応やバブルサイズ制限はありますが、普段使いのLINEからタスクを依頼できる利便性は大きいです。

hermes updateコマンドで最新版に更新してからLINE設定を試してみてください。