Global Options
These options apply to every oh invocation, regardless of the command.
oh [OPTIONS] COMMAND [ARGS]...
| Option | Short | Default | Env var | Description |
|---|---|---|---|---|
--profile | -p | Profile named by _default in the credentials file | ONEHOUSE_PROFILE | Named credentials profile to use |
--timeout | -t | 10 | — | Minutes to wait for async operations before raising a timeout error |
--output | -o | table | — | Output format: table or json |
--version | -v | — | — | Print the installed CLI version and exit |
--help | -h | — | — | Show help and exit |
--output
By default all results are rendered as an ASCII table:
+------------+---------+---------+
| name | type | state |
+------------+---------+---------+
| prod | Managed | RUNNING |
| staging | SQL | STOPPED |
+------------+---------+---------+
With --output json, results are printed as indented JSON:
oh cluster show --output json
[
{"name": "prod", "type": "Managed", "state": "RUNNING"},
{"name": "staging", "type": "SQL", "state": "STOPPED"}
]
--show-sql
Every command accepts a --show-sql flag. When set, the CLI prints the SQL statement that would be sent to the API and exits — no network call is made. This is useful for debugging, auditing, or learning the underlying query syntax.
oh cluster create my-cluster --type Managed --max-ocu 10 --show-sql
CREATE CLUSTER my_cluster OF TYPE Managed WITH (max_ocu = 10);
--timeout
Controls how long (in minutes) the CLI waits for an asynchronous operation to reach a terminal state. The default is 10 minutes.
If an operation times out, the CLI prints:
Timed out after 600s waiting for request <id>. Check status with: onehouse-cli sql status <id>
You can then poll manually:
oh sql status <request-id>
--profile
Selects a named profile from ~/.onehouse/credentials. Equivalent to setting ONEHOUSE_PROFILE. If omitted, the profile referenced by the _default key in the credentials file is used.
oh --profile staging lake show