pipecat cloud command shares one output contract and one set of exit codes. Both matter most in CI, where there’s no terminal to read and the exit status is the only signal your pipeline gets.
Output modes
--output is a global option, so it goes before the subcommand:
In
json mode, stdout carries nothing but the JSON payload — every
human-facing message, including errors and progress, moves to stderr. That
means you can pipe stdout straight into a parser without filtering:
Setting it once
The mode resolves in this order, first match winning:- The
--outputflag - The
PIPECAT_OUTPUTenvironment variable, or theoutputkey in your CLI config file - Auto-detection:
richon a terminal,plainotherwise
Exit codes
Declining a confirmation exits 1 rather than 0 — an aborted deploy is a failed
step, not a successful no-op.
Running non-interactively
Rather than let a prompt hang or misread a closed stdin, a command that would prompt checks for an interactive terminal first and exits 2 with the flag that skips the prompt:
A few commands exist only to ask you something —
organizations select and
organizations keys use present a picker and have nothing to bypass. Use
--organization on the individual command instead of selecting one first, and
set PIPECAT_TOKEN rather than authenticating interactively.
These flags skip the prompt, not the check.
agent delete --force still
refuses to delete an agent that doesn’t exist, and deploy --yes still fails
on an invalid config.More Information
Personal access tokens
Authenticate a CI job with PIPECAT_TOKEN
CI with GitHub Actions
A full deployment pipeline