--force.
Data goes to stdout, everything else to stderr
Results go to stdout. Spinners, footers, receipts, warnings, and empty-state hints go to stderr. Redirecting stdout therefore gives you clean data with no commentary in it.profile: … · region: … footer went to your terminal, not into the file.
This is why the CLI can print a friendly footer on every table without breaking a single pipeline. If you have ever had to
grep -v a tool’s own status output back out of your data, this is the problem being avoided.Exit codes
Stable and safe to branch on:Running non-interactively
The CLI notices whether a human is watching and adapts, without being told:Progress
Animation is suppressed when stderr is not a terminal, under
TERM=dumb, and under --quiet.Colour
Disabled when
NO_COLOR is set, under TERM=dumb, and with --no-color.Prompts
--no-input makes any prompt a hard failure that names the flag to pass instead.Destructive commands
delete, void, cancel, terminate, archive, and finalize confirm before acting. In a script, pass --force:
--force is a per-command flag, so it goes after the resource and action — see Global flags.
A worked CI example
--no-input guarantees the job can never hang on a prompt, --quiet keeps the log readable, set -e plus stable exit codes means a failure stops the build, and the key comes from the environment so it never appears in the process list.
Next steps
Global flags
Every flag, grouped by what it controls.
Authentication
Credential precedence and CI setup.

