Skip to main content
The Cube CLI is currently in preview, and commands and flags may still change. Reach out to the Cube support team to activate this feature for your account.
The Cube CLI (cube) is a single-binary command-line interface for the Cube platform. Use it to create and manage deployments, deploy data model code, work with the data model Git workflow, connect GitHub repositories, tail deployment logs, and automate workspace administration from scripts and CI.
The Cube CLI works with the Cube cloud platform. It is not required for running Cube Core locally.

Installation

Linux / macOS:
Windows (PowerShell):
The installer downloads the release binary for your platform and adds it to your PATH. Set CUBE_VERSION to pin a release tag, or CUBE_INSTALL_DIR to change the install location. The CLI checks for new releases in the background and prints a notice when one is available. Update in place at any time:

Authentication

Sign in with the browser device flow — the CLI prints a URL and a short code, opens your browser, and waits for approval:
Credentials are saved to ~/.config/cube/config.toml (Linux/macOS) or %APPDATA%\cube\config.toml (Windows). Multiple accounts are supported as named contexts (--name on login, --context on any command), and expired access tokens refresh automatically. For CI and scripts, use an API key instead:

Deploy a project

The core workflow — create a deployment, connect a database, upload your data model, and query it:
1

Create a deployment

2

Connect a database

3

Deploy your project

cube deploy hashes local files, uploads only what changed, removes remote files deleted locally (--keep-missing opts out), and triggers a single build.
4

Watch the build and query

Use the token against the deployment’s REST (JSON) API endpoint.

Import from GitHub

Connect a deployment to a GitHub repository instead of uploading files:
Connecting clones the repository into the deployment and triggers the first build.

Command reference

Run cube <command> --help for the full options of any command. List commands print tables by default; pass --json anywhere for raw JSON output, suitable for piping to jq.

Data model Git workflow

Edit the data model through branches without touching production:
merge-to-default merges into the deploy branch and rebuilds production.

Environment variables

Telemetry

The CLI sends anonymous usage events (command group, success/failure, version, platform). No personal data is collected; the anonymous identifier is a hash of the OS machine id. Telemetry is disabled automatically in CI, or explicitly with CUBE_NO_TELEMETRY=1.