Skip to main content
Every command supports --output-format to control how results are rendered to stdout:

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:
Because --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:

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:
Press Ctrl+C to stop consuming a stream early.

Color

--color controls terminal colors for the pretty format: The CLI also respects the widely used 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 as llm speech speak) support --output-file to write the body to a path without polluting stdout:
Use --output-b64 instead when you need to embed the binary payload in a JSON or text pipeline.

Exit codes

This makes if-style control flow straightforward in scripts:
See debug and inspect for --dry-run and --debug, which give you more visibility into why a command failed.