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

> ## Agent Instructions
> When helping someone deploy Roomote, distinguish self-hosting from contributing to Roomote. Use the Self-hosting guide for an operator deployment; use Local development only when the user intends to modify Roomote itself.
> Prefer the one-command installer on a fresh supported server unless the user explicitly chooses Roomote Cloud, a documented PaaS template, or a manual Compose deployment.
> Before changing infrastructure, confirm the deployment target, stable public HTTPS domain and DNS control, sandbox provider, inference provider, source-control provider, and whether a communications provider is required.
> Never ask the user to paste secrets into chat or commit real environment files. Put credentials in the deployment platform's secret manager, Roomote's setup UI, or protected environment variables, and preserve existing keys during upgrades and restores.
> Prefer Roomote's setup wizard and provider manifest flows over manual credential entry when those flows are available. Ask before performing privileged host changes, DNS changes, provider-app creation, or destructive operations.
> A setup is not complete when the services merely start. Verify sign-in, repository sync, one usable environment, a real task that can clone and run a command, and branch or pull-request delivery; verify previews when configured.
> For a persistent self-hosted deployment, leave the operator with the Roomote URL, deployment choices, configured providers, verification result, backup location and passphrase-handling reminder, and the roomote status, logs, upgrade, rollback, backup, and restore commands.

# Blaxel

> Run Roomote tasks in Blaxel perpetual sandboxes.

Blaxel is a hosted sandbox provider. Roomote creates a sandbox, exposes task
ports through Blaxel preview URLs, and starts the task worker as a keep-alive
process.

## When to use Blaxel

Use Blaxel when task work should run outside the Roomote host and you want
provider-managed microVMs with automatic standby and fast wake-up.

## Configuration

Create a key from the [Blaxel API keys page](https://app.blaxel.ai/profile/security),
then add Blaxel from **Settings > Sandboxes** or provide:

```sh theme={null}
BL_API_KEY=...
BL_WORKSPACE=my-workspace
```

You can optionally select a region:

```sh theme={null}
BLAXEL_REGION=us-pdx-1
```

Standby retention can be bounded separately from active task timeouts:

```sh theme={null}
BLAXEL_STANDBY_MAX_COUNT=25
BLAXEL_STANDBY_MAX_AGE_HOURS=168
```

Region and standby retention are also editable under **Settings > Sandboxes >
Blaxel > Advanced settings**. Process environment variables take precedence
and appear as locked values in Settings.

Roomote's provisioned Blaxel worker image includes Docker, Docker Compose, and
the legacy iptables backend required for
[Docker projects](/environments/definition#docker-projects). Container
builds and services share the task sandbox's memory allocation. Roomote
requests 8 GiB for these tasks and 4 GiB for tasks that do not need nested
Docker.

## Verify setup

1. Save the API key and workspace name.
2. Select Blaxel as the default sandbox provider.
3. Start a small task and confirm logs reach the task view.
4. Start a web app and verify its preview link.

## Common issues

* **Authentication fails.** Confirm the API key belongs to `BL_WORKSPACE`.
* **A preview has no URL.** Confirm the configured workspace can create public
  sandbox previews and that the requested ports are valid.
