Install
From zero to your first server
The on-server companion is rootmote-agent, a single Go binary that binds only to loopback. The app reaches it through an SSH tunnel; nothing new is exposed to the internet.
- 01
Install the agent on a Linux VPS
Run as root on the server:
Linux (systemd)$ curl -fsSL https://raw.githubusercontent.com/rockclaver/rootmote-agent/main/scripts/install.sh | sudo bashThe installer creates a
rootmotesystem user, drops the binary at/usr/local/bin/rootmote-agent, installs and starts the systemd unit, and prints the installed version. To pin a release:Pin a specific version$ curl -fsSL https://raw.githubusercontent.com/rockclaver/rootmote-agent/main/scripts/install.sh | sudo bash -s -- --version 0.1.17Prefer to read it first? Download the script, inspect it, then run it yourself:
Inspect first$ curl -fsSL https://raw.githubusercontent.com/rockclaver/rootmote-agent/main/scripts/install.sh -o rootmote-install.shThen
sudo bash rootmote-install.sh. The whole agent is reviewable on GitHub. - 02
Or install on a Mac
Enable System Settings → General → Sharing → Remote Login first, then install as the macOS user the app will SSH into:
macOS (LaunchAgent)$ curl -fsSL https://raw.githubusercontent.com/rockclaver/rootmote-agent/main/scripts/install-macos.sh | bashDo not run it with sudo: the agent uses the same user-level Claude, Codex, GitHub CLI and SSH state as the account the app connects to. On the same Wi-Fi, add the Mac by its
.localname or LAN IP. - 03
Reach servers away from home
For remote access, prefer a private overlay network such as Tailscale over public port-forwarded SSH:
Install Tailscale (Linux)$ curl -fsSL https://tailscale.com/install.sh | shThen add the server in the app using its Tailscale IP or MagicDNS name. A Mac on the same network as your phone needs no overlay; direct LAN SSH works.
- 04
Add the server in the app
Host, port 22, your SSH username, and the public key the app shows you. The agent listens only on
127.0.0.1:7676; the app opens an SSH tunnel to reach it. Never expose port 7676 on a public interface.
Server ready. Grab the app.
Add the host in rootmote; infrastructure changes still wait for your fingerprint.
Want to read what you just piped into sudo? rootmote-agent on GitHub · the security model