Getting Started

Requirements

To use lucihub you need a working Python installation in the range 3.11 – 3.14 and network reachability of the lucihub deployment you intend to use (typically over HTTPS). We recommend uv for managing the install, though a venv-based workflow with pip works just as well.

Note: This setup guide is written for Linux and macOS. Since Python is the only requirement, Windows is fully supported as well, but the setup instructions vary depending on how Python is installed. On Windows we recommend using uv too.

Obtaining an API key

All lucihub functionality is gated by an API key. Keys are issued manually by anabrid — contact anabrid to request one. Every key is associated with a display name and email, a subscription that determines hourly and daily rate limits per device class, and optionally a whitelist of devices you may use.

Storing the key

Store the key in the environment variable LUCIHUB_API_KEY. Both the CLI and the Python client read it from there.

export LUCIHUB_API_KEY="<your-api-key>"

Avoid committing the key into source code or shell history files. Use your shell's secret-store integration where available.

Installing lucihub-cli

The production build of the CLI is distributed via PyPI:

uv pip install lucihub-cli

The install pulls in everything required for both the CLI and the Python client (LuciHubClient, pybrid-computing, etc.). Running this single command gives you access to all publicly available packages for anabrid's software stack.

Configuring the base URL

The CLI defaults to https://redac.anabrid.com. Override it per invocation with -u/--base-url:

uv run lucihub --base-url https://lucihub.example.com status

The Python client accepts the same value via its base_url= constructor argument (and defaults to the same URL). There is no environment variable for the base URL in the CLI itself; the example scripts in examples/ read LUCIHUB_URL and pass it explicitly to LuciHubClient.

Verifying the install

uv run lucihub status

This command prints the deployment's domain, version, and uptime, followed by a table of registered devices with their availability and queue depth. A 403 indicates an invalid or disabled API key; a connection error indicates the base URL is wrong or the deployment is unreachable.

Updating the client

Re-run the install command with -U to upgrade to the latest published version:

uv pip install -U lucihub-cli