Hermes
The always-on Matrix chat agent that responds across web, mobile, and messaging channels.
Hermes is the Matrix system agent: always running in the background, reachable across web chat, mobile, and connected messaging channels. It is distinct from the coding agents (Claude Code, Codex, OpenCode, Pi) that you install and launch from the Terminal.
Pick a model before using Hermes
Hermes is model-agnostic — it works with many LLM providers. Choose a model and add that provider's credential before Hermes can respond. Until a model is configured, Hermes shows as active but can't generate replies.
What Hermes is
Hermes fills the role of a persistent background agent that is always reachable. Coding agents are interactive: you open a terminal, launch the agent, and it runs for that session. Hermes is different — it stays alive across sessions and responds to messages without you having to start it each time.
Choose your model
Hermes runs on a main model for its core reasoning, plus a set of auxiliary models for specialized tasks (each defaults to your main model unless you override it). It is not tied to any single provider — it works with:
Nous Portal
300+ models via OpenRouter through a single Nous Portal subscription. The fastest way to get started.
Anthropic
Claude models, using your Anthropic API key or login.
OpenAI
GPT models with your OpenAI key.
Gemini models with your Google credential.
Custom endpoint
Point Hermes at any compatible model server with your own base URL.
Configure which model Hermes uses:
hermes model in a terminal for interactive setup, or /model <name> inside a chat. You can also run hermes setup --portal to use Nous Portal in one step.~/.hermes/config.yaml.For the full provider list and model slots, see the Hermes model configuration docs.
Before Hermes can respond
- A main model must be selected.
- The provider credential for that model must be set (API key, OAuth, or a custom endpoint).
Until both are in place, Hermes still appears as the system agent, room permissions and automation rules are still stored, and pending drafts stay visible — but it can't generate chat responses, drafts, or assistant results.
Where you talk to Hermes
Web shell chat
The chat surface built into the Matrix OS web shell. Start a conversation from any page.
Mobile
The Matrix OS mobile app surfaces the same Hermes conversation. Responses arrive even when the web shell is closed.
Messages
Connect Telegram or WhatsApp accounts and grant Hermes per-room access. See Messages for the privacy model.
What Hermes can do
Hermes can access shell, files, skills, and integrations — each gated by explicit owner permission. The default state is no access to any room or integration.
- Shell and files: requires the owner to grant terminal or file-browser access in the room permission settings.
- Skills: Hermes loads the Matrix skill pack at startup. Skills teach it how to build apps, use the design system, and navigate the project layout. See Matrix Skills.
- Integrations: assistant capabilities (calendar, email, summaries) require the owner to approve each capability in the Integrations panel. Hermes starts with no integration access.
- Messages: default-deny. Each room must have read and reply access explicitly granted. See Messages for per-room controls.
Hermes versus coding agents
| Hermes | Coding agents | |
|---|---|---|
| Always running | Yes | No — you start them per session |
| Reachable via messaging channels | Yes | No |
| Requires install | No | Yes (from Terminal menu) |
| Requires its own login | No | Yes (per-agent login) |
| Needs a model configured | Yes | The agent brings its own |
Coding agents are better for long interactive development sessions where you want a persistent terminal context. Hermes is better for background tasks, quick questions, and ambient access across web, mobile, and messaging. See Coding Agents for how to install and launch them.
How is this guide?