Skip to main content
Every command supports four output formats, selected with a global flag. On a TTY the default is pretty output; everywhere else it is the JSON envelope. When more than one is set, precedence is --toon > --quiet > --json > pretty.

Pretty

The default on a terminal. Lists render as tables, single resources as key-value blocks, and both end with breadcrumbs naming the next command to run.
Tables pick their columns to fit a terminal, so the set of columns depends on the payload. Treat pretty output as something to read, not something to parse - use --json or --toon for anything downstream.

JSON envelope

breadcrumbs is omitted when empty. pagination is present only on list commands.

Quiet

Prints the contents of data and nothing else - no envelope, no breadcrumbs, no pagination. This is the format to use in shell scripts.

TOON

TOON (Token Optimized Output Notation) carries the same data as JSON, re-encoded so that a repeated array is written once as a header naming its fields, followed by one comma-separated row per record. On list commands that is roughly 30-60% fewer tokens than JSON, which matters when the output is going back into an AI assistant’s context. Read it as the JSON it stands for: a header such as projects[3]{id,name,archived}: means the next three lines are rows with those fields in that order.

Pagination

List commands accept --page (1-indexed) and --page-size. The envelope’s pagination object always reports total_records, total_pages, current_page_number, and page_size, so a script can loop by incrementing --page until current_page_number equals total_pages. Defaults and caps differ by command, and a --page-size above the cap is silently clamped to it. Read pagination.page_size in the response to see what you actually got. result-histories list, traces list, and top-errors list are not paginated. Their responses are bounded by the look-back window, the run, and a cap of 20 error groups respectively.
Filter on the server rather than fetching everything and filtering afterwards. --status, --branch, --kind, and --test-entity-id all narrow the response before it is sent.