Skip to main content

Global flags and output formats

Last updated on

The Harness CLI provides a set of flags that work consistently across commands. Use these flags to control scope, output formatting, pagination, and command behavior. This page serves as a reference for the shared flags available throughout the CLI.


What will you learn in this topic?

By the end of this page, you will know how to:

  • Control the account, organization, and project scope of commands.
  • Switch between supported output formats.
  • Customize which fields appear in command output.
  • Paginate through large result sets or retrieve all results.
  • Configure the CLI using environment variables.

Before you begin


Scope flags

Use scope flags to control which account, organization, and project a command operates against. The CLI resolves scope in the following order: command-line flags, profile defaults, and then environment variables.

FlagDescription
--profile <name>Use a specific authentication profile.
--org <id>Override the organization defined in the active profile.
--project <id>Override the project defined in the active profile.
--level account|org|projectSpecify the scope for resources that support multiple levels.
harness list secret --level account
harness list pipeline --org platform --project production
harness list connector --level org --org platform --profile prod

Output formats for list commands

By default, list commands display results in a table. Use --format to produce machine-readable output or export data for external tools.

FormatUse caseNotes
tableInteractive terminal useDefault format for list commands
jsonIntegration with tools that consume JSONReturns a formatted JSON array
jsonlStreaming and line-based processingOutputs one JSON object per line
csvSpreadsheet and reporting toolsIncludes a header row
tsvTab-delimited processingIncludes a header row
markdownDocumentation, pull requests, and wikisRenders output as a Markdown table
harness list pipeline --format json
harness list pipeline --format jsonl | jq -r '.id'
harness list pipeline --format csv > pipelines.csv
harness list pipeline --json

Customize columns

Use --columns to control which columns appear in list output. Run --list-columns to view the available columns for a resource.

harness list pipeline --list-columns
harness list pipeline --columns "name,id,project,lastRun"
harness list pipeline --columns "+lastRun"
harness list pipeline --columns "Name:it.name"

Output formats for get, create, and update commands

Commands that operate on a single resource default to human-readable text output. Use the following flags to change the format or save output to a file.

FlagDescription
--format text|jsonOutput format. Default is text.
--jsonShorthand for --format json.
--list-fieldsDisplay available field identifiers and exit.
--rawReturn the complete API response envelope (JSON output only).
-o, --out <path>Write output to a file instead of standard output.
harness get pipeline my-pipeline --format json
harness get pipeline my-pipeline --raw --format json
harness get pipeline my-pipeline -o pipeline.yaml

Pagination flags

List commands return paginated results by default. Use these flags to control how many records are returned.

FlagDescription
--allRetrieve all available results.
--limit <N>Return up to N results.
--offset <N>Skip the first N results.
--countReturn the total number of results without retrieving records.

These options are mutually exclusive. Use either --all, --limit and --offset, or --count.

harness list pipeline --count
harness list pipeline --all --format jsonl
harness list pipeline --limit 25 --offset 50

Next steps

  • Go to Platform for detailed examples of platform resource operations.
  • Go to Troubleshooting to resolve common CLI errors.