What is Hermes Agent in 2026, and how does it differ from OpenClaw?
Hermes Agent is the MIT-licensed autonomous agent Nous Research shipped in 2026: a long-lived process that, after successful tasks, writes reusable paths into ~/.hermes/skills/ so repeat work can burn fewer tokens. Unlike a one-off ChatGPT browser tab, it behaves more like an engineer living on your machine—taking instructions from Telegram, running shell, retrieval, and repo edits in the background.
Compared with OpenClaw, OpenClaw centers on message-channel gateways and workspace files around the openclaw CLI. Hermes emphasizes a closed learning loop (self-evolving Skills), three memory layers (session history, MEMORY.md, USER.md), and MCP extensions. Next to LangGraph, CrewAI, and other multi-agent orchestration stacks, Hermes targets personal or small-team single-node assistants whose front door is one official install script—not a Python state machine you wire first.
This guide does not re-argue why you want 24/7 uptime (see the memory architecture article). It focuses on installing cleanly, configuring models, getting Telegram to answer, and keeping the service alive on a local Mac, a Linux VPS or WSL2 box, or a KVMNODE cloud Mac in production. Expect thirty to sixty minutes for a first clean pass on hardware you already own; add another hour if you are wiring Telegram groups, tightening allowlists, and validating launchd or systemd after a reboot.
Hermes is opinionated about where it lives: everything durable sits under ~/.hermes/, which makes backups straightforward but also means permissions and disk quotas on shared hosts matter. Treat that directory like application state, not disposable cache, especially once Skills start compounding.
PATH not refreshed: You run hermes immediately after install and see command not found—the shell never reloaded.
Missing API key: You skipped hermes setup or hermes model; the first chat returns API key not set.
Laptop sleep: Closing the lid kills Gateway; Telegram queues up while Skills on disk grow but compounding flatlines.
Group privacy mode: The bot only answers slash commands until you disable Group Privacy in BotFather—easy to mistake for a broken install.
Headless dependency gaps: A Linux server without --skip-browser or with system Python triggers repeated ModuleNotFoundError.
Pick a deployment plane first, then walk the six-step command sequence in section 04.
Where should Hermes Agent run? MacBook, VPS, or monthly Mac Mini?
The official install script is most battle-tested on macOS and Linux: it pulls uv, Python 3.11, Node.js 22, ripgrep, and ffmpeg, and clones into ~/.hermes/hermes-agent/. Pure API plus Gateway mode often fits 4 GB RAM; local models or browser automation Skills usually want 16 GB or more.
| Deployment plane | 24/7 availability | Official path completeness | Skill compounding | Monthly cost feel |
|---|---|---|---|---|
| Personal MacBook | Stops when lid closes (~60%) | High on macOS | Frequent interruptions | $0 hardware + ops anxiety |
| Raspberry Pi 4B 8GB | ~88% | Linux, no Metal | I/O bottleneck | One-time hardware |
| x86 VPS 4GB | ~99.5% | Linux, no Camoufox-style macOS Skills | Steadier | Usage-based billing |
| Monthly Mac Mini M4 | Datacenter SLA, ~100% | Highest (launchd + UMA) | Continuous accumulation | Fixed OpEx, return hardware anytime |
If you are EU-based and evaluating cloud placement, weigh latency to Telegram and your model provider against where ~/.hermes/ will reside. A VPS in another continent can be cheap yet add seconds per turn; a macOS node closer to your operators often feels snappier even at similar monthly cost.
Install tutorials answer whether it runs; platform choice answers how long it runs and whether Skills compound—production Telegram assistants usually deserve a dedicated macOS node.
One-line install and health checks: curl, doctor, setup
Official recommended install for macOS, Linux, WSL2, and Termux:
curl -fsSL https://raw.githubusercontent.com/NousResearch/hermes-agent/main/scripts/install.sh | bash source ~/.zshrc hermes doctor hermes --version
The script detects and installs uv, uses uv for Python 3.11 without sudo, installs Node.js 22, ripgrep, and ffmpeg, clones to ~/.hermes/hermes-agent/, adds hermes to PATH, and pulls the default Skills registry. Success often prints ✅ Hermes Agent installed at ~/.hermes.
On headless servers, skip the browser stack:
curl -fsSL https://raw.githubusercontent.com/NousResearch/hermes-agent/main/scripts/install.sh | bash -s -- --skip-browser
hermes doctor checks Python, Node, ripgrep, ffmpeg, PATH, API keys, and more. Configure models via the wizard or explicit commands:
hermes setup hermes model hermes config set OPENROUTER_API_KEY sk-or-xxxx hermes
Keys live in ~/.hermes/.env. Providers include Nous Portal, OpenRouter, Anthropic, OpenAI, GitHub Copilot, and Ollama. Validate in the local CLI before opening Gateway. A quick smoke test is three prompts: a shell task, a repo question, and a memory write—if all three succeed, Gateway failures are almost always channel config, not model auth.
Corporate networks sometimes block outbound GitHub raw URLs; mirror the install script internally or run from a machine with direct access, then rsync ~/.hermes/ to the target host. WSL2 users should run the installer inside the Linux distro, not PowerShell, so PATH hooks land in the right profile.
Tip: After upgrades, if you see missing config, run hermes config check && hermes config migrate. Do not invoke system Python directly—use ~/.hermes/hermes-agent/venv/bin/hermes.
Six steps to wire Hermes Agent to Telegram and keep it up 24/7
Create the bot: In Telegram, open @BotFather, run /newbot, save the token; use @userinfobot for your numeric user ID.
Gateway wizard: Run hermes gateway setup, choose Telegram, paste the token and TELEGRAM_ALLOWED_USERS.
Foreground test: Run hermes gateway, message the bot from your phone, confirm replies.
Install the daemon: On macOS hermes gateway install && hermes gateway start; on Linux sudo hermes gateway install --system.
Groups (optional): Disable Group Privacy in BotFather, remove and re-add the bot to the group; otherwise only slash commands work.
Cloud Mac handoff: For 24/7 plus macOS Skill paths, order a dedicated M4 at the order page, SSH in, run the same commands, and archive ~/.hermes/ before offboarding.
hermes gateway setup hermes gateway install hermes gateway start hermes gateway status journalctl -u hermes-gateway -f
When moving to the cloud, follow the 30-day migration checklist: back up skills, .env, and config.yaml, reinstall on the new node, restore the directory tree. After hermes gateway start, reboot once on purpose: if the service survives cold boot, you have a real 24/7 path—not merely a foreground process you forgot to detach.
Restrict TELEGRAM_ALLOWED_USERS even for internal bots. Pairing a token leak with an open allowlist turns a helpful assistant into a remote shell for strangers. Rotate the BotFather token if a laptop with ~/.hermes/.env was ever lost or imaged on shared hardware.
Sizing, Skill compounding, and quick error reference
Three numbers worth citing: ① the official installer pins Python 3.11 and Node 22, reserve about 1.5 GB disk including Skills cache, and plan 20 GB+ SSD if you run local models. ② Community reports show roughly 38% lower tokens on repeat tasks once Skills hit—only if the host stays online so compounding continues. ③ As of June 2026 the stable line is often v0.14.x; after trying v0.15 candidates, always run hermes config migrate.
| Error | Likely cause | Fix |
|---|---|---|
command not found | PATH | source ~/.zshrc |
API key not set | Model not configured | hermes model |
| Group chat silent | Privacy mode | Disable privacy in BotFather, re-invite bot |
dotenv missing | System Python | Use venv hermes |
Honest alternatives: a sleeping MacBook installs fine but cannot guard Gateway; a cheap Linux VPS runs Telegram but lacks macOS browser automation and Metal local inference; a Raspberry Pi struggles with SQLite session I/O and RAM on long threads. Renting a dedicated Mac Mini M4 from KVMNODE gives launchd supervision, unified memory for Gateway plus optional on-box models, and the same curl workflow over SSH—monthly OpEx lets you validate thirty days before buying hardware. That trade usually beats a laptop you open occasionally when Hermes is production staff, not a weekend toy.
Operational rhythm that works in the field: nightly disk check on ~/.hermes/, weekly hermes doctor after upstream releases, and a quarterly BotFather token rotation if the bot touched shared groups. Log growth lives beside episodic SQLite—plan snapshot space, not just the initial 1.5 GB installer footprint.
See pricing for tiers and help center for delivery, networking, and backup playbooks. When you are ready to commit uptime without capital expense, the order flow provisions an isolated M4 you can SSH the same afternoon.