Skip to main content

CUA CLI

Unified command-line interface for CUA (Computer-Use Agents).

Installation

pip install --extra-index-url https://wheels.cua.ai/simple cua-cli

Usage

# Authentication
cua auth login              # Authenticate with run.cua.ai device authorization
cua auth login --no-browser # Print the verification URL without opening a browser
cua auth status             # Show local session status
cua auth logout             # Revoke the refresh token and remove local credentials

# Sandbox Management
cua sb list                 # List all sandboxes
cua sb create --os linux --size medium --region north-america
cua sb get <name>           # Get sandbox details
cua sb start <name>         # Start a stopped sandbox
cua sb stop <name>          # Stop a running sandbox
cua sb restart <name>       # Restart a sandbox
cua sb suspend <name>       # Suspend a sandbox
cua sb delete <name>        # Delete a sandbox
cua sb vnc <name>           # Open sandbox in browser

# Image Management
cua image list              # List cloud images
cua image list --local      # List local images
cua image push <name>       # Upload image to cloud
cua image pull <name>       # Download image from cloud
cua image delete <name>     # Delete cloud image

# Skills Management
cua skills list             # List recorded skills
cua skills read <name>      # Read a skill's content
cua skills record <name>    # Record a new skill
cua skills replay <name>    # Replay a skill
cua skills delete <name>    # Delete a skill
cua skills clean            # Delete all skills

# MCP Server (for AI assistants)
cua serve-mcp               # Start MCP server with all permissions
cua serve-mcp --permissions sandbox:all,computer:readonly

Installation Options

# Basic installation
pip install --extra-index-url https://wheels.cua.ai/simple cua-cli

# With MCP server support
pip install --extra-index-url https://wheels.cua.ai/simple "cua-cli[mcp]"

# With skills recording (VLM captioning)
pip install --extra-index-url https://wheels.cua.ai/simple "cua-cli[skills]"

# Full installation
pip install --extra-index-url https://wheels.cua.ai/simple "cua-cli[all]"

MCP Integration

To use CUA with Claude Code or other MCP-compatible AI assistants:

# Add CUA as an MCP server
claude mcp add cua -- cua serve-mcp

# With specific permissions
claude mcp add cua -- cua serve-mcp --permissions sandbox:all,computer:readonly

# With a default sandbox
claude mcp add cua -- cua serve-mcp --sandbox my-sandbox

Available Permissions

  • all - All permissions
  • sandbox:all - Full sandbox management
  • sandbox:readonly - List and get sandboxes only
  • computer:all - Full computer control
  • computer:readonly - Screenshots only
  • skills:all - Full skills management
  • skills:readonly - List and read skills only

Individual permissions: sandbox:list, sandbox:create, sandbox:delete, sandbox:start, sandbox:stop, sandbox:restart, sandbox:suspend, sandbox:get, sandbox:vnc, computer:screenshot, computer:click, computer:type, computer:key, computer:scroll, computer:drag, computer:hotkey, computer:clipboard, computer:file, computer:shell, computer:window, skills:list, skills:read, skills:record, skills:delete

Environment Variables

  • Authentication uses OIDC device authorization discovered from https://auth.cua.ai/realms/cyclops-cs, while authenticated cloud requests use https://run.cua.ai. Tokens are stored in the operating system credential vault; the CLI does not read API keys from environment variables or write them to .env files.
  • CUA_MCP_PERMISSIONS: Default MCP permissions (comma-separated)
  • CUA_SANDBOX: Default sandbox name for computer commands

Cloud Authentication

cua auth login uses the standard OAuth device authorization flow. It discovers Keycloak endpoints from https://auth.cua.ai/realms/cyclops-cs, while the short verification UI is served from https://run.cua.ai/device. The CLI prints a verification URL and code, so it also works over SSH or in CI-style terminals; use --no-browser to prevent an automatic browser attempt. Complete the verification in any browser, then return to the terminal while the CLI polls for approval.

Access tokens refresh automatically before authenticated run.cua.ai requests. cua auth logout asks the issuer to revoke the refresh token and always removes the local credential-vault entry, even when the network is unavailable. The CLI never prints access or refresh tokens.

GitHub Actions workload identity

Use cua wif-token github from a GitHub Actions job to obtain a GitHub OIDC token for Fleets. The command runs only in GitHub Actions, requests the fleets audience, and prints only the raw token. It does not use the interactive cua auth login session.

FLEETS_TOKEN is ephemeral and process-scoped. When it is set, it takes precedence over the interactive session for Fleet operations.

permissions:
  id-token: write
  contents: read

steps:
  - name: Run a non-interactive Fleets sandbox
    run: |
      export FLEETS_TOKEN="$(cua wif-token github)"
      cua sb launch ghcr.io/trycua/mini-swe:latest --name sandbox
      cua sb exec sandbox -- pwd
      cua sb delete sandbox --force

Use the exact GitHub-authorized sandbox name sandbox and the Mini SWE image ghcr.io/trycua/mini-swe:latest. cua sb delete sandbox --force releases the claim while preserving the reconciled one-replica pool, template, and namespace for the next claim.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cua_cli-0.1.14.tar.gz (66.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

cua_cli-0.1.14-py3-none-any.whl (75.8 kB view details)

Uploaded Python 3

File details

Details for the file cua_cli-0.1.14.tar.gz.

File metadata

  • Download URL: cua_cli-0.1.14.tar.gz
  • Upload date:
  • Size: 66.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.11.9

File hashes

Hashes for cua_cli-0.1.14.tar.gz
Algorithm Hash digest
SHA256 d26f47dde360d621a1b87a76839f1db85b6cb64c3acc220760118a200e60b4a6
MD5 071ec2ed51cf556b6cea0141ae2e696b
BLAKE2b-256 aec7e14c94e86d40797a989bd42108ed4bf009bbd4ab838d92f9d72bddfbe897

See more details on using hashes here.

File details

Details for the file cua_cli-0.1.14-py3-none-any.whl.

File metadata

  • Download URL: cua_cli-0.1.14-py3-none-any.whl
  • Upload date:
  • Size: 75.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.11.9

File hashes

Hashes for cua_cli-0.1.14-py3-none-any.whl
Algorithm Hash digest
SHA256 7c7446d0f53af038d93426b0fa0667313fb0f6a698d91fdb8d43e289733856cf
MD5 98f4ed15fa17f4844f2969cb09c3e562
BLAKE2b-256 b8a39dae53fe3c6a3e39df70548ef239a680392e9e42db0429e530f76db1c8c9

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page