Lakehousecat CLI
The lhc command-line interface gives you full control over your Lakehousecat instance from a terminal. Every operation available through the REST API is accessible via lhc — including datasource management, model configuration, user provisioning, and analytics.
This reference documents the supported public CLI surface. Commands and flags not listed here are internal to the CLI tool and subject to change without notice.
Installation
Download the latest lhc binary for your platform from cli.lakehousecat.com:
# macOS / Linux — one-liner (detects platform automatically)
curl -fsSL https://cli.lakehousecat.com/latest/manifest.json \
| python3 -c "import json,sys; v=json.load(sys.stdin)['version']; print(v)" \
| xargs -I{} sh -c '
OS=$(uname -s | tr A-Z a-z)
ARCH=$(uname -m | sed "s/x86_64/amd64/;s/aarch64/arm64/")
curl -fsSL "https://cli.lakehousecat.com/{}/{}-${ARCH}/lhc" -o /usr/local/bin/lhc
chmod +x /usr/local/bin/lhc
'
Or download a specific version directly:
| Platform | URL |
|---|---|
| macOS (Apple Silicon) | https://cli.lakehousecat.com/<version>/darwin-arm64/lhc |
| macOS (Intel) | https://cli.lakehousecat.com/<version>/darwin-amd64/lhc |
| Linux (x86_64) | https://cli.lakehousecat.com/<version>/linux-amd64/lhc |
| Linux (ARM64) | https://cli.lakehousecat.com/<version>/linux-arm64/lhc |
| Windows (x86_64) | https://cli.lakehousecat.com/<version>/windows-amd64/lhc.exe |
| Windows (ARM64) | https://cli.lakehousecat.com/<version>/windows-arm64/lhc.exe |
The latest version and release date are always available at:
https://cli.lakehousecat.com/latest/manifest.json
After downloading, verify the binary with the published checksums:
curl -fsSL "https://cli.lakehousecat.com/<version>/checksums.txt" | shasum -a 256 --check
Authentication
All commands require a configured profile with an API key. Generate your API key in the Lakehousecat UI:
Account Settings → Security → API Keys → Generate API Key
Store it in a profile:
lhc configure
# Endpoint (e.g. https://my.lakehousecat.com): https://acme.lakehousecat.com
# API Key: lhc-...
This writes the key to ~/.lhc/credentials and the endpoint to ~/.lhc/config. See Authentication & Setup for the full setup guide.
Global Flags
All lhc commands accept these flags:
| Flag | Description |
|---|---|
--profile <name> | Use a specific named profile (default: default) |
--select <fields> | Comma-separated fields to include in table output (e.g., id,name,status) |
--insecure | Skip TLS certificate verification (for self-signed certs) |
--output table|json|yaml | Output format (default: table) |
--json | Shorthand for --output json |
The environment variable LHC_PROFILE overrides --profile.
In table output, *_at timestamp fields (created_at, updated_at, expires_at, etc.) are automatically rendered as YYYY-MM-DD HH:MM (UTC) instead of raw Unix epoch values.
Command Groups
| Group | Service | Description |
|---|---|---|
instance | LHC Core | Instance version and license state |
users | LHC Core | Invite and manage users |
groups | LHC Core | Manage groups and membership |
models | LHC Core | Manage custom models, export and import |
sessions | LHC Core / LLM | Manage chat sessions |
jobs | LHC Core | Manage job definitions and runs |
prompts | LHC Core | Create and manage reusable prompt templates |
datasources | Semantic | Manage semantic datasources, export and import |
semantic | Semantic | Semantic extraction, hierarchies, and descriptions |
analytics | Analytics | Generate charts, run pipeline steps, validate SQL |
charts | Analytics | Manage and share charts |
dashboards | Analytics | Manage, share, and approve dashboards |
configure | — | Manage CLI profiles |
Use Cases
The following guides walk through end-to-end scenarios using the CLI:
| Use Case | Commands involved |
|---|---|
| Authentication & Setup | configure, instance info |
| Manage Datasources | datasources * |
| Manage Models | models * |
| Manage Users & Groups | users *, groups * |
| Manage Sessions | sessions * |
| Manage Analytics | charts *, dashboards * |
| Manage Jobs | jobs * |
Scope Limitations
The following capabilities are not available through the CLI:
- Audio transcription — use the Audio API directly
- Chat / LLM interaction — the CLI manages configuration, not interactive sessions