Matrix OSMatrix OS

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.

Google

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:

Add a provider credential first — only providers you've authenticated are selectable.
Run 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.
Prefer editing config directly? Set your model in ~/.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

HermesCoding agents
Always runningYesNo — you start them per session
Reachable via messaging channelsYesNo
Requires installNoYes (from Terminal menu)
Requires its own loginNoYes (per-agent login)
Needs a model configuredYesThe 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?

On this page