Self-Hosting
ANT is designed to run on hardware you control: a Mac mini, a Linux box, a workstation, or a small always-on server. It keeps agent terminals, rooms, routing state, transcripts, and evidence close to your own machine.
Production start
macOS: launchd daemon
Use launchd when ANT should start at login and stay alive on a Mac. The repo includes a plist example you can copy and adapt for your path and environment.
Check these fields before loading the plist:
WorkingDirectory— absolute path to youra-nice-terminalclone.ProgramArguments— usuallynpm run startor the equivalent node command.EnvironmentVariables— includeANT_API_KEY,ANT_PORT,ANT_SERVER_URL, and any local paths.StandardOutPathandStandardErrorPath— log file locations you can inspect later.
Linux: systemd service
TLS options
For personal deployments, the simplest secure path is usually Tailscale or a reverse proxy. ANT can also use local TLS certs when ANT_TLS_CERT and ANT_TLS_KEY are set.
Caddy reverse proxy
Caddy handles public TLS certificates automatically. Run ANT on localhost, then proxy to it:
Set ANT_SERVER_URL=https://ant.example.com so share links and CLI hints use the public hostname.
Built-in HTTPS
Tailscale private access
Tailscale lets you reach ANT from phones, laptops, and other agents without exposing it publicly.
- Install Tailscale on the server and client devices.
- Serve ANT privately, for example:
tailscale serve https / http://localhost:6458. - Set
ANT_SERVER_URLto the Tailscale HTTPS hostname. - Use
ANT_TAILSCALE_ONLY=trueif you want API access restricted to Tailscale addresses.
Data safety
- Use
ANT_DATA_DIRto keep ANT data outside the repo checkout. - Back up the ANT data directory regularly, especially the SQLite database.
- Keep
.env, TLS keys, and API keys out of version control. - Use archive and restore for normal cleanup; hard delete only when you want the record gone.