hermes atlas
279·repos hermes·v0.21.5 ★ star this repo
handbook · install · linux

How to Install Hermes Agent on Linux

Ubuntu, Debian, Fedora, Arch — one command — plus the headless server and systemd service-user recipe. A platform page of the install guide, cross-checked against the official docs.

By Kevin Simback · Hermes Atlas maintainer · Updated 2026-10-12 · ~6 min read

TL;DR

One command on any supported distro. Linux (x86_64 and aarch64) is Tier 1; Nous tests on the latest Ubuntu, and the official matrix says "if your distro has glibc, systemd, and follows the Filesystem Hierarchy Standard, it's likely to work pretty well."

curl -fsSL https://hermes-agent.nousresearch.com/install.sh | bash
source ~/.bashrc
hermes              # start chatting

This guide covers Hermes Agent v0.21.5. On other platforms? See Windows, macOS, Raspberry Pi, or VPS.

Prerequisites

Per the official install docs: Git, plus curl and xz-utils (the installer downloads Node.js as a .tar.xz) — on Debian/Ubuntu that's sudo apt install git curl xz-utils. The desktop app additionally needs build-essential to compile native modules. Everything else the installer handles itself, with no sudo: uv, Python 3.11, Node.js 26 (existing Node 22.22+/24.11+/26+ is used as-is), ripgrep, and ffmpeg.

Install layout: per-user vs system-wide

InstallerCode lives athermes binaryData directory
Per-user (default)~/.hermes/hermes-agent/~/.local/bin/hermes (symlink)~/.hermes/
Root mode (curl … | sudo bash)/usr/local/lib/hermes-agent//usr/local/bin/hermes/root/.hermes/ or $HERMES_HOME

The root-mode FHS layout is for shared machines where one system install serves every user — per-user config (auth, skills, sessions) still lives under each user's own ~/.hermes/. For a personal machine, the per-user default is what you want.

Ubuntu Server, headless boxes, and systemd service users

Running Hermes as a dedicated unprivileged user — a hermes systemd service account, or any user without sudo — is officially supported. The only step on the install path that genuinely needs root is Playwright's Chromium system libraries. The recommended split:

  1. Once, as an admin: sudo npx playwright install-deps chromium.
  2. As the service user: run the regular installer. It detects the missing sudo and degrades gracefully — Chromium goes into the user's own Playwright cache. Headless and don't need browser automation at all? Add --skip-browser (and --skip-computer-use):
    curl -fsSL https://hermes-agent.nousresearch.com/install.sh | bash -s -- --skip-browser
  3. PATH: service accounts often lack ~/.local/bin on PATH — add it to the user's profile, or symlink the venv launcher into /usr/local/bin.
  4. Verify: hermes doctor should run cleanly. (A ModuleNotFoundError: dotenv means you're invoking the repo source file with system Python instead of the venv launcher — fix step 3.)
  5. Gateway at boot: a user-level service stops at logout until you enable lingering — sudo loginctl enable-linger <service-user>. hermes gateway setup offers to install the systemd user unit itself.

Doing this on a rented server? The VPS page adds sizing, the Docker alternative, and the security guidance for exposing anything publicly.

Distro notes

Updating

Hermes auto-detects how it was installed, and hermes update updates a git-installer layout in place (Docker installs update by pulling a new image instead — hermes update is intentionally unsupported there). hermes doctor shows the detected install method.

FAQ

How do I install Hermes Agent on Ubuntu?

curl -fsSL https://hermes-agent.nousresearch.com/install.sh | bash, then source ~/.bashrc. Ubuntu is the distro Nous tests against; on a fresh minimal image, install git curl xz-utils first.

Does the installer need sudo?

No for the core install — it's per-user under ~/.hermes/. Root is only needed once for Playwright's Chromium system libraries, and --skip-browser avoids even that.

Which distros are supported?

Latest Ubuntu and WSL2 are tested; anything with glibc, systemd, and FHS is expected to work — Debian, Fedora, Arch, openSUSE. Alpine (musl) doesn't fit that description.

Can I install from the AUR on Arch?

No — AUR installs are explicitly unsupported. Run the official installer on Arch instead.

How do I keep the gateway running on a server?

Install as a service user, run hermes gateway setup (systemd user unit), and sudo loginctl enable-linger <user> so it starts at boot and survives logout.

What about NixOS?

Tier 2 / best-effort — the official guide is extensive, but releases may break it. Docker or an FHS distro is the supported path.

Next: verify the install, pick a model provider, then the Skills Hub. Running on ARM or a rented box? Raspberry Pi and VPS build on this page.

Maintained by Kevin Simback · Part of The Hermes Handbook · Facts sourced from the official Hermes Agent docs · if this was useful, drop a ★ on the atlas repo →