cli-guidelines-resources-05

Converts CLI guideline Skill Units into semantic metadata for RAG ingestion.

9|Updated Jan 31, 2017
One-click install
npx skills add https://github.com/ssiumha/dots --skill cli-guidelines-resources-05
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: cli-guidelines-resources-05
Source: https://github.com/ssiumha/dots/tree/main/prompts/skills/cli-guidelines
Command: npx skills add https://github.com/ssiumha/dots --skill cli-guidelines-resources-05

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

Properly designed arguments and flags reduce confusion and prevent incorrect usage.

Core Features & Use Cases

  • Standard long and short forms, boolean flags, and --no- prefixed negations
  • Positionals, optional flags, and multi-value arguments
  • Clear guidance on ordering and defaults

Quick Start

Apply a consistent flag design and help text to all CLI commands.

Frequently Asked Questions about cli-guidelines-resources-05

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I design CLI arguments and flags that users won't misuse?

Well-designed arguments and flags reduce confusion by using consistent long and short forms, clear boolean flags with --no- prefixes for negations, and explicit help text. Establish ordering conventions, document defaults, and distinguish between positionals, optional flags, and multi-value arguments so users understand what each parameter does.

What's the difference between positional arguments, optional flags, and multi-value arguments in CLI design?

Positional arguments are required values passed in order; optional flags are named parameters prefixed with -- or - that users can omit; multi-value arguments accept repeated or space-separated inputs. Combining them clearly—with consistent naming and help text—prevents misinterpretation and wrong usage patterns.

How should I structure long and short flag forms for better user experience?

Use consistent naming conventions with both forms available: short flags (-f) for frequent use and long flags (--flag-name) for clarity. Apply the same pattern across all commands, document both forms in help text, and use kebab-case for long flags to maintain readability and predictability.

When should I use --no- prefixed flags instead of separate boolean options?

Use --no- prefixes for negations of default-true behaviors to reduce flag count and clarify intent. For example, --no-cache disables caching more explicitly than a separate --cache-disabled flag, making the CLI surface smaller and more intuitive for users familiar with standard conventions.

What guidelines prevent users from passing arguments in the wrong order?

Document clear ordering rules, use named flags (--name value) instead of relying on position, mark required versus optional arguments, and provide consistent help text. Positional arguments should follow a predictable sequence; optional flags work in any order, reducing user errors from positional confusion.

How do I set sensible defaults for CLI flags and document them effectively?

Define defaults explicitly in help text so users know what happens when they omit a flag. Display the default value in documentation (e.g., --timeout 30s [default: 30]), test that defaults work safely, and ensure flags align with common use cases to minimize the need for users to override them.