Getting started with Hermes AI Agent
- Published on

If you've been following the open-source AI agent scene, you've probably heard the buzz around OpenClaw. But there's a newer contender worth your attention: Hermes Agent, an open-source, self-hosted AI agent built by Nous Research and released in early 2026 under the MIT license.
What sets Hermes apart is its built-in learning loop. Rather than starting from scratch every session, it creates reusable skills from experience, refines them as it uses them, and builds a progressively deeper model of who you are and how you work. It runs happily on a cheap VPS, your laptop, or a home server — and it reaches you through the chat apps you already use, like Telegram, Discord, Slack, WhatsApp, Signal, or plain old email.
In this guide, we'll go from zero to a working Hermes setup: installation, choosing a model provider, your first chat, and the features worth exploring next.
What You'll Need
- A machine running Linux, macOS, or Windows (native Windows works via a PowerShell installer; WSL2 is also supported, and there's even an Android/Termux path)
- An AI model to power it. Hermes is model-agnostic: you can use Nous Portal, Anthropic, OpenAI, Google, OpenRouter, AWS Bedrock, or even a local model through LM Studio, Ollama, or any OpenAI-compatible endpoint
- One important constraint: your model needs a context window of at least 64,000 tokens. Anything smaller will be rejected at startup, because multi-step tool-calling workflows need that working memory. Hosted frontier models clear this bar easily; if you run locally, configure your context size accordingly
Step 1: Install Hermes
The easiest route on macOS and Windows is the Hermes Desktop installer, downloadable from the official site. It sets up both the desktop app and the command-line tools.
If you prefer a CLI-only install, one command does it on Linux, macOS, WSL2, or Termux:
curl -fsSL https://hermes-agent.nousresearch.com/install.sh | bash
On native Windows, run this in PowerShell:
iex (irm https://hermes-agent.nousresearch.com/install.ps1)
Once the installer finishes, reload your shell (source ~/.bashrc or source ~/.zshrc) and you're ready.
Step 2: Choose Your Model Provider
This is the single most important setup decision, and Hermes gives you an interactive wizard for it:
hermes model
On a fresh install, hermes setup offers three modes:
- Quick Setup (Nous Portal) — OAuth login with no API keys to manage. One subscription covers hundreds of models plus the Tool Gateway (web search, image generation, text-to-speech, a cloud browser). The shortcut is
hermes setup --portal. - Full Setup — walk through every provider and option yourself, bringing your own API keys.
- Blank Slate — everything starts disabled except the bare minimum (model, file operations, terminal). Ideal if you want a tightly controlled agent and prefer to opt in to each capability explicitly.
Bring-your-own-key users have a huge menu: OpenRouter, Anthropic (API key or Max-plan OAuth), OpenAI, Google AI Studio, xAI, DeepSeek, Hugging Face, AWS Bedrock, Azure AI Foundry, GitHub Copilot, and many more. Configuration is refreshingly clean — secrets live in ~/.hermes/.env, everything else in ~/.hermes/config.yaml, and the CLI routes values to the right file automatically:
hermes config set OPENROUTER_API_KEY sk-or-...
hermes config set model anthropic/claude-opus-4.6
You can switch providers at any time with hermes model — there's no lock-in.
Step 3: Run Your First Chat
Time for the fun part:
hermes # classic CLI
hermes --tui # modern terminal UI (recommended)
You'll get a welcome banner showing your model, tools, and installed skills. Start with a prompt that's easy to verify, something like:
What's my disk usage? Show the top 5 largest directories.
Hermes doesn't just answer with text — it actually runs terminal commands on your behalf and reports real results. If the banner shows your chosen model, the agent replies without errors, and it can invoke a tool when needed, you're past the hardest part.
A few things worth knowing inside the chat:
- Type
/to see all slash commands:/help,/tools,/modelto switch models mid-conversation,/save, and even/personality pirateif you're feeling playful - Use
Alt+EnterorCtrl+Jfor multi-line input - If the agent is going off track, just type a new message and hit Enter — it interrupts the current task and pivots
Step 4: Verify Sessions Persist
Persistence is Hermes's whole selling point, so confirm it works before going further:
hermes --continue # or the short form: hermes -c
This should drop you right back into your previous conversation. If it doesn't, check hermes sessions list to see what was saved.
Step 5: Layer On the Good Stuff
The official advice is sound: don't add features until a plain chat works reliably. Once it does, here's what to explore.
Messaging platforms
This is where Hermes stops being a terminal tool and becomes a genuine assistant:
hermes gateway setup
The interactive setup connects Telegram, Discord, Slack, WhatsApp, Signal, Email, Microsoft Teams, or Home Assistant. A nice touch: conversations follow you across platforms — start on Telegram during your commute, pick up in your terminal at your desk.
Skills
Skills are on-demand instruction documents (simple SKILL.md files) that teach Hermes how to handle a specific task — deploying to Kubernetes, opening a GitHub PR, and so on. Hermes ships with a bundled catalog, and you can pull more from the community hub:
hermes skills browse
hermes skills search kubernetes
hermes skills install openai/skills/k8s
Every installed skill automatically becomes a slash command (/k8s deploy the staging manifest), and installs run a security scan first. Crucially, skills are loaded lazily: the agent only reads a skill's full content when a task calls for it, so a big library doesn't bloat every request. And thanks to the learning loop, Hermes also creates and improves skills from its own experience.
Sandboxing
Letting an AI run terminal commands deserves some caution. Hermes supports isolated execution backends:
hermes config set terminal.backend docker # run commands in a container
hermes config set terminal.backend ssh # run on a remote server
For an always-on setup, many users deploy Hermes on a small VPS and talk to it entirely through messaging apps.
When Things Break
Hermes ships with a diagnostic tool that should be your first stop:
hermes doctor
The most common gotcha is provider misconfiguration — if you get empty or broken replies, re-run hermes model and double-check your provider, model name, and auth. For custom endpoints, verify the endpoint works in a separate client before blaming Hermes.
Final Thoughts
The self-hosted agent space is moving fast, and Hermes Agent has carved out a distinctive position: fully open source, provider-agnostic, cheap to run, and — most interestingly — designed to improve with use rather than reset every session. The five-minute quickstart is real, but the payoff compounds over weeks as the agent accumulates skills and context about you.
Start small: install it, get one clean conversation working, hook up Telegram, and let it grow from there.
Useful links:
- Official docs: hermes-agent.nousresearch.com/docs
- GitHub: github.com/NousResearch/hermes-agent
- Skills Hub: agentskills.io