> ## Documentation Index
> Fetch the complete documentation index at: https://docs.neochamber.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Install the agent

> One command per box — the same command fleet-wide — and nodes appear within two minutes.

## Prepare a GPU server

Per box:

* **Ubuntu 22.04 or 24.04+**
* An installed **NVIDIA driver** (`nvidia-smi` works)
* **Outbound HTTPS** to your console URL on port 443 — no inbound access is ever
  needed
* A sane clock

## Install

```bash theme={null}
curl -sSL https://<your-console-url>/install.sh | sudo bash -s -- --token <TOKEN>
```

A token is reusable, so this exact line rolls out a whole rack. Add
`--site <name>` per site, for example `--site dal-01`.

The installer:

1. Preflights the OS, driver, connectivity, and clock, with loud, actionable
   failures
2. Downloads the checksum-verified agent
3. Installs a hardened systemd unit
4. Enrolls the machine
5. Starts streaming

**Each node and its GPUs appear in Fleet — in your capacity pool — within two
minutes.**

## On a shared box, pass the token in the environment

Command-line arguments are world-readable through `ps`. On a machine where that
matters, hand the token over in the environment instead:

```bash theme={null}
 export CHAMBERD_ENROLL_TOKEN=<TOKEN>
curl -sSL https://<your-console-url>/install.sh | sudo -E bash
```

<Note>
  Note the **leading space** before `export` — that keeps the line out of shell
  history. Drop the `--token` flag entirely in this form. The installer forwards
  the variable to the agent the same way, so the secret never reaches any
  process's argv.
</Note>

## Verify on the box

```bash theme={null}
systemctl status chamberd     # active (running), Restart=always + watchdog
journalctl -u chamberd -f     # live agent log
```

## Removing the agent

```bash theme={null}
curl -sSL https://<your-console-url>/install.sh | sudo bash -s -- --uninstall
```

The installer is **idempotent** — re-running it is safe.

## Behavior during network outages

Agents buffer **24 hours** of telemetry on disk and backfill with original
timestamps after outages, up to a **55-minute replay cap**. Older gaps are shown
honestly as gaps rather than interpolated.

Fix the network and telemetry backfills itself; no intervention needed.
