hermes-agent/website/docs/integrations/index.md
jani 3beef57825 docs: refresh stale platform/LOC/test counts; clarify gateway vs plugin platforms
AGENTS.md is the AI-assistant entry doc, so its counts get used as ground
truth. Several values had drifted, and the same drift had spread to a few
user-facing surfaces. Fixing all of them in one commit so the count claims
agree and clearly distinguish gateway-core from plugin-shipped platforms.

AGENTS.md:
- run_agent.py "~12k LOC" → "~14k LOC as of 2026-05-03" (actual 14,097)
- cli.py     "~11k LOC" → "~12k LOC as of 2026-05-03" (actual 12,043)
- tools/environments/ list now lists all 7 user-selectable terminal backends
  in canonical order, matching tools/terminal_tool.py:2214-2215
- gateway/platforms/ list adds yuanbao and wecom_callback; the 19 names
  match the user-facing list at website/docs/integrations/index.md
- plugins/ tree now mentions plugins/platforms/ (irc, teams)
- tests/ snapshot "~15k tests across ~700 files as of Apr 2026" →
  "~19k tests across ~890 files as of 2026-05-03"

User-facing count claims:
- hermes_cli/tips.py:195 — "19 platforms" → "21 messaging platforms" with
  IRC and Microsoft Teams added to the named list
- website/docs/index.md:49 — "6 terminal backends" → "7 terminal backends:
  ..., Vercel Sandbox" (also corrected by PR #19044; same edit content)
- website/docs/index.md:50 — "15+ platforms from one gateway" → "21+ messaging
  platforms (19 in the gateway, plus IRC and Microsoft Teams via plugins)"
- website/docs/integrations/index.md:83-85 — "15+ messaging platforms" → "19+",
  added yuanbao to the linked list. The surrounding text scopes it to "configured
  through the same gateway subsystem", so plugin platforms (IRC, Teams) are
  intentionally not in this list
- website/scripts/generate-llms-txt.py:205 — "15+ platforms" → "21+ messaging
  platforms — 19 native to the gateway plus IRC and Microsoft Teams via plugins"

LOC and date stamps follow the existing AGENTS.md "as of <date>" convention
(line 56 already used this pattern). Source of truth for the gateway count is
gateway/config.py:130-148 (PlatformID enum); plugin platforms live in
plugins/platforms/.

Out of scope:
- RELEASE_v0.9.0.md historical "16 platforms" claim (immutable history)
- userStories.json verbatim user quotes
- Programmatic count generation from gateway/config.py + plugin manifests
  is a worthwhile build-system change but separate from these content fixes
2026-05-05 13:45:47 -07:00

7.3 KiB

title sidebar_label sidebar_position
Integrations Overview 0

Integrations

Hermes Agent connects to external systems for AI inference, tool servers, IDE workflows, programmatic access, and more. These integrations extend what Hermes can do and where it can run.

AI Providers & Routing

Hermes supports multiple AI inference providers out of the box. Use hermes model to configure interactively, or set them in config.yaml.

  • AI Providers — OpenRouter, Anthropic, OpenAI, Google, and any OpenAI-compatible endpoint. Hermes auto-detects capabilities like vision, streaming, and tool use per provider.
  • Provider Routing — Fine-grained control over which underlying providers handle your OpenRouter requests. Optimize for cost, speed, or quality with sorting, whitelists, blacklists, and explicit priority ordering.
  • Fallback Providers — Automatic failover to backup LLM providers when your primary model encounters errors. Includes primary model fallback and independent auxiliary task fallback for vision, compression, and web extraction.

Tool Servers (MCP)

  • MCP Servers — Connect Hermes to external tool servers via Model Context Protocol. Access tools from GitHub, databases, file systems, browser stacks, internal APIs, and more without writing native Hermes tools. Supports both stdio and SSE transports, per-server tool filtering, and capability-aware resource/prompt registration.

Web Search Backends

