skills-cli/cli-audit/SKILL.md
Use when the user says: "audit this CLI", "CLI quality check", "full CLI review", "CLI UX audit". Comprehensive CLI tool quality audit across all dimensions — hardening, output, clarity, affordances, and complexity.
npx skillsauth add NodeJSmith/Claudefiles cli-auditInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Run a comprehensive quality audit of a CLI tool across all cli-* dimensions. Produces a single prioritized report covering hardening, output design, message clarity, discoverability, and complexity.
$ARGUMENTS — path to a CLI script or tool, or blank to target the current branch's changed files.
Identify what to audit:
git-branch-diff-files | grep -E '\.(sh|bash|py|ts|js)$')/cli-audit path/to/script.sh) or run on a branch with CLI file changes."Read the REFERENCE.md for each sibling skill. If any file is not found, stop and report the missing path(s) to the user rather than proceeding without reference material.
${CLAUDE_HOME:-~/.claude}/skills/cli-harden/REFERENCE.md — edge-case resilience${CLAUDE_HOME:-~/.claude}/skills/cli-output/REFERENCE.md — output design${CLAUDE_HOME:-~/.claude}/skills/cli-clarify/REFERENCE.md — message clarity${CLAUDE_HOME:-~/.claude}/skills/cli-affordances/REFERENCE.md — discoverability${CLAUDE_HOME:-~/.claude}/skills/cli-distill/REFERENCE.md — complexityEvaluate the tool against each dimension. Score each area:
Present a scorecard followed by prioritized findings:
## CLI Audit: <tool name>
| Dimension | Score | Top Finding |
|---------------|----------|--------------------------------|
| Hardening | Strong | — |
| Output | Weak | Tables overflow on narrow terminals |
| Clarity | Adequate | Help text missing examples |
| Affordances | Weak | No tab completion, 3 dead flags|
| Complexity | Strong | — |
Then list all findings grouped by severity (Risk → Gap → Improvement), with file and line references.
Run get-skill-tmpdir cli-audit and write the full scorecard and findings to <tmpdir>/audit-YYYY-MM-DD.md. Tell the user where the file was saved.
AskUserQuestion:
question: "Here's the audit. How would you like to proceed?"
header: "Confirm"
options:
- label: "Fix all"
description: "Address all risks and gaps across every dimension."
- label: "One dimension"
description: "I'll pick which dimension to focus on."
- label: "Let me pick"
description: "I'll choose individual findings to address."
- label: "Stop here"
description: "The audit report is enough — don't change anything."
If "Fix all" → implement all risks + gaps. If "One dimension" → ask which:
AskUserQuestion:
question: "Which dimension would you like to focus on?"
header: "Dimension"
options:
- label: "Hardening"
description: "Fix edge-case resilience findings only."
- label: "Output"
description: "Fix output design findings only."
- label: "Clarity"
description: "Fix message clarity findings only."
- label: "Affordances"
description: "Fix discoverability findings only."
If the user selects "Other" and types "Complexity", use cli-distill findings. Then implement only that dimension's findings. If "Let me pick" → present findings individually for accept/reject. If "Stop here" → end.
Fix each accepted finding. After all changes:
pytest for Python, go test for Go, npm test/jest/vitest for Node/TS, bats for shell). Use timeout 300 on all invocations./mine.challenge if scope was largedevelopment
Use when the user says: 'create an issue', 'file an issue', 'open an issue', 'write an issue', 'new issue for this'. Codebase-aware issue creation — investigates the code to produce well-structured issues with acceptance criteria, affected areas, and enough detail for automated triage.
development
Use when the user says: 'triage issues', 'classify issues by complexity', 'assess issue complexity', 'find quick wins', 'which issues are small', 'batch issue assessment'. Batch codebase-aware issue triage — parallel Haiku subagents assess actual complexity and effort by reading the code, not just titles.
development
Use when the user says: "review my changes", "run the reviewers", "code and integration review", "readability review", "maintainability review", "sniff test this", "WTF check", "code smells", "is this code any good", "fresh eyes on this branch", "review this directory", "check this module". Dispatches three parallel reviewers — code, integration, and a readability pass — and consolidates findings into one prioritized report.
development
Use when the user says: "clean code check", "style review", "LLM smell check", "code hygiene", "nitpick this", "style check", "find style sins", "nitpicker review", "anal retentive review", "exhaustive style review", "no-filter style report". Dispatches three parallel stylistic checkers — llm-checker (training-bias patterns), lazy-checker (deferred debt), and nitpicker (style hygiene) — and consolidates findings into a report organized by checker with a Summary section for orchestration consumption.