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

# Installation

> Install the Chamber Standalone Agent on a GPU host

<Warning>
  The Standalone Agent is in **beta**. Features and configuration may change.
</Warning>

This guide covers installing the Chamber Standalone Agent on a Linux GPU host (bare metal, cloud VM, or on-prem server).

## Prerequisites

| Requirement         | Details                                                                                                                                                                                          |
| ------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| **Chamber account** | Sign up at [app.usechamber.io/signup](https://app.usechamber.io/signup) and contact the Chamber team to enable standalone agent access. Then create an API token from **Settings > API Tokens**. |
| **GPU host**        | Linux host with one or more NVIDIA GPUs (GCP, AWS, Azure, or bare metal)                                                                                                                         |
| **NVIDIA driver**   | Pre-installed on most cloud GPU images. Verify with `nvidia-smi`.                                                                                                                                |
| **Root access**     | The installer requires `sudo`                                                                                                                                                                    |

<Info>
  Python 3.11+, Docker, and DCGM Exporter are installed automatically by the installer if not already present.
</Info>

## Step 1: Get Your Cluster Token

<Steps>
  <Step title="Log in to Chamber">
    Go to [app.usechamber.io](https://app.usechamber.io) and navigate to **Settings**.
  </Step>

  <Step title="Create a token">
    Click **New Token**, give it a name, and copy the generated token immediately.
  </Step>
</Steps>

<Warning>
  Store your token securely. It is only shown once and cannot be retrieved later.
</Warning>

## Step 2: Install the Agent

SSH into your GPU host and run:

```bash theme={null}
curl -fsSL https://chamber-agent-releases.s3.amazonaws.com/install.sh \
  | sudo CHAMBER_CLUSTER_TOKEN=<your-token> bash
```

Replace `<your-token>` with the token from Step 1.

The installer will:

* Install Python 3.11+, Docker, and NVIDIA Container Toolkit (if not already present)
* Set up DCGM Exporter for GPU profiling metrics
* Install and configure the Chamber Standalone Agent
* Start the agent as a `systemd` service

The full process takes 2–5 minutes depending on what is already installed.

## Step 3: Verify

Your host should appear in the Chamber dashboard within 60 seconds. You can also verify locally:

```bash theme={null}
# Check service status
sudo systemctl status chamber-agent-standalone

# View recent logs
sudo journalctl -u chamber-agent-standalone --no-pager -n 20
```

You should see log lines indicating a successful WebSocket connection to the control plane.

### Verify in Dashboard

1. Go to [app.usechamber.io/dashboard?tab=services](https://app.usechamber.io/dashboard?tab=services)
2. Your host should appear with GPU count and metrics flowing

<Info>
  If the host doesn't appear within 60 seconds, see [Troubleshooting](/agent/standalone/troubleshooting).
</Info>

## Common Operations

```bash theme={null}
# View live logs
sudo journalctl -u chamber-agent-standalone -f

# Restart the agent
sudo systemctl restart chamber-agent-standalone

# Stop the agent
sudo systemctl stop chamber-agent-standalone

# Check agent version
/opt/chamber-standalone/venv/bin/chamber-standalone version

# View detected GPU and host info
/opt/chamber-standalone/venv/bin/chamber-standalone host-info
```

## Network Requirements

The agent requires outbound HTTPS/WSS access only. No inbound ports need to be opened.

| Host                             | Port | Purpose                                 |
| -------------------------------- | ---- | --------------------------------------- |
| `controlplane-api.usechamber.io` | 443  | Control plane communication (WebSocket) |

<Tip>
  If you are running behind a corporate firewall, ensure outbound WebSocket connections to port 443 are allowed.
</Tip>

## Next Steps

<CardGroup cols={2}>
  <Card title="Metrics Reference" icon="chart-line" href="/agent/standalone/metrics">
    Understand the metrics collected and what they mean
  </Card>

  <Card title="Configuration" icon="gear" href="/agent/standalone/configuration">
    Customize agent behavior with environment variables
  </Card>

  <Card title="OTLP Integration" icon="plug" href="/agent/standalone/otel-integration">
    Send your application metrics to Chamber
  </Card>

  <Card title="Troubleshooting" icon="wrench" href="/agent/standalone/troubleshooting">
    Common issues and solutions
  </Card>
</CardGroup>
