Where the money goes
Hermes itself is free and MIT-licensed; what you pay for is model usage with your provider (local models cost nothing per token). Every message carries a fixed overhead: the system prompt, your context files, the skills index, both memory files and the schemas for every enabled tool. On top of that comes the conversation history, tool output and any subagent work. Most cost surprises come from one of three places: a bloated fixed prompt, long sessions that keep re-reading history, or parallel delegation.
Measure before you change anything
- hermes prompt-size: works offline and shows a byte breakdown of the system prompt and tool schemas, i.e. your per-message baseline.
/usage: token consumption for the current session./insightsorhermes insights: token, cost and activity analytics; the tips page describes/insightsas covering the last 30 days./contextand/statusin the CLI: how full the context window is, and which model and provider you are on.
Shrink the fixed overhead
Because the fixed prompt is resent with every message, small reductions pay off quickly.
- Keep context files short; the docs point out they are injected into every message.
- Disable toolsets you don't use with
hermes tools, per platform. Each enabled tool adds schema text. For a single session,hermes chat --toolsets"web,terminal" loads only what you list. - Hide skills you don't need on a given platform with
hermes skills. - Keep memory consolidated rather than full of stale entries.
Protect the prompt cache
Providers that support prompt caching charge less to re-read an unchanged prefix. Hermes is built around that: memory and the skill index are frozen at session start precisely so the prefix stays stable. You undo that benefit when the prefix changes. The tips and FAQ name the culprits: switching models with /model, automatic provider fallback and credential rotation all invalidate the cache, so the next message re-reads the whole conversation at full input price.
An occasional switch is fine. On a long session, though, starting a fresh session on the other model can be cheaper than switching mid-stream, and delegating a subtask to a cheaper model avoids touching the main session's cache at all. The same logic applies to fallback: each switch costs a cache rebuild, so a flaky primary provider can quietly raise your bill.
Use cheaper models where quality matters less
Several background jobs can run on a cheaper model than your main one. Context compression uses auxiliary.compression.model (empty means the main model); the docs warn its context window must be at least as large as the main model's, or middle turns are dropped without a summary. Memory background review can also use a cheaper model under auxiliary.background_review. For delegation, delegation.model sets one worker model for every child, and the docs note parallel batches usually dominate a run's tokens.
For day-to-day work the tips suggest matching model to task: frontier models for complex reasoning and architecture, faster ones for formatting and boilerplate.
Put guardrails on runaway work
- Cap tool-calling loops per turn with agent.max_turns in config or --max-turns <N> on the command line.
- Leave delegation.max_spawn_depth at 1 and keep max_concurrent_children modest; depth and concurrency multiply.
- Use
/compresson long sessions, and/newat natural topic boundaries instead of one endless thread. - Ask the agent to write a script for batch file operations rather than running commands one at a time; the tips mention execute_code for this.
- Review scheduled jobs: an unattended job that runs hourly on a frontier model adds up quickly.
Related guides
- How to choose a model for Hermes Agent
- Hermes Agent subagents and delegation explained
- Hermes Agent rate limits and provider errors
- Hermes Agent forgets things mid-conversation
Primary sources
- Tips and Best Practices (official guide) (opens in a new tab)
- FAQ and Troubleshooting (official docs) (opens in a new tab)
- Configuration (official docs) (opens in a new tab)
- Fallback Providers (official docs) (opens in a new tab)
- Subagent Delegation (official docs) (opens in a new tab)
- CLI Commands Reference (official docs) (opens in a new tab)
Spotted something wrong or out of date? Tell us on X at @HermesWatcher (opens in a new tab) and we will fix it.
New Hermes Agent updates every day on X. Follow @HermesWatcher