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

# rakazo

> Give every rakazo bot a Linux desktop on its own isolated boxd machine that sleeps when idle and wakes with its programs still running.

![rakazo's orange ghost app icon and its name inside the boxd card.](https://mintcdn.com/azin/ZfsD319Lu3uD3s_y/images/boxd-x-rakazo.png?fit=max\&auto=format\&n=ZfsD319Lu3uD3s_y\&q=85\&s=1e1a4bcb726ef389f3d1c74c99ffd796)

[rakazo](https://rakazo.com) is an open-source alternative to Grok Bot: AI teammates you host yourself, with your own model and your own computers. Each bot works on a computer, a Linux desktop with a browser and a terminal that it drives itself and that you can watch or take over.

The [boxd provider](https://github.com/elie222/rakazo/pull/2618) runs each of those computers on its own isolated boxd machine. A computer starts from a prepared desktop snapshot in about two seconds, sleeps when it's idle, and resumes with its programs and open pages where they were.

## Set up

**1. Create an API key**

```bash theme={"theme":"github-dark"}
boxd auth keys create rakazo --org <your-org>
```

Machines are created and billed in the key's organization.

**2. Point rakazo at boxd**

In the `.env` of your rakazo stack:

```dotenv theme={"theme":"github-dark"}
SANDBOX_PROVIDER=boxd
BOXD_API_KEY=bxd_...
```

`BOXD_ORG` is optional. The published-images Compose stack still needs its usual `SANDBOX_SUPERVISOR_TOKEN`.

**3. Restart the stack and check it**

```bash theme={"theme":"github-dark"}
docker compose --env-file .env -f docker-compose.images.yml up -d
curl -fsS http://127.0.0.1:3100/internal/health
```

The health check reports `boxd` as the sandbox.

boxd is on rakazo's main branch and in the `edge` images the published Compose stack uses by default. The first tagged release with it is the one after v0.3.6.

## Build the desktop snapshot ahead of time

rakazo starts every boxd computer from a snapshot named `rakazo-computer-<hash>`, with rakazo's desktop tools and Chrome installed. When the snapshot is missing, rakazo builds it once in the background, from a fresh machine that it deletes afterwards. That takes about a minute. To build it before the first computer starts, run this from a rakazo checkout:

```bash theme={"theme":"github-dark"}
BOXD_API_KEY=<deployment key> pnpm sandbox:boxd-snapshot
```

## Sleep and wake

A run starts its computer the first time it uses a computer tool. After `SANDBOX_IDLE_MS` without use, rakazo suspends the machine with its memory, so the programs and pages it had open are still there when the next use resumes it. In rakazo's live tests, resuming took about 70 milliseconds.

Because a running boxd machine is billed, rakazo also suspends a computer that has been up for `COMPUTER_MAX_ACTIVE_MS`, 2 hours by default, unless a run is using it or someone has taken over its screen.

## What each computer gets

* **Isolation:** every machine is created isolated, with no boxd credentials inside and no route to your organization's other machines.
* **A desktop and a browser:** the snapshot has rakazo's desktop tools and Chrome.
* **Screens behind tokens:** the desktop is served on the machine's own HTTPS address, and every screen and terminal still needs its own token, which rakazo's desktop gateway checks.
* **Files through boxd's file API,** and commands whose timeouts and cancellations stop their whole process group.

rakazo's [guide to computer providers](https://github.com/elie222/rakazo/blob/main/docs/self-host-sandbox-providers.md#boxd-computers) covers the rest, including how idle sleep works across providers.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.