999 B
| status |
|---|
| accepted |
Default to JSON everywhere
Automation agents are the primary consumers, so the shortest invocation must
produce the stable machine interface. The CLI defaults to JSON regardless of
whether stdout is a terminal or pipe; human-readable presentation requires
--format human. Avoiding TTY-dependent format selection ensures that the same
command has the same framing and semantics in every execution environment.
JSON mode never emits interactive prompts; required confirmation is represented
as a structured error and satisfied by an explicit flag.
Clap discovery requests are intentionally outside the operation-result
protocol. Root and subcommand --help, plus --version, return conventional
plain UTF-8 text on stdout with status 0 and no stderr. They do not initialize
the runtime or execute an operation. This narrow exception keeps the CLI
self-describing for both people and automation agents without weakening JSON
framing for analysis and cleanup commands.