There’s a common misconception when first setting up Hermes Agent: that you need a middleware service like OpenRouter to connect it to Anthropic’s Claude models. This isn’t true because Hermes has a native Anthropic provider built in, and you can wire it directly to your sk-ant-… API key in just a few minutes.
The Misconception
Hermes Agent’s internal architecture uses different “API modes” depending on the provider. Most providers use the OpenAI chat_completions format, but Anthropic has its own messages format — and Hermes handles this natively with a dedicated adapter. This confused some users into thinking an OpenAI-compatible middleware was required. It isn’t.
The Setup
If you’re running Hermes on a remote server (like a home server or a small ARM board), the configuration lives entirely on that machine — not in any desktop client you use to connect to it. The steps are straightforward:
- SSH into your server
- Add your Anthropic API key to
~/.hermes/.env - Set
provider: anthropicand your preferred model in~/.hermes/config.yaml - Restart the Hermes process
Since Hermes typically runs as a detached background process rather than a systemd service in default installs, the restart is a simple kill <PID> followed by nohup hermes gateway run --replace &.
Verify It Works
Once restarted, type /model in your Hermes chat interface. It should reflect the new provider and model. A quick test message confirms the connection is live.
Why This Matters
Cutting out middleware means lower latency, one fewer API key to manage, and direct billing through your Anthropic account with full usage visibility. OpenRouter remains a great option if you regularly switch between models from different providers — but for Claude-only setups, going direct is simpler and cleaner.
Also see my article about setting up the SSH connection to your Hermes Installation on a Raspberry Pi




