CLI
Install, global flags, output, exit codes, and a guide to the full CLI command reference
axhub is the official CLI for working with axhub from the terminal, CI, and agents.
Every command and flag is also available via axhub --json-schema. This reference is generated from that output, so it always matches the installed CLI. For the last-mile details, axhub <command> --help is always current.
Install
curl -fsSL https://cli.axhub.ai/install.sh | bash
axhub --versionirm https://cli.axhub.ai/install.ps1 | iex
axhub --versionGlobal flags
Options you can add to any command. Most also accept an environment variable.
| Flag | Description |
|---|---|
--profile <name> | Profile to use (AXHUB_PROFILE) |
--tenant <company> | Target company (tenant) (AXHUB_TENANT) |
--json | Emit results as JSON (AXHUB_JSON) |
-y, --yes | Auto-approve confirmation prompts (AXHUB_YES) |
--no-input | Disable interactive input — for agents/CI (AXHUB_NO_INPUT) |
--no-keychain | Use file-backed credentials instead of the OS keychain (AXHUB_NO_KEYCHAIN) |
--endpoint <URL> | API endpoint (AXHUB_ENDPOINT) |
--timeout <duration> | Request timeout, e.g. 30s (AXHUB_TIMEOUT, default 30s) |
--idempotency-key <UUID> | Idempotency key for safe retries (AXHUB_IDEMPOTENCY_KEY) |
--no-color | Disable colored output (AXHUB_NO_COLOR) |
-v, --debug | Debug logs (AXHUB_DEBUG) |
Output format
With --json, every result uses the same envelope — data on success, error on failure.
{ "data": { /* ... */ } }
{ "error": { "category": "...", "code": "...", "request_id": "...", "hint": "..." } }Agents should branch on error.code and the exit codes below rather than the human-readable message.
Exit codes
| Code | Meaning | What to do |
|---|---|---|
0 | Success | — |
1 | Generic error | Local I/O, etc. |
2 | Invalid usage | Check args/flags |
4 | Auth required | axhub auth login |
5 | Not found | Check the target id/slug |
6 | Rate limited | Retry shortly |
7 | API error | Check message/request_id |
8 | Tenant scope error | Check the active company |
9 | Conflict | Already exists/settled — change args |
10 | Timeout | Retry |
11 | Dry-run blocked | Add --execute |
12 | Domain blocked | Invite email domain policy violation |
13 | Invitation expired | Send a new invitation |
Command reference
Each page lists every subcommand and flag.
Auth & account
auth · profile · tenants · config · doctor · update
Apps
apps · init · github · open · categories · review · publish
Deploy
deploy · status · engines
Data
tables · data · env
Gateway & resources
connectors · resources · catalog · gateway
Governance & access
access · members · invitations · authz · audit · email-domains