Hermes vs OpenClaw: two open-source agents, one API key
Hermes and OpenClaw come up together whenever people pick an open-source agent, but they aren't really competitors. Use Hermes to write code; use OpenClaw to run in the background and handle chores. Both are model-agnostic, so a single FastMetal API key can drive both.
What each one does
Hermes, from Nous Research, is a coding agent that runs in your terminal. It's open source under MIT and ships a CLI and a TUI. You point it at a local repository and it reads, edits and runs the tests.
OpenClaw is a platform for always-on autonomous agents. It started in November 2025 as a personal project called Clawdbot and spread fast on GitHub after the rename. Its main interface is a messaging app, and it handles browser automation, shell commands, file management and API calls. Think less "pair programmer in your editor" and more "worker that's always on shift."
| Hermes | OpenClaw | |
|---|---|---|
| Main use | Coding | Always-on general tasks, computer use |
| Interface | Terminal (CLI / TUI) | Messaging apps and similar |
| License | Open source (MIT) | Open source |
| Config file | ~/.hermes/config.yaml | ~/.openclaw/openclaw.json |
| Models | Any compatible API | Any compatible API |
| MCP client | Yes | Yes |
| Cost | Only the model calls you make | Only the model calls you make |
Connect Hermes to FastMetal
Add FastMetal as a named provider in ~/.hermes/config.yaml:
providers:
fastmetal:
api: https://api.fastmetal.ai/v1
key_env: FASTMETAL_API_KEY
transport: chat_completions
default_model: anthropic-claude-sonnet-5
model:
provider: custom:fastmetal
default: anthropic-claude-sonnet-5
The key goes in ~/.hermes/.env as FASTMETAL_API_KEY=.... Mid-session, switch models with something like /model custom:fastmetal:qwen3.8-max.
The full walkthrough, and how the cost compares with a Codex subscription, is in Hermes Agent with FastMetal.
Connect OpenClaw to FastMetal
Add a custom provider under models.providers in ~/.openclaw/openclaw.json. FastMetal is OpenAI-compatible, so api is openai-completions:
{
"models": {
"providers": {
"fastmetal": {
"baseUrl": "https://api.fastmetal.ai/v1",
"apiKey": "${FASTMETAL_API_KEY}",
"api": "openai-completions",
"timeoutSeconds": 300,
"models": [
{
"id": "anthropic-claude-sonnet-5",
"name": "Claude Sonnet 5",
"input": ["text", "image"],
"contextWindow": 1000000,
"maxTokens": 64000
}
]
}
}
},
"agents": {
"defaults": {
"model": { "primary": "fastmetal/anthropic-claude-sonnet-5" }
}
}
}
Defining the provider isn't enough on its own. Each model you want has to be listed in the models array, and one has to be selected in agents.defaults.model.primary before OpenClaw will use it. You can also do the selection from the CLI:
openclaw models list
openclaw models set fastmetal/anthropic-claude-sonnet-5
Always-on agents and pay-as-you-go
This is the part that matters most in practice. An always-on agent like OpenClaw spends tokens while you aren't watching. It reacts to notifications, checks things on a schedule, and retries when something fails. On a subscription, overuse costs nothing extra; on pay-as-you-go, it goes straight to the bill.
FastMetal is prepaid, which makes this safe by construction: you can't be billed beyond the balance you've loaded. If the agent wanders into a loop, the damage stops there. An agent that runs unattended belongs on billing with a hard ceiling.
The other habit worth building is one model per role:
- Constant monitoring, classification and summarizing: a light model such as
deepseek-v4-flashorgemini-3.5-flash. - Work that needs judgment, like implementation and review:
anthropic-claude-sonnet-5,qwen3.8-maxoranthropic-claude-opus-5.
With the same key and only model changed, you span a price range of well over 10x. Current prices are on the models page.
Where people get stuck
- OpenClaw: forgetting to list the model. Adding the provider doesn't make its models selectable; each one needs an entry in the
modelsarray. - Hermes: leaving off
custom:.model.providermust becustom:fastmetal. Plainfastmetalisn't selected. - Permissions. Both agents really do run shell commands and touch files. Decide what they're allowed to reach before you leave one running.
- Empty balance. Requests are refused once the balance is used up. If an error is confusing, check your balance on the dashboard first.
Share tools between them with MCP
Hermes and OpenClaw are both MCP clients. Connect FastMetal's MCP server and either one can, without changing its main model, ask a second model for an opinion, compare several models, or generate images as tools. The setup is a URL and a key.
Bottom line
Hermes and OpenClaw aren't rivals so much as two different jobs: code goes to Hermes, background work to OpenClaw. Both are model-agnostic, so one FastMetal key covers both. Load a small balance and measure what a week or two of real use costs.
Setup guides are in the docs, including pages for Hermes and OpenClaw; models and prices are in the model catalog.