Back to all posts
Hermes AgentNous ResearchAI AgentsCLIMCP

Setting Up Hermes Agent: A Self-Improving AI Assistant That Lives in Your Terminal

September 4, 2026·4 min read
Setting Up Hermes Agent: A Self-Improving AI Assistant That Lives in Your Terminal

Most agent CLIs I've tried are a chat loop with some tools bolted on. Hermes Agent, built by Nous Research, is doing something different: it has a closed learning loop built in. It creates skills from what it does, improves them as it reuses them, and builds a model of who you are across sessions instead of starting from zero every conversation. MIT licensed, model-agnostic, and it runs from a terminal, Telegram, Discord, Slack, WhatsApp, Signal, or all of them at once through a single gateway process.

I set it up on my Mac this week. Here's what that actually involves, and what stood out.

Install is a single line

curl -fsSL https://hermes-agent.nousresearch.com/install.sh | bash

That's it for Linux, macOS, WSL2, and Termux. It handles Python, Node, and the rest of the toolchain for you. Windows gets a native PowerShell installer that skips WSL entirely, which is a nice touch, most agent tooling still assumes you're on Unix.

After install:

source ~/.zshrc
hermes

And you're in the TUI: multiline editing, slash-command autocomplete, streaming tool output, the works. It's a genuinely polished terminal interface, not a bare readline loop.

You're not locked into one model or one place to talk to it

hermes model switches providers with no code changes. OpenRouter, OpenAI, your own endpoint, or Nous's own Nous Portal, which bundles the model plus a tool gateway (web search via Firecrawl, image generation via FAL, TTS, a cloud browser) under one subscription instead of five separate API keys:

hermes setup --portal

The part I actually didn't expect: Hermes isn't tied to your laptop being open. Run the gateway, and you can talk to the same agent, same memory, same conversation history, from Telegram while it works on a cloud VM. There's also a desktop app (Hermes Desktop) if you want a native window instead of a terminal.

The learning loop is the actual differentiator

The features that matter most to me, coming from building agent systems myself:

  • Autonomous skill creation. After a complex task, Hermes can turn what it just did into a reusable skill, and that skill improves the next time it's used, compatible with the open agentskills.io standard.
  • Cross-session memory that isn't just a giant transcript. Agent-curated memory with periodic nudges to persist what matters, plus FTS5 full-text search over past sessions with LLM summarization for recall. It's closer to how I'd design memory for a production agent than the "stuff everything in context" approach most CLIs default to.
  • Subagents for parallel work. You can spawn isolated subagents for parallel workstreams, or write Python scripts that call tools via RPC, collapsing a multi-step pipeline into a single turn instead of burning context on every intermediate step.
  • Cron scheduling in natural language. Daily reports, nightly backups, weekly audits, described in plain English and delivered to whichever platform you're on.
  • Seven terminal backends. Local, Docker, SSH, Singularity, Modal, Daytona, Vercel Sandbox. Daytona and Modal hibernate when idle, so the always-on setup doesn't mean an always-billing VM.

What this means if you're evaluating it

If you've read my LangGraph post, you know I care about explicit state over implicit magic. Hermes's memory and skill system is more opinionated than a bare agent framework, it's making decisions about what to persist and when to nudge itself, and that's worth understanding before you hand it real responsibility, the same way I'd want a human-in-the-loop checkpoint before trusting any agent with an irreversible action.

That said, for a personal assistant that needs to remember context across weeks and reach me wherever I actually am, rather than just my laptop, this is the closest thing I've set up to what I described wanting in my Telegram and Claude post, except it's a complete, self-hosted system instead of something I had to wire together myself.