Step 2 — Connect a gateway
The gateway is the program that holds your keys, enforces policy, and makes the actual calls. It's a single self-contained binary. Connecting one is what turns the demo console into your console.
As soon as you sign up, the welcome dialog offers three ways to get a gateway running:

| Choice | Best for | Where it runs |
|---|---|---|
| Let Permaura host it | The quickest start, always-on, nothing to install | Permaura's cloud (hosted) |
| Install the Mac app | A local gateway your Mac supervises for you | Your machine (local) |
| Use the command line | Power users, servers, headless boxes | Wherever you run the command |
Not ready? "I'll set this up later" drops you into the console, and "View the demo" fills it with sample data so you can look around first.
The same three options live on the Gateway settings page (Settings → Gateway), so you can start or change your gateway at any time:

Auto-pairing, in one sentence
However you install it, the signed-in console mints a one-time pairing code (short-lived, single-use). The installer redeems it as the gateway starts, which registers the gateway to your account. You never copy or paste a URL or a token — the console notices the new gateway and goes live on its own.
Run it from the command line
Choosing Use the command line shows a ready-to-run command with your pairing code already filled in. Pick whichever you prefer:
- curl (recommended)
- npx (Node)
curl
Copy the command and paste it into your terminal:
curl -fsSL https://permaura.com/install | sh -s -- --pair PGW-VUZFQ3BPMX
It downloads the gateway, starts it on 127.0.0.1:8787, and pairs it to your account. --pair <code> is filled in for you — the code above is an example; yours is unique and lives for a few minutes.

On the production site the command reads https://permaura.com/install. Screenshots captured against a local dev build show a localhost origin instead — the command always points at whatever site you're signed into.
npx
If you already have Node, flip the toggle to npm and run:
npx -y @permaura/gateway --pair PGW-TF9YZJWF4V
Same outcome as curl — it launches the gateway and auto-pairs with the one-time code. The launcher is a zero-dependency Node wrapper around the same binary. The -y answers npm's one-time "install this package?" prompt for you, so nothing stalls waiting on a keypress.

The pairing code has a live countdown; if it lapses before you run the command, the dialog mints a fresh one automatically.
The one-command installers target macOS right now. On other platforms, choose Let Permaura host it, or run the gateway binary yourself. A Windows/Linux one-launch installer is on the way.
Already have a gateway running?
If you started a gateway some other way and just want to point the console at a specific address, open Settings → Gateway and use the Advanced section to set the browser URL your console should read from (for example http://127.0.0.1:8799).

A gateway's bearer token is sealed with AES-256-GCM and stored apart from the gateway record. When the console needs to reach a remote gateway it goes through a server-side proxy that decrypts the token only to make the call — the browser never sees it.
The console waits, then connects itself
Whichever method you pick, the connect card polls — "Waiting for your gateway to connect…". The moment your gateway registers, it flips to a green "Gateway connected" and the page refreshes on its own. There's no button to press.
➡️ Continue to Step 3 — Go live.