Define, implement, and review command-line interface behavior for CLI tools. Use when designing commands/subcommands, flags/args, help text, stdout/stderr contracts, exit codes, interactivity, and automation compatibility.
Use this skill to keep a CLI predictable, script-friendly, and human-friendly.
Primary references:
--help, --version, long options)--, options-before-args discipline)Activate when the task includes any of the following:
-h and --help; both must show help and exit successfully.--version; print version information to stdout and exit successfully.0 for success, non-zero for failure.-- to end option parsing when operands may start with -.update vs upgrade) unless clearly distinct.-h, --help--version-v/--verbose (pick one semantics and stay consistent)-q, --quiet-n, --dry-run-f, --force-o, --output--json (or an equivalent stable format).--no-input, --json, stable exit semantics).--help, --version, long options)For each CLI change, produce: