Wiki · Start here

Installation on a VPS

From an empty server to a running agent — the practical route, including the pitfalls we hit ourselves.

✅ Verified 15 Oct 2026Source: official documentation →📋 Copy for your AI
⚠️
After you log in, the server does nothing by itself. No step happens automatically — the server simply waits for commands. You paste every command on this page into the terminal yourself (with the Copy button next to a command block, then Ctrl+V / Cmd+V) and press Enter. Work through steps 1 to 6 one at a time and always wait for the previous command to finish.

Why run it on a server

The agent runs on your own computer too, but it only shows its full value when it works all the time — collecting data at night, sending you a message in the morning, keeping its tools and notes at hand even when your laptop is closed. That is what a small server (VPS) is for.

The good news: an ordinary server is enough. No GPU, no big specs — the agent mostly talks to a model over the internet.

What you need

ItemEnoughNote
Server (VPS)1–2 cores, 2 GB RAM, 20 GB diskLinux, ideally Ubuntu 24.04
AccessIP address and a password or SSH keyArrives by e-mail after ordering
SystemUbuntu, Debian, Fedora, openSUSE, Alpine…A Raspberry Pi works too
Model accessAn account with a model providerSolved in step 4

Where to get a server: in Czechia try Wedos, vpsFree or Active24 (bank transfer or card), or Contabo / Hetzner abroad (card payment, usually cheaper). Prices change — check them before ordering; we compare them in Hosting for an AI agent. Look for "VPS" or "Cloud", not "web hosting": the agent needs its own system where it can install what it needs.

1. Order the server

Pick Ubuntu 24.04 LTS (the best-tested option), the smallest plan, and add an SSH key if you can — safer than a password. You will receive the IP address and credentials.

2. Log in and prepare the system

Type the first command — put in the IP address you received by e-mail — and press Enter:

# log in to the server $ ssh root@203.0.113.10

In this demo the command types itself and underneath you see what the server really prints back: the welcome message and a waiting cursor. The server runs nothing on its own, it just waits for the next command — click the window to replay the demo.

Now type the second command (paste it and press Enter again) to update the system:

# update the system $ apt update && apt upgrade -y

Then create your own user and work as that user, not as root:

# create a user (pick your own name) $ adduser hermes && usermod -aG sudo hermes
# switch to the new user and continue there $ su - hermes

Why not root? The agent keeps its configuration, keys and notes in its home directory. Run it as root and everything lands in root's home — and any mistake runs with root rights too. The official documentation advises against it.

3. Install the agent

You start the installation with a single command — paste it into the terminal and press Enter. The installer fetches the source and brings its own dependencies (Python, Node, ripgrep, FFmpeg), so a bare server needs no preparation:

# install (Linux, macOS, WSL2) $ curl -fsSL https://hermes-agent.nousresearch.com/install.sh | bash

It takes about a minute. Afterwards you must reload your shell environment — until you do, the system does not know the hermes command yet. This is the most common beginner mistake, and the easiest fix:

# reload the environment and check $ source ~/.bashrc$ hermes --version

Optionally run the environment check, which tells you what is still missing:

# installation check and recommendations $ hermes doctor

4. Choose a model and sign in

The agent needs a model — the brain that does the thinking. Two sensible routes:

# option A: one sign-in via Nous Portal (model and tools under one account) $ hermes setup --portal
# option B: pick a provider manually and paste an API key $ hermes model

For option B, get a key from your provider (e.g. Nous Research, OpenAI, Anthropic, Google, OpenRouter) and paste it into the approval form that opens. Choose a model with at least 64k tokens of context — smaller ones are rejected, as they could not handle the agent's tools and memory.

Not sure which providers you can pay for from Czechia and what it costs per month? We are preparing the page Choosing a model and paying from Czechia — meanwhile ask in our Discord community.

5. Your first conversation

Just type hermes — a terminal conversation opens. Give the agent tasks whose result you can easily verify:

# start the agent $ hermes

Try something like: "Check how much disk space is used and write it as a table." or "Find every file on the server larger than 100 MB." You will see the agent run commands itself and report back.

6. Keep it running after you close the window

The last step turns the agent into a service that comes back up after a reboot. That is what the gateway is for — the interface through which the agent receives messages (Discord, Telegram, e-mail) and runs in the background:

# set up and check $ hermes gateway setup$ hermes gateway status

Without root rights, enable the so-called linger so the service keeps running after you log out: sudo loginctl enable-linger $USER.

What we ran into (and the docs do not mention)

SituationFix
hermes: command not found right after installingThe shell environment is not loaded — run source ~/.bashrc (or log out and back in)
The installer reports a missing libatomic1Happens on minimal Debian/Ubuntu images; the installer asks for sudo itself — confirm it
The agent refuses to start because of the modelThe selected model has less than 64k tokens of context. Pick another one (hermes model)
Configuration changed after an updatehermes config check (what is new) and hermes config migrate (convert old values)
I want to move the agent to another serverhermes backup on the old one, hermes import on the new one — keys and memory included
Something brokeNever delete the data directory ~/.hermes/ "to fix it" — you would lose keys and notes. Repair the installation, not the data

Where next

← Back to the wiki