How many of the spec's requirements were verified for this tool.
See /coverage for the full matrix.
Level
Total
Verified
Unverified
MUST
28
19
9
SHOULD
21
13
8
MAY
10
10
0
Audience signal: mixed
This tool sends mixed signals: some agent-readable affordances are present, others are not. Treat the warnings below as friction points, not defects.
This is an informational signal, not an authoritative verdict — see methodology. The per-audit evidence below is the ground truth.
Top Issues
FAILError messages include a hint or remediation phraseFail-Fast, Actionable Errorsstderr lacks a hint phrase. Looked for one of: try , use , expected , did you mean, see , run , for more, tip:, help:, hint:, suggestion:, available . Error messages must name what to do next, not just the symptom.
WARNVersion flag works (`--version` plus short alias)Progressive Help Discovery`--version` works but no short alias responded (tried -V, -v, -version). Adding one shortens version probes for agents.
WARNVersion flag works (`--version` plus short alias)Progressive Help Discovery`--version` works but no short alias responded (tried -V, -v, -version). Adding one shortens version probes for agents.
target satisfies P1 via alternative gate (help-on-bare or stdin-primary)
WARN
Flags advertise env-var bindings in --help
3 flag(s) found in --help but no `[env: NAME]` bindings advertised
PASS
Secret-bearing flags expose stdin or *-file companion
WARN
`--help` advertises default values for flags
no default-value annotations found in --help. SHOULD-tier — agents reading help text need to see what value a flag falls back to when omitted (`[default: <value>]` per clap convention).
WARN
Rich-TUI affordance for TTY contexts
no rich-TUI affordance detected (no `--tui`/`--interactive`/`--ui` flag, no spinner/progress/tui mention in --help). MAY-tier — rich TUI in TTY contexts is a nice-to-have, not required.
no `--output` or `--format` flag advertised; vacuous skip for MAY-tier extra formats.
WARN
Bad invocation exits with structured usage-error code (2)
bad invocation exited with code 1. The 0/1/2/77/78 convention reserves code 2 for usage errors; using a different non-zero code (often 1) blurs the distinction between usage errors and general failure.
SKIP
Errors emit JSON envelope with `error`/`kind`/`message` under `--output json`
binary does not advertise `--output json` in --help; MUST applies only to CLIs that opt into the JSON contract.
SKIP
JSON success and error envelopes share their non-payload key set
binary does not advertise `--output json` in --help; envelope-consistency only applies to CLIs that opt into the JSON contract.
`--version` works but no short alias responded (tried -V, -v, -version). Adding one shortens version probes for agents.
WARN
Version flag works (`--version` plus short alias)
`--version` works but no short alias responded (tried -V, -v, -version). Adding one shortens version probes for agents.
WARN
`examples` subcommand or `--examples` flag for curated usage patterns
no `examples` subcommand or `--examples` flag found. MAY-tier — a curated usage block keeps agents from hunting through long help text.
WARN
Short `-h` summary differs from `--help` long form
`-h` and `--help` produce byte-identical output. SHOULD-tier — clap renders the short summary on `-h` and the full description on `--help` when `long_about` is set; collapsing them gives agents no concise list-level grep target.
PASS
Each subcommand's `--help` ships at least one invocation example
WARN
Help text pairs human and `--output json` example invocations
no paired text + `--output json` example found within 5 lines in top-level or any subcommand `--help`. Pairing keeps agents from reverse-engineering the JSON invocation from the text one.
Error messages include a hint or remediation phrase
stderr lacks a hint phrase. Looked for one of: try , use , expected , did you mean, see , run , for more, tip:, help:, hint:, suggestion:, available . Error messages must name what to do next, not just the symptom.
SKIP
`--output json` produces JSON-formatted errors
binary does not advertise `--output json` in --help; SHOULD applies only to CLIs that opt into the JSON contract.
Destructive subcommands require `--force` or `--yes`
no destructive subcommands detected; MUST applies conditionally to CLIs with destructive operations.
WARN
Read and write surfaces are both visible in subcommand list
read-pattern subcommand(s) present (search) but no write-pattern surface detected. If the CLI is read-only by design the MUST is satisfied vacuously; otherwise the write surface needs an agent-recognizable verb (create/add/update/set/delete/…).
no `--color` flag advertised. MAY-tier — `auto|always|never` lets agents and pipelines override the TTY-based default.
SKIP
Input-accepting commands read from stdin when no file is given
no input-accepting subcommand detected (process/parse/convert/transform/analyze/validate/format/lint/audit); vacuous skip for the conditional SHOULD.
PASS
Subcommand naming follows a consistent verb/noun convention
WARN
Operations are subcommands, not verb-shaped flags
top-level verb-shaped flag(s) found: --list. Operations belong under the `Commands:` block (`tool search "q"`), not on the flag namespace where they fight the `--help` filtering agents rely on.
no `--verbose` / `-v` flag advertised. SHOULD-tier — agents debugging failures need a way to escalate diagnostic detail.
WARN
`--limit` / `--max-results` flag for list operations
list-style subcommand present but no limit flag advertised (looked for --limit, --max-results, --max, --top, -n). SHOULD-tier — callers should be able to bound response size directly rather than scrape-then-truncate.
WARN
Cursor-based pagination flags for list traversal
list-style subcommand present but no cursor/page flag advertised (looked for --after, --before, --cursor, --page, --offset). MAY-tier — cursor pagination lets agents traverse large result sets without re-scanning earlier pages.
SKIP
`--timeout` flag for long-running operations
no long-running subcommand detected (serve/daemon/watch/tail/monitor/follow/run/start/stream); vacuous skip for the conditional SHOULD.
WARN
Help text advertises TTY-aware verbosity behavior
no TTY-aware language found in `--help`. MAY-tier — automatic verbosity reduction when stdout is piped or redirected lets agents skip the explicit `--quiet` flag. Behavioral probes cannot simulate a real TTY without a pty crate, so this audit relies on documented intent.
Skill bundle has install path (`tool skill install [<host>]`)
PASS
`skill install --all` for multi-runtime install
PASS
`skill update` / `skill upgrade` for bundle refresh
Details
Version scored
0.13.0
Audit date
2026-06-01 17:34:05 UTC
Duration
330ms
Platform
linux/x86_64
Mode
command
Anc build
0.5.0
Install
brew install xsv
Embed the badge
The badge floor is 70%; this scorecard is at 65% (5 points below). Once the score clears the floor, the embed snippet will appear here. The top issues above are the place to start.
Reproduce this scorecard for xsv locally and inspect the failing audits:
anc audit --command xsv --output json
Install anc first if you don't have it.
Add --output json to get the same JSON shape committed under
scorecards/.