Skip to content
kix /docs
Install the CLI

Reference CLI

Output formats

Which `kix` commands honour `-o text`, `json`, `yaml`, and `markdown`, what each command prints by default, and what happens with a format a command does not support.

The global -o/--output flag takes text, json, yaml, or markdown. Each command chooses its own default and decides which values it supports. A value a command does not support is not an error: the command falls back to the output shown in the table below. Add -q when a script parses the result, so that progress lines do not mix with it. kix plan sends its progress lines to stderr for every format except text.

This page is hand-maintained. Check the output_format and global.output reads in cli/kix-cli/src/commands/ when in doubt.

CommandDefaulttextjsonyamlmarkdown
buildyamlYAMLJSONYAMLYAML
difftextTextPlan document as JSONPlan document as YAMLMarkdown for pull request comments
plan, deploy --dry-runtextTextPlan document as JSONPlan document as YAMLMarkdown for pull request comments
checktextTextJSONYAMLText
list clusters, list packagestextTextJSONYAMLText
graphtext (tree)TreeJSONYAMLTree
inspecttextTextJSONYAMLText
statustextTableJSONYAMLTable
rollback --listtextTextJSONYAMLText
imagestextOne image per lineJSONYAMLText
drifttextTextJSONTextText
pin set, pin check, pin listtextTextJSONTextText
compliance sbom, compliance attestjsonJSONJSONYAMLJSON

Command-specific flags take priority over -o:

  • kix check --sarif prints SARIF 2.1.0 whatever -o says.
  • kix graph --format tree|dot|json overrides -o; dot is only available through --format.
CommandOutput
deploy (without --dry-run)A deploy event stream selected by --log-format pretty|line|json. See kix deploy.
rollback (without --list), gc, migrate domainPlan, prompt, and progress text
healthText
export, snapshot save, compliance auditFiles in a directory
logs, pfkubectl’s own output
completionsA shell script

Text output is coloured when stdout is a terminal. --no-color, a set NO_COLOR, or TERM=dumb turns it off. JSON and YAML output are never coloured. Deploy and gc progress lines currently still contain terminal clear-line control sequences with --no-color; redirecting stderr may therefore preserve those sequences.