Use when you have a written implementation plan to execute in a separate session with review checkpoints
npx skills add 404kidwiz/claude-supercode-skills --skill "cli-developer"
Install specific skill from multi-skill repository
# Description
Expert in building Command Line Interfaces (CLIs), Terminal User Interfaces (TUIs), and shell automation tools. Use when creating CLI applications, building interactive terminal UIs, parsing command-line arguments, or developing shell scripts and automation tools.
# SKILL.md
name: cli-developer
description: Expert in building Command Line Interfaces (CLIs), Terminal User Interfaces (TUIs), and shell automation tools. Use when creating CLI applications, building interactive terminal UIs, parsing command-line arguments, or developing shell scripts and automation tools.
CLI Developer
Purpose
Provides expertise in building robust, user-friendly command-line applications and terminal interfaces. Covers argument parsing, interactive prompts, TUI frameworks, and shell automation across multiple languages.
When to Use
- Building CLI applications in any language
- Creating interactive terminal user interfaces
- Implementing command-line argument parsing
- Building shell scripts and automation tools
- Adding progress bars, spinners, and colors
- Creating REPL-style applications
- Distributing CLI tools as packages
Quick Start
Invoke this skill when:
- Building CLI applications in any language
- Creating interactive terminal user interfaces
- Implementing command-line argument parsing
- Building shell scripts and automation tools
- Creating REPL-style applications
Do NOT invoke when:
- Building GUI desktop applications (use windows-app-developer)
- Creating web-based interfaces (use frontend skills)
- Writing PowerShell-specific tools (use powershell skills)
- Building mobile applications (use mobile-developer)
Decision Framework
CLI Framework Selection:
βββ Node.js β Commander.js, Yargs, Oclif
βββ Python β Click, Typer, argparse
βββ Go β Cobra, urfave/cli
βββ Rust β Clap, structopt
βββ TUI needed
β βββ Node.js β Ink, Blessed
β βββ Python β Textual, Rich
β βββ Go β Bubbletea, tview
β βββ Rust β Ratatui, crossterm
βββ Simple script β Shell (bash/zsh)
Core Workflows
1. CLI Application Setup
- Choose framework based on language/needs
- Define command structure and subcommands
- Implement argument and option parsing
- Add input validation and help text
- Implement core command logic
- Add output formatting (JSON, table, etc.)
- Package for distribution
2. Interactive TUI Development
- Select TUI framework
- Design screen layout and components
- Implement input handling and navigation
- Add state management
- Handle terminal resize events
- Test across different terminal emulators
3. CLI Distribution
- Add proper versioning
- Create man pages or help docs
- Package for target platforms
- Set up installation via package managers
- Create shell completions
- Add update mechanism
Best Practices
- Follow POSIX conventions for flags and arguments
- Provide both short (-v) and long (--verbose) options
- Include --help and --version flags
- Use exit codes properly (0 for success)
- Support piping and stdin input
- Add shell completion scripts
Anti-Patterns
| Anti-Pattern | Problem | Correct Approach |
|---|---|---|
| No help text | Users can't discover commands | Add comprehensive --help |
| Silent failures | Users don't know what went wrong | Clear error messages + exit codes |
| Hard-coded paths | Breaks on other systems | Use environment variables, XDG |
| No stdin support | Can't pipe data | Support reading from stdin |
| Colored output to pipes | Breaks parsing | Detect TTY, disable colors for pipes |
# Supported AI Coding Agents
This skill is compatible with the SKILL.md standard and works with all major AI coding agents:
Learn more about the SKILL.md standard and how to use these skills with your preferred AI coding agent.