Hermes Agent

Hermes Agent は Nous Research によるオープンソースの AI エージェントフレームワーク。端末(CLI)、メッセージングプラットフォーム(Telegram / Discord / Slack 等)、IDE(ACP 経由)で動作する。ユーザー U-2042 の研究・開発環境においてプライマリエージェントとして稼働中。

概要

特徴

  • スキルによる自己改善 — 複雑なタスクや発見したワークフローをスキルとして保存し、次回以降のセッションで自動読み込みする。スキルは蓄積され、エージェントがユーザーの環境に適応していく。さらに使用中にスキルが自動パッチされる(自己改善ループ)。
  • 永続メモリ — セッション間でユーザー情報・環境設定・学んだ知見を保持する。定期的なナッジ(nudge)で記憶を促す。プラガブルなメモリバックエンド(built-in / Honcho / Mem0 等)に対応。
  • セッション横断検索 — FTS5 全文検索 + LLM 要約により過去の会話から情報を検索可能(session_search ツール)。
  • マルチプラットフォームゲートウェイ — 同一エージェントが Telegram / Discord / Slack / WhatsApp / Signal / Email / Matrix / Home Assistant 等 15+ プラットフォームで動作。
  • プロバイダ非依存 — モデルやプロバイダをワークフロー途中で差し替え可能。複数 API キーのクレデンシャルプールで自動ローテーション。
  • プロファイル — 独立した設定・セッション・スキル・メモリを持つ複数 Hermes インスタンスを運用可能。
  • 拡張性 — プラグイン / MCP サーバ / カスタムツール / Webhook トリガ / Cron スケジューリング。
  • スケジュール自動化 — 組み込み cron スケジューラ。任意のプラットフォームに配信可能。
  • サブエージェント並列実行 — 隔離された子エージェントを spawn して並列タスクを実行。Python スクリプトからツールを RPC 呼び出し可能。

アーキテクチャ

プロジェクトの主要コンポーネント:

  • run_agent.py — AIAgent クラス(中核の会話ループ)
  • model_tools.py — ツールオーケストレーション
  • cli.py — HermesCLI クラス(対話型CLI)
  • hermes_state.py — SessionDB(SQLite + FTS5 セッションストア)
  • agent/ — エージェント内部(プロバイダアダプタ、メモリ、圧縮等)
  • tools/ — ツール実装(自動ディスカバリ via registry.py)
  • gateway/ — メッセージングゲートウェイ
  • plugins/ — プラグインシステム

利用可能モデル

Nous Portal, OpenRouter(200+モデル), NVIDIA NIM, Xiaomi MiMo, z.ai/GLM, Kimi/Moonshot, MiniMax, Hugging Face, OpenAI, Anthropic 等に対応。

関連項目