create-cli_skill

This skill helps you design a clear, consistent CLI surface with commands, flags, prompts, and error handling for better usability.
  • Python

2.5k

GitHub Stars

2

Bundled Files

2 months ago

Catalog Refreshed

4 months ago

First Indexed

Readme & install

Copy the install command, review bundled files from the catalogue, and read any extended description pulled from the listing source.

Installation

Preview and clipboard use veilstrat where the catalogue uses aiagentskills.

npx veilstrat add skill openclaw/skills --skill create-cli

  • _meta.json274 B
  • SKILL.md3.6 KB

Overview

This skill designs the command-line interface parameters and user experience for a tool before implementation. It produces a compact, implementable CLI specification covering command tree, flags, I/O, error codes, config precedence, safety and example invocations.

How this skill works

I ask a small set of clarifying questions (command name, primary user, input/output contracts, interactivity and config model) and apply a default rubric based on CLI best practices. Then I generate a concise spec: usage synopsis, args/flags table, subcommand semantics, I/O rules, exit codes, config precedence, safety behaviors, shell completion notes, and 5–10 example invocations.

When to use it

  • Designing a new CLI surface before writing code.
  • Refactoring or standardizing an existing CLI for consistency.
  • Specifying machine- and human-friendly output formats.
  • Defining safety and non-interactive behaviors for automation.
  • Auditing CLI discoverability and completion/install story.

Best practices

  • Ask minimal clarifying questions; use sensible defaults if unsure.
  • Keep primary data on stdout and diagnostics on stderr; add --json and --plain.
  • Make prompts conditional on TTY; provide --no-input and --force for automation.
  • Follow clear precedence for flags > env > project config > user config > system.
  • Define explicit exit codes for parse/validation, generic failures, and common error modes.
  • Document example invocations including piped stdin and config-file scenarios.

Example use cases

  • Design a new deploy CLI: name, subcommands, flags, dry-run, and confirmation rules.
  • Refactor a backup tool to add --json output and consistent exit codes for automation.
  • Specify config precedence and environment variables for a cross-platform single-binary tool.
  • Create a help/usage tree and completion install instructions for discoverability.
  • Add safe defaults: --dry-run, --no-input, and explicit --confirm token for destructive ops.

FAQ

I ask for command name + one-line purpose, primary user (human/scripts), input sources, desired outputs, interactivity expectations, config model, and platform/runtime constraints.

Do you recommend specific libraries or languages?

Not by default. I stay language-agnostic unless you ask, but I can suggest parsing libraries upon request.

Will you produce example invocations?

Yes — 5–10 representative examples including TTY/non-TTY, piped stdin, and dry-run/force flows.

Built by
VeilStrat
AI signals for GTM teams
© 2026 VeilStrat. All rights reserved.All systems operational