Run Hermes on a VPS (step-by-step)
A simple, practical guide to getting Hermes up and running on a low-cost VPS, with the commands, the costs and the things that usually go wrong.
By Nick
On this page
Real screenshot or sketch goes here
YOUR AI AGENT RUNNING 24/7.
- About 15 minutes
- About $5–10 a month
- Intermediate
Before you start
Learn
What is a VPS?
Learn
What is an AI agent?
Running an AI agent on your laptop works right up until you close it. This guide moves it somewhere that never closes.
1. What is Hermes?
Hermes is an open-source AI agent that can use tools, remember information and work automatically in the background. Running it on a VPS means it stays online 24/7, even when your computer is off.
If either “agent” or “VPS” is unfamiliar, read what is an AI agent and what is a VPS first. They are five minutes each and the rest of this makes much more sense afterwards.
2. What you’ll need
- A VPS running Ubuntu. The cheapest tier is enough.
- A terminal on your own computer. Mac and Linux have one built in; on Windows use PowerShell.
- An API key for whichever model you want the agent to use.
3. Set up your VPS
Create the server, choose Ubuntu, choose the smallest size, and pick a location near you. You will be given an IP address and login details.
Connect to it:
ssh root@YOUR_SERVER_IP
The first thing to do on any new server is update it:
apt update && apt upgrade -y
4. Install Docker
Docker packages an application with everything it needs, so it runs the same way everywhere. It saves you a long afternoon of installing the right versions of things.
curl -fsSL https://get.docker.com | sh
Check it worked:
docker --version
If you see a version number, you are fine.
5. Run Hermes
Create a folder for the agent’s data so it survives restarts and updates:
mkdir -p /opt/hermes/data
Then start it:
docker run -d \
--name hermes \
--restart unless-stopped \
-v /opt/hermes/data:/data \
-e MODEL_API_KEY=your-key-here \
hermes:latest
Line by line: -d runs it in the background, --restart unless-stopped brings it back after
a reboot, -v connects the folder you just made to storage inside the container, and -e
passes in your API key.
Check it started:
docker ps
You should see one container with a status of “Up”.
6. Configure memory
By default the agent forgets between runs. Memory is the folder you mounted in the previous step: the agent writes notes there and reads them back on the next run.
Keep it small and specific. A memory full of everything is as useless as no memory at all, and it costs more, because all of it gets sent to the model each time.
7. Test it works
Give it a small job with an obvious right answer, something you can verify in a second. If that works, give it something slightly harder.
Watch what it is doing:
docker logs -f hermes
Press Ctrl+C to stop watching. That does not stop the agent, only the log view.
8. Useful tips
- Set a spending limit on your model provider account before leaving it running. An agent in a loop is an expensive agent.
- Give it the narrowest access that works. One folder, not your whole server.
- Check on it weekly at first. You will find out quickly whether it is doing anything useful or quietly failing.
- Write down what you changed. In three months you will not remember.
9. Next steps
Once it is running, the interesting question is what to give it. Start with one small, repetitive job you actually do, not the most impressive thing you can imagine. Boring and working beats ambitious and broken.
If you would rather have help setting this up for your own situation, that is what the work with me page is for.