Reference · Rankings
CLI Rankings
Ranked CLIs ¶
Each CLI is reviewed against ten standard dimensions. Pass = 10 pts, Partial = 5 pts, Fail = 0 pts, Intentional tradeoff = 5 pts. Maximum score is 100. See the methodology section below for full dimension definitions.
| Rank | CLI | Score | Version | Strengths | Key gaps |
|---|---|---|---|---|---|
| 1 | gws — Google Workspace CLI |
72 | v0.16.0 | JSON-first output, documented exit codes, --dry-run everywhere, env vars fully documented |
-v mis-routed to service parser, no --quiet, inconsistent help renderers |
| 2 | hs — HubSpot CLI |
52 | v8.1.0 | Consistent help system, strong verb vocabulary, --debug on every command, per-command examples |
No JSON output, -v/-V silently discarded, exit codes undocumented, no --quiet |
Scoring methodology ¶
Scores are calculated across ten standard dimensions derived from the WebCLI design patterns, synthesized from git, bash, curl, npm, docker, pip, grep, ssh, wget, and make. Each dimension is worth up to 10 points for a maximum total of 100.
| # | Dimension | What is checked |
|---|---|---|
| 1 | Help system | -h/--help works at every level; consistent renderer throughout |
| 2 | --version | --version and -V both present and print version string correctly |
| 3 | Verbose flag | -v/--verbose intercepted and handled; not misrouted or silently dropped |
| 4 | Quiet flag | -q/--quiet suppresses non-data output; safe for CI and piping |
| 5 | Output streams | Errors go to stderr; data goes to stdout; non-zero exit on failure |
| 6 | Machine-readable output | JSON (or equivalent) output mode available; safely pipeable to jq |
| 7 | Exit codes | Distinct codes documented in --help; caller can branch without parsing text |
| 8 | Flag naming | Kebab-case flags throughout; no camelCase leaks; short aliases consistent |
| 9 | Subcommand structure | Consistent verb/noun or noun/verb pattern; predictable command discovery |
| 10 | Composability | Pipeable output, --dry-run, shell completion, or equivalent scripting options |
Score values
Pass = 10 pts · Partial = 5 pts · Fail = 0 pts · Intentional tradeoff = 5 pts (architecture-driven divergence from convention; not penalized as a full failure but does not earn full credit).