← All agent setup guides

CONFIGURATION, EXPLAINED

Hermes Agent Config: Models, API Keys & Tools

Read Hermes' YAML settings for providers, reasoning, terminal tools, compression, memory and MCP. Explanations stay beside the selected setting.

Official sources reviewed 2026-10-08One config · select a setting to read its explanation
~/.hermes/config.yaml

One continuous config. Click a line for its explanation. Commented lines show optional settings, alternatives or separate setup; the copy button includes active settings only.

YAML CONFIGSections are marked inside the codeSELECTED SETTINGOnly what you click is explained here
# ── Model & responses ──
model:

Model & responses

Select a built-in provider

model.provider

Chooses the model connection route.

In the main config~/.hermes/config.yaml
In this example
"openrouter" is the example value; it is not a universal recommendation.
If you leave it unset
Omission leaves this choice to the installed version, provider and higher-priority configuration.
When to change it
Use hermes model to select and authenticate an included provider.
What changes / what to watch
openrouter uses its API access; a Nous, Anthropic or Codex login is a different route.
Check that it worked
Reload the intended file or start a fresh session. Inspect the active model, tools or setting, then check one small task before relying on the change.
Official reference ↗

Copy keeps the parent structure. Merge it into the file shown above.

# ── Reasoning & run limits ──
agent:
# ── Terminal & execution ──
terminal:
# ── Context & memory ──
compression:
memory:
# ── Sessions & messaging ──
# ── Connection alternatives & separate-file setup ──
# ~/.hermes/config.yaml
# model:
# ~/.hermes/config.yaml
# providers:
# example:
# extra_body:
# ~/.hermes/config.yaml
# mcp_servers:
# docs:
Find an explained key & its source

SETTINGS AND OFFICIAL SOURCES

Explained settings index

This index covers the settings explained in this handbook. Follow the official sources for the complete schema, additional plugins and platform-specific options. The index is not a file to paste, and not every key is available in every client or scope.

34 of 34 documented entries · showing 30

Setup, troubleshooting & official sources

Where settings take effect

Nous Research Hermes Agent, reviewed revision dde8800ed91c. The active HERMES_HOME/profile determines config.yaml and .env. This example covers local agent configuration, not every messaging platform's credentials.

  1. Use hermes config or edit the active profile's config.yaml. Keep secrets in its .env or the launch environment; non-secret config values are not simply overridden by similarly named environment variables.
  2. Use hermes model to choose and configure a provider. Built-in routes include API providers and supported account login; Nous authentication can be configured through hermes auth add nous.
  3. Start a fresh session after changing model or terminal defaults. For MCP, inspect discovery and use the supported reload flow.

OFFICIAL AND THIRD-PARTY ACCESS

Choose how the agent connects.

Use one model-provider route per session. MCP connects tools and data; it does not replace model authentication.

Built-in provider

OpenRouter and other included provider routes.

Authentication
Provider API key or the route's documented account login.
Verify
Inspect the model picker and active provider.
Open annotated setup →

Direct Anthropic

Native Anthropic adapter.

Authentication
ANTHROPIC_API_KEY in the active environment.
Verify
Remove a stale router URL and verify the direct model ID.
Open annotated setup →

Custom gateway or local server

Named providers map in config.yaml.

Authentication
key_env, a documented credential helper or local-server authentication.
Verify
Select the named route and check its transport and model.
Open annotated setup →

MCP tools

mcp_servers in config.yaml.

Authentication
The tool server's own credentials.
Verify
Inspect tools after connection.
Open annotated setup →

AFTER YOU EDIT

Check the effective settings.

  1. Validate YAML indentation and confirm the active profile before editing.
  2. Verify the selected provider, exact model and credential route in a fresh session.
  3. Run a harmless terminal task and inspect its actual host/directory; local does not mean sandboxed.
  4. Check memory and compression behavior with the selected model's real context limit.

Documentation-based examples. No live model calls or measured cost savings are claimed.

COMMON QUESTIONS

A few useful distinctions.

Is terminal.timeout a task budget?

No. It bounds terminal execution, while agent.max_turns limits loop iterations. Neither is a hard money cap.

Where do sampling and output limits go?

Use only the installed adapter and upstream model's documented controls. The custom gateway's extra_body is conditional; Hermes' ordinary config does not expose every API parameter as a top-level key.

Official sources

Checked 2026-10-08. Follow the documentation for your installed version and selected model.

Back to the Hermes profile →