Docs / Install

Install Directionally Local on a server

Requirements, the one-line install, the three questions it asks, and what it sets up on your server.

Run the installer on the server that will run your agents, not on your laptop.

Requirements

  • Operating system: Ubuntu 24.04 or 22.04, or Debian 12.
  • Processor: x86_64 or arm64.
  • Memory: 4 GB or more.
  • Disk: 15 GB or more free.
  • Access: run it as root.

A rented cloud server or a machine in your office both work, as long as it meets the list above.

Install

curl -fsSL https://directionallylocal.run | sh

Always include https://. Without it, curl's first request goes over plain HTTP, where it could be tampered with.

The three questions

The installer asks for three things, then runs on its own:

  1. A Tailscale auth key. This puts the server on your private Tailscale network, so only your own devices can reach it. Create one at login.tailscale.com/admin/settings/keys with the Generate auth key button.
  2. An OpenRouter API key. The key the agents use to call models. It's stored on the server and never sent to your laptop or into a sandbox.
  3. A GitHub token. Used to clone your repos and open pull requests. Create a fine-grained token with Contents and Pull requests set to read and write, for the repos you want agents to work on.

What it sets up

  • Docker, which runs the sandboxes.
  • Hotcell, the sandbox runtime. Each task runs in its own sandbox, and the model key stays here.
  • Autopilot, the coding agent, running as a server your laptop talks to.
  • The sandbox image the agents work in.
  • Tailscale access, giving the server a private https://<name>.<tailnet>.ts.net address with no public ports.
  • Automatic Node.js security fixes.

When it finishes, it shows a ready line, an estimate of how many agents fit at once, and the next steps for your laptop.

About the "fits about N agents" estimate

The installer estimates capacity from the server's memory and CPU count, allowing about 1 GB per sandbox. It's an estimate: real usage depends on your repos and tasks. Measured numbers will replace it in a later version.

Advanced: SSH tunnel instead of Tailscale

If you can't use Tailscale, set DL_ACCESS=loopback when installing. The server then listens only on the machine itself, and you reach it through an SSH tunnel.

Next

Connect your laptop.