The web_search and web_extract tools support four backend providers, configured via config.yaml or hermes tools:

Backend Env Var Search Extract Crawl
Firecrawl (default) FIRECRAWL_API_KEY
Parallel PARALLEL_API_KEY
Tavily TAVILY_API_KEY
Exa EXA_API_KEY

Quick setup example:

web:
  backend: firecrawl    # firecrawl | parallel | tavily | exa

If web.backend is not set, the backend is auto-detected from whichever API key is available. Self-hosted Firecrawl is also supported via FIRECRAWL_API_URL.

Browser Automation

Hermes includes full browser automation with multiple backend options for navigating websites, filling forms, and extracting information:

  • Browserbase — Managed cloud browsers with anti-bot tooling, CAPTCHA solving, and residential proxies
  • Browser Use — Alternative cloud browser provider
  • Local Chrome via CDP — Connect to your running Chrome instance using /browser connect
  • Local Chromium — Headless local browser via the agent-browser CLI

See Browser Automation for setup and usage.

Voice & TTS Providers

Text-to-speech and speech-to-text across all messaging platforms:

| Provider | Quality | Cost | API Key | ||----------|---------|------|---------| || Edge TTS (default) | Good | Free | None needed | || ElevenLabs | Excellent | Paid | ELEVENLABS_API_KEY | || OpenAI TTS | Good | Paid | VOICE_TOOLS_OPENAI_KEY | || MiniMax | Good | Paid | MINIMAX_API_KEY | || NeuTTS | Good | Free | None needed |

Speech-to-text supports six providers: local faster-whisper (free, runs on-device), a local command wrapper, Groq, OpenAI Whisper API, Mistral, and xAI. Voice message transcription works across Telegram, Discord, WhatsApp, and other messaging platforms. See Voice & TTS and Voice Mode for details.

IDE & Editor Integration

  • IDE Integration (ACP) — Use Hermes Agent inside ACP-compatible editors such as VS Code, Zed, and JetBrains. Hermes runs as an ACP server, rendering chat messages, tool activity, file diffs, and terminal commands inside your editor.

Programmatic Access

  • API Server — Expose Hermes as an OpenAI-compatible HTTP endpoint. Any frontend that speaks the OpenAI format — Open WebUI, LobeChat, LibreChat, NextChat, ChatBox — can connect and use Hermes as a backend with its full toolset.

Memory & Personalization

  • Built-in Memory — Persistent, curated memory via MEMORY.md and USER.md files. The agent maintains bounded stores of personal notes and user profile data that survive across sessions.
  • Memory Providers — Plug in external memory backends for deeper personalization. Eight providers are supported: Honcho (dialectic reasoning), OpenViking (tiered retrieval), Mem0 (cloud extraction), Hindsight (knowledge graphs), Holographic (local SQLite), RetainDB (hybrid search), ByteRover (CLI-based), and Supermemory.

Messaging Platforms

Hermes runs as a gateway bot on 19+ messaging platforms, all configured through the same gateway subsystem:

See the Messaging Gateway overview for the platform comparison table and setup guide.

Home Automation

  • Home Assistant — Control smart home devices via four dedicated tools (ha_list_entities, ha_get_state, ha_list_services, ha_call_service). The Home Assistant toolset activates automatically when HASS_TOKEN is configured.

Plugins

  • Plugin System — Extend Hermes with custom tools, lifecycle hooks, and CLI commands without modifying core code. Plugins are discovered from ~/.hermes/plugins/, project-local .hermes/plugins/, and pip-installed entry points.
  • Build a Plugin — Step-by-step guide for creating Hermes plugins with tools, hooks, and CLI commands.

Training & Evaluation

  • RL Training — Generate trajectory data from agent sessions for reinforcement learning and model fine-tuning. Supports Atropos environments with customizable reward functions.
  • Batch Processing — Run the agent across hundreds of prompts in parallel, generating structured ShareGPT-format trajectory data for training data generation or evaluation.