--output-format to control how results are rendered to stdout:
| Format | Flag | When to use |
|---|---|---|
| Pretty | --output-format pretty (default) | Reading output in a terminal. Aligned key-value pairs with color and nested indentation. |
| JSON | --output-format json | Scripting, piping into jq, saving to a file. Passes through original field order and numeric precision when the response is already JSON. |
| YAML | --output-format yaml | Human-diffable configuration-like output. |
| Table | --output-format table | Array responses where each item has the same shape — e.g. llm models list. |
| TOON | --output-format toon | Token-Oriented Object Notation. Compact, line-oriented, 30–60% fewer tokens than JSON — well-suited for piping into LLM prompts. |
Filter and transform with jq
Use--jq to filter or reshape responses inline with a jq expression. This always outputs JSON and overrides --output-format:
--jq prints plain JSON, it composes well with shells and with other CLI calls:
Pagination and streaming
Some operations return many items or server-sent events. Output is written incrementally as each item arrives:| Format | Streaming behavior |
|---|---|
json | One compact JSON object per line (NDJSON) |
yaml | YAML documents separated by --- |
toon | One TOON-encoded object per block, separated by blank lines |
pretty (default) | Pretty-printed items separated by blank lines |
Paginate through a collection
Pass--all on list commands to follow the next cursor automatically and emit every page as it arrives:
Stream server-sent events
Streaming operations (for example,llm responses create --stream) emit one event per line:
Ctrl+C to stop consuming a stream early.
Color
--color controls terminal colors for the pretty format:
| Value | Behavior |
|---|---|
auto (default) | Colorize when stdout is a TTY, plain text otherwise. |
always | Always colorize. |
never | Never colorize. |
NO_COLOR and FORCE_COLOR environment variables.
Include response headers
Use--include-headers when you need the HTTP response headers alongside the body — for example, to read a request ID for support or inspect a rate-limit header:
Write binary responses to a file
Commands that return binary data (such asllm speech speak) support --output-file to write the body to a path without polluting stdout:
--output-b64 instead when you need to embed the binary payload in a JSON or text pipeline.
Exit codes
| Exit code | Meaning |
|---|---|
0 | Success. Response written to stdout. |
1 | Error. Details written to stderr. |
if-style control flow straightforward in scripts:
--dry-run and --debug, which give you more visibility into why a command failed.