Hermes Agent: Self-Hosted AI Assistant with Persistent Memory and Telegram
A real setup of Hermes Agent on a VPS with Telegram as the interface. What it took to install, what broke along the way, what it actually costs, and when it makes sense over a managed tool like Claude Projects.
A real setup of Hermes Agent on a VPS with Telegram as the interface. What it took to install, what broke along the way, what it actually costs, and when it makes sense over a managed tool like Claude Projects.
The problem
Claude Projects and ChatGPT Projects are useful, but they have a ceiling. Every session starts fresh unless you manually reload context. Claude Projects with a loaded .md file works, but you maintain that file manually. Hermes maintains its own memory autonomously. For a single question that is fine. For an assistant that handles recurring operational tasks across days and weeks, it means you spend time re-explaining the same things instead of just getting work done.
The other issue is availability. Managed tools run on someone else's schedule. Rate limits, outages, and interface changes are outside your control. If the assistant is part of your daily operations, that dependency matters.
An assistant that lives on your server remembers what it learns and works on your schedule, not a vendor's.
Hermes Agent is open source, MIT licensed, and runs on any VPS from about $5 per month.
| Setup time | Monthly cost | License |
|---|---|---|
| About 15 minutes from curl to first Telegram message | $5–7 VPS + $2–5 LLM tokens | MIT — Nous Research, first released May 2026 |
What Hermes actually is
Hermes Agent is an open-source autonomous AI agent built by Nous Research. It is not a chatbot wrapper and not a simple Telegram bot. It is a long-running process that lives on your server, remembers what it learns, runs tasks on a schedule, and gets more capable the longer you use it.
The key difference from Claude Projects or ChatGPT Projects: Hermes maintains its own memory autonomously. After you give it your business context once, it carries that forward across every session. You do not re-explain who you are, what you build, or what your stack looks like every time you open a chat.
- Persistent memory — Hermes writes structured memories after each session. Next time you start, it already knows your business, your tools, your clients, and your preferences.
- Skills layer — After completing a complex task, Hermes writes a reusable skill so it can handle the same task faster next time. The longer it runs, the more capable it becomes at your specific workflows.
- Scheduled tasks — Cron-based task runner built in. Set a morning digest, a weekly report, or a daily status check. It runs without any trigger from you.
- Tools out of the box — Web search, browser automation, file operations, code execution, image generation, and cross-platform messaging. Enabled at install, no plugins needed.
- Bring your own model — 20+ LLM providers supported: Anthropic, OpenAI, Google Gemini, DeepSeek, OpenRouter, Nous Portal, and more. Switch models in 30 seconds without reinstalling anything.
- Privacy by default — All data stays on your server. No telemetry, no usage tracking, no cloud lock-in. MIT license.
The setup
Installation runs through a single curl command. The installer auto-detects dependencies, installs Python 3.11 and supporting tools if they are missing, and walks through provider selection, platform configuration, and tool enablement via interactive menus.

The installer detects Ubuntu, installs missing dependencies automatically, and handles Python version management without manual setup.

Over 20 LLM providers available at setup. Nous Portal is the default, bundling 300+ models with tool use included.

Platform selection covers Telegram, Slack, Discord, WhatsApp, email, Signal, and more. Telegram was the choice here for daily operational use.

Tools enabled at setup: web search, file operations, code execution, persistent memory, cron jobs, cross-platform messaging, and task planning.

TTS is optional. Microsoft Edge TTS is free and needs no API key, a reasonable default for voice message support.

Installation complete. File paths are redacted. The next step is running hermes gateway install to set up the Telegram service.

The gateway runs as a systemd user service. Linger is enabled automatically so Hermes keeps running after SSH logout. No screen or tmux needed.

To lock Hermes to your account only, you need your Telegram user ID. @userinfobot gives it to you in one message.
What it does in practice
After setup, Hermes is reachable on Telegram. The first interaction is straightforward: send it your business context and it saves it to persistent memory.

First response after gateway setup. Hermes confirms it is running on the machine and lists what it can do.

Business context saved to memory on first session: name, business, tech stack, infrastructure, and client profile. This persists across all future sessions.

After deleting the chat and switching to a different model, Hermes recalled the full business context from memory on the first message. This is the key difference from a managed AI tool.
The memory-context screenshot above is the most important one. The chat was deleted, the model was changed, and Hermes came back knowing who the user is and what they build. That is persistent memory working as intended.
What did not work
DeepSeek was the first provider selected because of the low cost. It failed immediately with a provider error on every message. The gateway logs showed the API was returning empty responses. The actual reason turned out to be simple: the DeepSeek account balance was below $0.01, not enough to process even a test request.

Provider failure message in Telegram. The error handling is clean: Hermes surfaces the problem without exposing raw API details in the chat.

Root cause: less than $0.01 balance on the DeepSeek account. Switching to Google Gemini free tier resolved it immediately.
Two other things worth knowing before setup:
- The full setup wizard can loop back to the beginning if you navigate past the last step. There is no need to run through it again. Ctrl+C after the first pass exits cleanly and the configuration is already saved.
- A
uv.lockwarning appears during installation on some Ubuntu versions. It is not critical. The installer falls back automatically and everything continues.
Cost
- Hermes Agent — Free. MIT license, no subscription, no per-seat fee.
- VPS — About $5–7 per month on Contabo or a comparable provider. The same server can run n8n alongside Hermes without conflict.
-
LLM tokens — Google Gemini 2.5 Flash has a free tier, but its per-minute rate limit (RPM) is the real constraint. During active testing with short back-and-forth messages, the per-minute limit hits first, well before any daily cap. For heavier use, Claude Haiku or DeepSeek V3 costs around $2–5 per month at typical small business query volume.
The Gemini free tier RPM limit hit during testing well before the daily quota became a concern. When sending several short messages in a row, Hermes queues responses and then stalls until the per-minute window resets. For production use, a paid tier or a low-cost provider like Claude Haiku or DeepSeek V3 avoids this entirely.
If you are still deciding whether an AI agent is the right fit for your situation, the AI agents for business guide covers the difference between chatbots, automation workflows, and agents, and when each one makes sense.
When this makes sense vs Claude Projects
- Use Hermes when — You want the assistant to remember your business context permanently, run scheduled tasks automatically, stay available 24/7 on your own infrastructure, and work through Telegram without opening a browser.
- Use Claude Projects when — You need a capable reasoning assistant for occasional deep work, research, or writing tasks. Claude Projects is faster to start, requires no server, and is better suited for tasks where raw model quality matters more than persistence.
- Run both — Hermes handles daily operations and scheduled tasks through Telegram. Claude Projects handles heavier analysis and writing work in the browser. They cover different parts of the workflow and do not overlap.
Originally published on FloxoLab.
Editorial note: AI tools assisted with drafting and formatting. I reviewed the technical claims, examples, and sources before publication.
Originally published by Dev.to AI. Aggregated on AIWithGhost for educational purposes — full credit and traffic to the original publisher.