Important
Early Beta — This project is in very early beta. Expect significant breaking changes as it matures.
The official command-line interface for Hex, designed for data people and their agents. Every command supports structured JSON output and consistent, composable patterns — making it a natural fit for AI agents, automation pipelines, and programmatic workflows, in addition to interactive use.
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/hex-inc/hex-cli/releases/latest/download/hex-installer.sh | shComing soon...
hex auth loginThis opens a browser-based OAuth flow and stores your credentials securely in your system keyring.
hex run <project-id>hex projects list| Command | Description |
|---|---|
hex auth |
Manage authentication (login, logout, status) |
hex projects |
Manage projects (list, get, create, open) |
hex run |
Execute a project and wait for completion |
hex runs |
Manage project runs (list, status, cancel) |
hex cells |
Manage project cells (list, get, create, update, delete, run) |
hex collections |
Browse collections (list, get) |
hex connections |
Browse data connections (list, get) |
hex groups |
Manage workspace groups (list, get, create, delete) |
hex users |
Browse workspace users (list, get) |
hex profile |
Manage environment profiles (list, add, use, remove, current) |
hex config |
Manage CLI configuration (list, get, set, path) |
hex logs |
View CLI logs |
Run hex --help or hex <command> --help for detailed usage.
--api-url <URL> Override API base URL (env: HEX_API_URL)
-p, --profile <NAME> Select profile (env: HEX_PROFILE)
--json Output as JSON
-q, --quiet Suppress non-essential output
-v, --verbose Show verbose output
--no-color Disable colored output
Configuration is stored in ~/.config/hex/config.toml. You can set configuration options using the hex config command.
Credentials are stored in your system keyring (Apple Keychain on macOS, Secret Service on Linux). If a keyring is unavailable, they fall back to ~/.config/hex/credentials.json.
All commands support --json for machine-readable output, making it easy to integrate with scripts and CI pipelines:
hex projects list --json | jq '.[0].name'You can also set JSON as the default output format for a profile:
hex config set output_format jsonRemove the binary from wherever it was installed:
rm "$(which hex)"To also remove configuration and credentials:
rm -rf ~/.config/hex