agentleFS
jackchukajackchuka/skills/dev-cli-consistency-audit/SKILL.md

dev-cli-consistency-audit

Skill15 starsChanged 9 days agoMITView on GitHub

Reviews a CLI tool's command interface for consistency in argument naming, flag conventions, help text, and README alignment. Use when building CLI tools or before releasing CLI updates. Triggers: "review CLI arguments", "align CLI conventions", "CLI consistency check", "make sure commands are aligned", "review command interface".

The file

Show its rules and text

We split this skill into the rules it gives an agent

17 rules. About 0 are common, 7 are distinctive, and 10 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈7

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 10

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    Run the CLI with --help or -h to get the top-level command list

    line 25
  2. Distinctive:

    Check for consistency across all commands:

    line 39
  3. Very specific:

    Do boolean flags follow the same pattern?

    line 47
  4. Distinctive:

    Do error messages follow a consistent format?

    line 59
  5. Distinctive:

    Do the documented flags match the actual implementation?

    line 66
  6. Distinctive:

    Check help text quality:

    line 69
  7. Very specific:

    Do examples in --help text work?

    line 72
  8. Distinctive:

    Update the command implementation (flag names, defaults, etc.)

    line 98
  9. Distinctive:

    Update help text and descriptions

    line 99
  10. Distinctive:

    Update README to match

    line 100
  11. Very specific:

    Run --help again to verify alignment

    line 101
  12. Very specific:

    Positional arguments: Use for the primary subject (e.g., owner/repo).

    line 105
  13. Very specific:

    Flags: Use for modifiers and options.

    line 106
  14. Very specific:

    Boolean flags: Use --flag to enable (default off).

    line 107
  15. Very specific:

    Output format: If supporting multiple formats, use --format=table|json|yaml consistently.

    line 108
  16. Very specific:

    Destructive operations: Default to dry-run or require explicit --confirm.

    line 109
  17. Very specific:

    Verbosity: Use --verbose / -v consistently.

    line 110

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

CLI Consistency Review

Systematic review of a CLI tool's command interface to ensure consistent naming, conventions, and documentation alignment.

Workflow

Step 1: Inventory Commands

  1. Run the CLI with --help or -h to get the top-level command list
  2. For each subcommand, run <cmd> <subcmd> --help to get its full interface
  3. Build an inventory table:
| Command       | Positional Args  | Flags              | Output Formats |
|---------------|------------------|--------------------|----------------|
| pull          | owner/repo       | --issues, --prs    | table, json    |
| search        | [query]          | --type, --limit    | fzf            |
| prune         | owner/repo       | --confirm, --dry-run| table         |

Step 2: Convention Analysis

Check for consistency across all commands:

  1. Positional vs Flag arguments:
    • Is the same concept (e.g., owner/repo) passed as positional in some commands and as --repo flag in others?
    • Recommendation: Pick one approach and apply everywhere
  2. Flag naming:
    • Are similar concepts named consistently? (e.g., --output vs --format vs -o)
    • Do boolean flags follow the same pattern? (--dry-run vs --confirm vs --yes)
    • Are shorthand flags (-f, -o) assigned consistently?
  3. Pluralization:
    • Subcommand names: singular vs plural (e.g., list files vs list file)
    • Flag names: --issue vs --issues
  4. Default behaviors:
    • Are defaults consistent? (e.g., if one command defaults to --format=table, do others?)
    • Are destructive commands safe by default? (require --confirm or --force)
  5. Error messages:
    • Do error messages follow a consistent format?
    • Are they actionable (tell the user what to do)?

Step 3: Documentation Alignment

  1. Compare the README documentation with actual --help output:
    • Are all commands documented?
    • Do the documented flags match the actual implementation?
    • Are examples up to date and runnable?
  2. Check help text quality:
    • Does each command have a one-line description?
    • Are flag descriptions clear and consistent in style?
    • Do examples in --help text work?

Step 4: Report

Present findings:

CLI Consistency Review:

Inconsistencies Found:
1. [Issue] — [Commands affected] — [Suggested fix]
2. ...

Documentation Gaps:
1. [What's missing] — [Where]
2. ...

Recommendations:
1. [Convention to adopt] — [Rationale]
2. ...

Step 5: Apply Fixes

For each accepted fix:

  1. Update the command implementation (flag names, defaults, etc.)
  2. Update help text and descriptions
  3. Update README to match
  4. Run --help again to verify alignment

Best Practices Reference

  • Positional arguments: Use for the primary subject (e.g., owner/repo). Limit to 1-2 positional args.
  • Flags: Use for modifiers and options. Always provide --long-form; add -s shorthand only for frequently used flags.
  • Boolean flags: Use --flag to enable (default off). For "default on" behaviors, use --no-flag to disable.
  • Output format: If supporting multiple formats, use --format=table|json|yaml consistently.
  • Destructive operations: Default to dry-run or require explicit --confirm.
  • Verbosity: Use --verbose / -v consistently. Consider --quiet / -q as well.

Examples

Example 1: Full CLI review

User: "review our cli arguments and make sure they are aligned"
Action:
1. Run --help for all commands
2. Build inventory table
3. Identify naming inconsistencies
4. Check README alignment
5. Present report with specific fixes

Example 2: Pre-release check

User: "make sure our command implementation and comments are aligned"
Action:
1. Compare help text with actual behavior
2. Verify README examples work
3. Check for undocumented flags
4. Update docs to match implementation

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.