Toolverse
All skills

create-cli

by steipete

Design command-line interface parameters and UX: arguments, flags, subcommands, help text, output formats, error messages, exit codes, prompts, config/env precedence, and safe/dry-run behavior. Use when you’re designing a CLI spec (before implementation) or refactoring an

Installation

Pick a client and clone the repository into its skills directory.

Installation

Quick info

Author
steipete
Category
UX / Design
Views
4

About this skill

Design command-line interface parameters and UX: arguments, flags, subcommands, help text, output formats, error messages, exit codes, prompts, config/env precedence, and safe/dry-run behavior. Use when you’re designing a CLI spec (before implementation) or refactoring an existing CLI’s surface area for consistency, composability, and discoverability.

How to use

  1. Przygotuj podstawowe informacje o swoim CLI: nazwę komendy i jedno zdanie opisujące jej cel. Określ, czy będzie używana głównie przez ludzi, skrypty czy oba.

  2. Wyjaśnij źródła danych wejściowych – czy będziesz przyjmować argumenty, dane ze standardowego wejścia, pliki czy adresy URL. Zastanów się, jak będziesz obsługiwać dane wrażliwe (nigdy przez flagi).

  3. Zdefiniuj kontrakt wyjścia: czy chcesz tekst dla człowieka, opcję --json dla maszyn, --plain dla skryptów. Określ też kody wyjścia dla głównych scenariuszy błędów.

  4. Zdecyduj o interaktywności: czy CLI będzie pytać użytkownika o potwierdzenie, czy potrzebujesz flagi --no-input dla trybu nieinteraktywnego. Zaplanuj --dry-run dla operacji destrukcyjnych.

  5. Ustal model konfiguracji i kolejność priorytetów: flagi powinny przesłaniać zmienne środowiskowe, które przesłaniają plik konfiguracji projektu, który przesłania konfigurację użytkownika. Wybierz między standardem XDG a konfiguracją lokalną w repozytorium.

  6. Umiejętność wygeneruje kompletną specyfikację: drzewo komend, tabelę argumentów i flag z typami i przykładami, semantykę podkomend, reguły bezpieczeństwa i mapę kodów błędów – gotowe do implementacji.

Related skills