Verbosity levels
Why it matters
CI pipelines need quiet mode — mytool build --quiet so the log does not balloon with per-file output. Debugging sessions need verbose mode — mytool build -v to see which request failed or which config was loaded. A CLI that only outputs one noise level forces users into either information overload in CI or flying blind during incidents. Registering --verbose but never reading it in handlers is a worse sin: the flag looks supported, users trust it, and it silently does nothing.
Severity rationale
Low because missing verbosity flags degrade debugging and CI output but do not affect core functionality.
Remediation
Add --verbose/-v and --quiet/-q as global options in src/cli/index.ts and route all logging through a helper that honors them:
program.option('-v, --verbose').option('-q, --quiet')
function log(msg: string, { quiet, verbose }: Opts) {
if (quiet) return
console.error(msg)
}
function debug(msg: string, { verbose }: Opts) {
if (verbose) console.error(`[debug] ${msg}`)
}
DetectionPro
The detection method for this pattern is part of AuditBuffet Pro.
The full method (what to look for, pass and fail conditions, and how results get reported) ships inside the CLI Quality Audit. The pattern definition, severity rationale, and remediation remain openly licensed under CC-BY-4.0.
Taxons
History
- 2026-04-18·v1.0.0·Initial import from cli-quality·automated