What Is Hermes Agent?
Hermes Agent is an open-source AI agent framework built by Nous Research (the team behind the Hermes model family). It runs on your own machine or server, connects to any LLM you choose, and can be reached through Telegram, Discord, Slack, WhatsApp, Signal, and more — 14 platforms total.
But what makes it genuinely different from the dozens of other agent tools out there is this: Hermes builds its own harness and improves itself over time. Every time you use it, it gets a little better at working with you specifically.
It's not a chatbot. It's not a code completion tool. It's an autonomous agent that can run shell commands, read files, browse the web, schedule tasks, delegate to sub-agents, and remember everything about how you work — across sessions, across platforms, across months of use.
The Five Core Mechanisms
1. The Learning Loop — It Gets Better Without You Teaching It
This is the heart of Hermes. After every task, it runs an automatic retrospective:
- What should I remember? → writes to memory
- Is this a recurring pattern? → creates a Skill
- Did the user correct me? → updates the Skill
You don't trigger this. It just happens. The first time you ask it to write a Python script, the output might be generic. By the tenth time, it knows you prefer httpx over requests, you like error logs written to files instead of printed to terminal, and you hate long functions. Nobody taught it any of that — it observed and extracted the patterns itself.
2. Three-Layer Memory — From Goldfish to Old Friend
Most AI tools forget you the moment you close the tab. Hermes has three memory layers:
- Session memory (SQLite + FTS5): Raw conversation history, full-text indexed. Hermes doesn't dump all of this into context — it searches by topic and pulls only what's relevant. Three months of use feels as fast as three days.
- Persistent memory: A small, curated profile — your preferences, habits, tool choices. This loads into every conversation automatically.
-
Skill memory: Markdown files that capture "how to do things" — your validated workflows, stored in
~/.hermes/skills/.
The key design choice: on-demand retrieval, not full-context loading. FTS5 full-text search means Hermes finds the right memory at the right time without bloating token usage.
Optional add-on: Honcho user modeling (by Plastic Labs) — a 12-layer dialectical identity system that infers things about you that you never explicitly said. Like noticing you always pick the cheapest option and inferring you're cost-sensitive, so next time it surfaces pricing info first.
3. Self-Evolving Skills
A Skill in Hermes is a standalone markdown file in ~/.hermes/skills/ — instructions for how to do something well. Skills come from three sources:
| Source | How it works |
|---|---|
| Bundled | 40+ pre-built Skills ship with installation |
| Agent-created | Hermes auto-creates Skills from recurring tasks |
| Community Hub | Install with one command |
The killer feature: Skills self-improve through use. Every time you give feedback ("next time check if the table exists first"), Hermes goes back and edits the Skill file. Next run, the improvement is baked in.
Skills follow the agentskills.io standard — they're portable across Claude Code, Cursor, Codex CLI, Gemini CLI, and more. A Skill you wrote for one tool works in another.
4. 40+ Built-in Tools + MCP
Five categories of native tools:
| Category | Examples | What they do |
|---|---|---|
| Execution | terminal, code_execution, file | Run commands (sandboxed), read/write files |
| Information | web, browser, session_search | Search, scrape, search conversation history |
| Media | vision, image_gen, tts | Understand images, generate images, text-to-speech |
| Memory | memory, skills, todo, cronjob | Manage memory, Skills, scheduled tasks |
| Coordination | delegation, moa, clarify | Sub-agents, multi-model answering, ask user |
Beyond the built-in tools, Hermes supports MCP (Model Context Protocol) — connecting to 6,000+ external apps. GitHub, Slack, Jira, databases, Google Drive — add a config block to config.yaml and it just works. You can also filter which tools each MCP server exposes for security.
5. Multi-Platform Gateway
One unified process connects to all your messaging platforms simultaneously. Start a conversation on Telegram during your commute, continue it in the terminal at your desk — Hermes doesn't distinguish where a message came from. Same brain, same memory, same Skills.
Supports: Telegram, Discord, Slack, WhatsApp, Signal, Email, SMS (Twilio), Home Assistant, Mattermost, Matrix, DingTalk, Feishu/Lark, WeCom, and Open WebUI.
How It Compares: Hermes vs Claude Code vs OpenClaw
These three tools aren't competing — they solve different problems.
| Dimension | Claude Code | OpenClaw | Hermes Agent |
|---|---|---|---|
| Core philosophy | Interactive coding | Configuration-as-behavior | Autonomous background + self-improvement |
| Your role | Sitting at the terminal directing | Writing config files | Deploy and check in occasionally |
| Memory | CLAUDE.md + auto-memory | SOUL.md + Daily Logs + semantic search | Three-layer self-improving memory |
| Skill source | Manually installed | ClawHub 5,700+ community | Agent-created + community Hub |
| Run mode | On-demand | On-demand | 24/7 background |
| Deployment | Local CLI (subscription) | Local CLI (free + API costs) | Self-hosted (VPS / Docker / Serverless) |
The practical way to think about it:
- Need real-time pair programming? → Claude Code
- Need transparent, auditable agent behavior for a team? → OpenClaw
- Need 24/7 automated code review, scheduled tasks, persistent memory? → Hermes
- Long-term content project? → Hermes for research + Claude Code for writing
They're complementary. The agentskills.io standard means Skills are portable between all three.
Getting Started: From Zero to Running in 15 Minutes
Step 1: Install
curl -fsSL https://raw.githubusercontent.com/NousResearch/hermes-agent/main/scripts/install.sh | bash
source ~/.bashrc
hermes version # verify
Works on macOS, Linux, WSL2, and even Termux on Android. The script handles Python, Node.js, and all dependencies.
Docker alternative:
docker pull nousresearch/hermes-agent:latest
docker run -v ~/.hermes:/opt/data nousresearch/hermes-agent:latest
Step 2: Configure a model
All configuration lives in one file: ~/.hermes/config.yaml
model:
provider: openrouter # or nousportal, openai, anthropic, ollama, etc.
api_key: sk-or-xxxxx
model: anthropic/claude-sonnet-4
terminal: local # or docker, ssh, daytona, modal
Supported providers include OpenRouter (200+ models with one key), Nous Portal (officially recommended), OpenAI, Anthropic, z.ai/Zhipu, and Ollama for fully offline local models.
Step 3: Start talking
hermes
That's it. Ask it to search the web, read files, run shell commands. It will ask for permission before executing anything potentially dangerous.
Step 4: Connect Telegram (optional but game-changing)
- Create a bot with @botfather in Telegram → get a token
- Add to
~/.hermes/config.yaml:
gateway:
telegram:
token: YOUR_BOT_TOKEN
- Run
hermes— it connects to the Telegram Gateway automatically
You now have a personal AI assistant reachable from your phone, anywhere in the world.
Step 5: Deploy to a VPS for 24/7 uptime
Any cheap VPS will do (Hetzner, DigitalOcean, Vultr — whatever you already use). Hermes is lightweight without a local LLM.
docker run -d \
--name hermes \
--restart unless-stopped \
-v ~/.hermes:/opt/data \
nousresearch/hermes-agent:latest
That's a 24/7 AI assistant with persistent memory, reachable from your phone.
What Makes It Actually Special
After spending a week with this, here's what I think the real differentiators are:
The harness builds itself. Other tools need you to write the rules (CLAUDE.md, SOUL.md). Hermes observes, learns, and writes its own rules. You can override anything, but the default is zero-config improvement.
Memory that actually works long-term. FTS5 on-demand retrieval means it doesn't slow down after months. Your data stays local in SQLite — no cloud vector database needed.
Everything stays on your machine. MIT license, self-hosted, any LLM you want. No vendor lock-in, no data leaving your server. A basic VPS runs it comfortably — memory usage is under 500MB without a local model.
Skills are portable. The agentskills.io standard means your investment in Skills isn't locked to one platform. Switch tools, keep your workflows.
It works when you're not there. Cron scheduling + Telegram gateway = an agent that reviews PRs at 2am, monitors your servers, drafts daily reports, and sends you the results over breakfast.
Limitations to Be Aware Of
-
No automatic memory expiration. The memory database only grows. You need to manually audit
~/.hermes/occasionally. - Skill self-improvement depends on feedback quality. Vague feedback ("this doesn't feel right") won't improve anything. Specific feedback works.
- Auto-generated rules can drift. The convenience of automatic improvement comes with the trade-off that you're giving up some control. Check your Skill files periodically.
- Community ecosystem is still young. OpenClaw's ClawHub has 5,700+ Skills from the lobster craze's network effects. Hermes's community is growing but isn't there yet.
Links
- GitHub: github.com/NousResearch/hermes-agent
- Docs: hermes-agent.nousresearch.com
- Learning guide: hermesagent101.dev
Happy to answer questions if anyone's tried it or is thinking about setting it up.
Top comments (0)
Some comments may only be visible to logged-in visitors. Sign in to view all comments.