P7: Bounded, High-Signal Responses
Definition
CLI tools MUST provide mechanisms to control output volume. Agent context windows are finite and expensive: a tool that
dumps tens of thousands of lines of unfiltered output wastes tokens on every request and can exceed smaller context
windows entirely, breaking the conversation that invoked it. "High-signal" here means the bytes that survive --quiet
are the ones the caller asked for (data and errors), not progress, decoration, or chatter.
Why Agents Need It
Unbounded CLI output is expensive for any agent: token cost and context-window capacity for LLM agents, parse cost and
memory pressure for scripts, schedulers, and other automation. Either way, the agent ends up truncating (losing
potentially important data) or consuming the full response (wasting cycles on noise). Bounded output with --quiet,
--verbose, and --limit flags gives the agent precise control over how much data arrives, keeping responses
high-signal and inside budget.
Requirements
Evidence
- A
--quietflag that respects both CLI and environment-variable input, with explicit override semantics (e.g.,--quiet=falsebeatsQUIET=1). - A diagnostic macro (or equivalent gate) that short-circuits when
quietis true. --limitor--max-resultson every list / search command.- Pagination clamping logic (e.g.,
min(requested, MAX_RESULTS)). --timeoutflag with a sensible default.--verboseflag for diagnostic escalation.- A
suppress_diag()method that returns true when quiet is set or when the output format is JSON / JSONL.
Anti-Patterns
- List commands that return all results with no default limit: an agent listing 50,000 items floods its context window.
- No
--quietflag: agents consuming JSON output still receive interleaved diagnostic text on stderr. --verboseas the only output control. If there is no way to reduce output, bounded responses do not exist.- Progress bars or spinners that write to stderr in non-TTY contexts, adding noise to agent logs.
- No
--timeouton network operations. A stalled request blocks the agent indefinitely.
Measured by audit IDs p7-quiet, p7-limit, p7-timeout. Run anc audit --principle 7 . against the CLI under test
to see each.