What you'll need
Three things. If your Hermes is already running, you're most of the way there.
A small Linux server
A cheap VPS is plenty (1 vCPU / 1 GB). Ubuntu or Debian, with root / sudo access.
Hermes installed & running
The companion sits next to your existing Hermes api_server on 127.0.0.1:8642.
About two minutes
One command does the rest — and re-running it later is always safe.
Run one command
実行Install the companion
SSH into the box that runs Hermes and run this as root. Passing a domain installs the companion behind HTTPS (so the QR connect works) and prints your QR code, Server URL and API key.
$ curl -fsSL https://get.arautocompanion.app/install.sh | sudo DOMAIN=hermes.example.com bash
A record pointing hermes.yourdomain.com to your server's IP.Prefer to read it first? From a checkout of the companion folder, run sudo DOMAIN=hermes.example.com bash install.sh instead.
記録Grab the QR (or the URL + key)
When it finishes, the installer prints a QR code plus the Server URL and API key below it. You'll scan the QR in the app (fastest), or copy the two values by hand. Keep the key secret — it's the single shared token the app uses.
ROTATE_KEY=1 to mint a new one.Add HTTPS with a domain
The app sends the key as a Bearer token, so don't expose it over plain HTTP. That's why the install command above takes a DOMAIN — the installer sets up Caddy + a free Let's Encrypt certificate and serves the companion over https://… automatically.
Caddyfile — it prints the vhost block to add. Prefer nginx? Skip DOMAIN and reverse-proxy 127.0.0.1:8700 yourself. Either way, keep Hermes on loopback — only the companion is exposed.Set it up on your host
The install command is the same everywhere — the only difference is how you get a Linux box and point a domain at it. Pick yours.
- Create an Ubuntu 22.04+ server and SSH in as root.
- Point an A record (
hermes.yourdomain.com) at the server's IP. - Make sure your Hermes is installed and running on it.
- Run the HTTPS install command above with your domain. Done.
80 and 443 in any firewall so Caddy can fetch the certificate.- Create a Droplet → Ubuntu, Basic / Regular, the $6 size is fine.
- Add an A record in Networking → Domains pointing at the Droplet.
- SSH in as root; confirm Hermes is running.
- Run the HTTPS install command with your domain.
- Create a CX22 (or larger) server with Ubuntu 22.04.
- Point an A record at the server IP (your registrar or Hetzner DNS).
- SSH in as root; confirm Hermes is running.
- Run the HTTPS install command with your domain.
80 and 443.- Create a Lightsail instance → Ubuntu; attach a static IP.
- In Networking, open ports 80 and 443 (HTTP/HTTPS).
- Point an A record at the static IP; SSH in and
sudo -i. - Confirm Hermes is running, then run the HTTPS install command.
ubuntu — switch to root with sudo -i before running.- Run Ubuntu Server or Raspberry Pi OS (64-bit) with Hermes installed.
- Port-forward
80and443from your router to the Pi. - Use a dynamic-DNS domain (e.g. DuckDNS) pointing home.
- Run the HTTPS install command with that domain.
127.0.0.1:8700 instead of port-forwarding.What this installs
Just one small piece sits next to your Hermes — a companion the app talks to. Here's everything it adds:
- A small Arauto companion service (no extra packages) in
/opt/arauto-companion - A
systemdservice so it keeps running and starts on boot - Caddy and a free, auto-renewing HTTPS certificate — only if you pass a domain
- Nothing else — your Hermes, its config, and your data stay on your own server; the companion sends nothing to Arauto
The companion proxies chat, sessions and models straight through to Hermes, and adds the few things Hermes' API can't do on its own: toggle skills, set the model + toolsets, choose your AI provider + key, and edit the persona.
Connect Arauto
The installer also prints a QR code. Open the app → Connect (onboarding) or Settings → Hermes connection, tap Scan QR code, and point your camera at it — both fields fill in and it connects on the spot.
- On the server, the installer shows a QR code in your terminal.
- In the app, tap Scan QR code on the Connect screen.
- Point the camera — it fills the URL + key and connects.
Both values are printed alongside the QR. Stored on your device only — never on our servers.
Manage & uninstall
It's a normal systemd service. Check status, follow logs, or remove it cleanly.
# status & live logs $ systemctl status arauto-companion $ journalctl -u arauto-companion -f
$ systemctl disable --now arauto-companion $ rm -f /etc/systemd/system/arauto-companion.service $ rm -rf /opt/arauto-companion $ systemctl daemon-reload
This removes only the companion — your Hermes install and profile are untouched.
Configuration
All config lives in /opt/arauto-companion/companion.env (mode 0600). Edit it and systemctl restart arauto-companion, or re-run the installer with env overrides.
| Variable | Default | Meaning |
|---|---|---|
ROUTER_KEY | generated | The shared key the app sends. Secret. |
PORT / HOST | 8700 / 0.0.0.0 | Where the companion listens. With a DOMAIN, HOST binds 127.0.0.1 (behind Caddy). |
HERMES_BASE | 127.0.0.1:8642 | Your local Hermes api_server. |
HERMES_API_KEY | detected | Hermes' key, injected upstream for you. |
HERMES_MODEL | unset | Pin one chat model for every request. |
HERMES_MODELS | unset | CSV of models offered in the app's picker. |