create-cliDesign 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.
Install via ClawdBot CLI:
clawdbot install steipete/create-cliDesign CLI surface area (syntax + behavior), human-first, script-friendly.
agent-scripts/skills/create-cli/references/cli-guidelines.md and apply it as the default rubric.Ask, then proceed with best-guess defaults if user is unsure:
--json, --plain, exit codes.--no-input? confirmations for destructive ops?When designing a CLI, produce a compact spec the user can implement:
--json/--plain; --quiet/--verbose.--dry-run, confirmations, --force, --no-input.-h/--help always shows help and ignores other args.--version prints version to stdout.--json for machine output; consider --plain for stable line-based text.--no-input disables prompts.--force or explicit --confirm=....NO_COLOR, TERM=dumb; provide --no-color.Fill these sections, drop anything irrelevant:
mycmd...mycmd [global flags] [args] mycmd init ...mycmd run ...-h, --help--version-q, --quiet / -v, --verbose (define exactly)--json / --plain (if applicable)0 success1 generic failure2 invalid usage (parse/validation)Generated Mar 1, 2026
Designing a CLI for a deployment automation tool used by engineers to manage cloud infrastructure. The CLI must support subcommands for provisioning, scaling, and monitoring, with flags for environment and region, ensuring it works in both interactive and CI/CD pipeline contexts.
Refactoring an existing CLI for a data processing platform to improve consistency and discoverability. The CLI handles ETL jobs, data validation, and reporting, requiring clear error codes, JSON output for scripting, and safe dry-run modes for destructive operations.
Creating a CLI for a healthcare management system that allows administrators to manage patient records and generate reports. The design prioritizes security with config precedence for secrets, non-interactive modes for batch processing, and strict output formatting for compliance.
Enhancing a CLI for an e-commerce platform to handle inventory updates, order processing, and analytics. The CLI needs subcommands for different store functions, support for both human-readable and machine JSON output, and confirmation prompts for high-risk actions like bulk deletions.
Designing a new CLI from scratch for an open-source project that manages code repositories. The CLI includes subcommands for cloning, merging, and issue tracking, with global flags for verbosity and color output, targeting both developers and automated scripts.
Offering the CLI as part of a cloud-based software service with tiered pricing based on usage or features. Revenue is generated through monthly or annual subscriptions, often targeting enterprises for scalable automation solutions.
Selling the CLI under a proprietary license to large organizations for internal use, with custom support and integration services. Revenue comes from one-time purchases or annual licensing agreements, focusing on security and compliance needs.
Providing a basic version of the CLI for free as open-source software, with premium features or advanced support available for paid upgrades. Revenue is generated from paid plans, consulting, or donations, appealing to both individual developers and businesses.
💬 Integration Tip
Ensure the CLI supports config precedence (flags > env > config files) and provides clear exit codes for easy integration into scripts and CI/CD pipelines.
Remote-control tmux sessions for interactive CLIs by sending keystrokes and scraping pane output.
Command-line tool to manage Google Workspace services including Gmail, Calendar, Drive, Sheets, Docs, Slides, Contacts, Tasks, People, Groups, and Keep.
Runs shell commands inside a dedicated tmux session named claw, captures, and returns the output, with safety checks for destructive commands.
A modern text-based browser. Renders web pages in the terminal using headless Firefox.
Write robust, portable shell scripts. Use when parsing arguments, handling errors properly, writing POSIX-compatible scripts, managing temp files, running commands in parallel, managing background processes, or adding --help to scripts.
NotebookLM CLI wrapper via `node {baseDir}/scripts/notebooklm.mjs`. Use for auth, notebooks, chat, sources, notes, sharing, research, and artifact generation/download.