cli-developer

Design CLI applications with argument parsing, interactive prompts and shell completion generation in Node.js, Python, and Go.

Updated Aug 23, 2026
One-click install
npx skills add https://github.com/kamelmh/opencode-config --skill cli-developer-kamelmh
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: cli-developer
Source: https://github.com/kamelmh/opencode-config/tree/main/skills/cli-developer
Command: npx skills add https://github.com/kamelmh/opencode-config --skill cli-developer-kamelmh

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

This Skill helps you build reliable command-line tools with clear command structures, strong argument parsing, interactive prompts, and user-friendly terminal output.

Core Features & Use Cases

  • CLI Design: Plan root commands, nested subcommands, flags, positional arguments, and config precedence without breaking existing interfaces.
  • Interactive and Non-Interactive Workflows: Add prompts, progress indicators, color-aware output, completion scripts, and graceful Ctrl+C handling for real-world terminal apps.
  • Use Case: If you are creating a deployment tool, this Skill helps you define commands, validate inputs, generate help text, and support Windows, macOS, and Linux consistently.

Quick Start

Use the cli-developer skill to design a command-line application with subcommands, help output, shell completions, and safe interactive behavior.

Frequently Asked Questions about cli-developer

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

FAQPage Schema
How do I build a cross-platform command-line interface with subcommands and argument parsing?

Build reliable CLI tools by defining root commands, nested subcommands, flags, and positional arguments. This approach ensures strong argument parsing and clear command structures that work consistently across Windows, macOS, and Linux.

How do I add interactive prompts and progress indicators to a terminal application?

Add interactive prompts and progress indicators by implementing color-aware output and TTY-aware interfaces. This workflow also includes generating shell completion scripts and ensuring graceful Ctrl+C handling for real-world terminal applications.

What is the best way to handle help and version flags in a CLI tool?

Handle help and version flags by applying consistent flag conventions during CLI design. This approach requires generating help text, validating inputs, and providing non-interactive fallbacks for automated terminal environments.

Can I use this approach to create CLI tools in Node.js, Python, and Go?

Yes, this approach applies to CLI design and cross-platform terminal application development in Node.js, Python, and Go. It supports defining commands, validating inputs, and handling interactive workflows across these languages.

Why does my command-line tool break when run in a non-interactive environment?

Command-line tools break in non-interactive environments without TTY-aware output and non-interactive fallbacks. Implementing graceful SIGINT behavior and detecting interactive capabilities ensures your CLI works reliably in automated pipelines.