Skip to content

Installation

Paco5687 edited this page Jul 14, 2026 · 5 revisions

Installation

You only install the hub once. Everything else (agents) is added from the dashboard — see Onboarding Hosts.

Requirements

  • One always-on Linux box for the hub (a NUC, Pi, spare PC, or VM).
  • curl (for the one-line installer). Nothing else — no Go toolchain needed.

1. Install the hub (one command)

Run this on your Linux hub box:

curl -fsSL https://raw.githubusercontent.com/Paco5687/autormm/main/deploy/get.sh | bash -s -- server

This downloads the latest release, verifies its checksum, installs autormm-server as a systemd user service (so it starts on boot and turns on the history database), and — on first run — generates and prints your two tokens:

  ADMIN TOKEN  (clients/dashboard): ••••••••••••••••••••••••••
  ENROLL TOKEN (agents):            ••••••••••••••••••••••••••
  • Admin token — logs you into the dashboard and the client CLI.
  • Enroll token — used by agents joining the fleet (baked into the Add host command for you, so you rarely paste it by hand).

Copy both now. They're also saved to ~/.config/autormm/server.env — re-read them any time with cat ~/.config/autormm/server.env. To pin a specific version instead of latest, prefix the command with AUTORMM_VERSION=v0.4.0.

Check it's up: systemctl --user status autormm-server.

Alternative: from a downloaded binary

If you already have the autormm-server binary (from a release or make build):

./deploy/install-server.sh --bin ./autormm-server   # installs the service + generates + prints tokens

Or just run autormm-server in the foreground — it prints the dashboard URL and admin token and saves config to ~/.config/autormm/autormm.json.

2. Open the dashboard

Browse to http://<hub-ip>:8765. Sign in with the admin token (click 🔑 → Use an access token) — or, better, create a login account (below) and sign in with a username + password. See the Dashboard Guide.

Login accounts

On a fresh hub the dashboard greets you with a "Set up autormm" screen — create your first admin account (username + password) right there. After that you sign in with those credentials. Passwords are stored as argon2id hashes in ~/.config/autormm/admins.json; a successful login issues a signed 12-hour session token.

Manage accounts from the hub with the CLI (changes apply immediately, no restart):

autormm-server admin add alice     # prompts for a password (min 8 chars)
autormm-server admin list
autormm-server admin rm alice

The admin token keeps working (for the CLI and as a login fallback via Use an access token), so guard it.

Forgot your password?

  • Still have the admin token? Sign in with it (Use an access token), then open 👤 Accounts and set a new password. No reset, nothing to re-enroll. (You can also autormm-server admin add <you> on the hub.)
  • Lost the token too? Only then run autormm-server reset on the hub — it wipes all accounts and rotates the enrollment token, so every host must be re-added. A last resort.

Signed-in admins can manage accounts (add / change password / remove) any time from 👤 Accounts in the dashboard.

Where should the hub live on the network?

Run it as plain IP:port on your LAN — no reverse proxy needed. It grants full control of every enrolled host, so never expose it directly to the internet. To reach it from outside your network, use a zero-trust overlay — see Remote Access.

Data & config locations

What Path
Tokens / config (auto) ~/.config/autormm/autormm.json
History + scripts DB ~/.config/autormm/autormm.db (or --db <path>)

Useful flags

Flag Purpose
-addr listen address (default :8765)
-db SQLite path for history + scripts (on by default)
-alert-cpu / -alert-mem / -alert-disk alert thresholds (percent)
-notify-webhook / -notify-ntfy / -notify-discord alert destinations
-tls-cert / -tls-key optional built-in TLS

Clone this wiki locally