cli-expert

Build npm package CLIs with argument parsing and cross-platform compatibility.

Updated Jan 21, 2026
One-click install
npx skills add https://github.com/mahamaneharouna9-cpu/Apex-invoice-billing-automation --skill cli-expert-mahamaneharouna9-cpu
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: cli-expert
Source: https://github.com/mahamaneharouna9-cpu/Apex-invoice-billing-automation/tree/main/.opencode/skill/cli-expert
Command: npx skills add https://github.com/mahamaneharouna9-cpu/Apex-invoice-billing-automation --skill cli-expert-mahamaneharouna9-cpu

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes scripts (resource) and references (resource) components.

What problem does it solve?

This Skill provides expert guidance on building, testing, and distributing command-line interfaces (CLIs) for npm packages, ensuring cross-platform compatibility and adherence to Unix principles.

Core Features & Use Cases

  • CLI Development: Expert advice on project structure, argument parsing, and interactive modes.
  • Cross-Platform Compatibility: Solutions for path separators, line endings, and binary issues.
  • Unix Philosophy: Guidance on designing CLIs that are focused, composable, and text-stream oriented.
  • Use Case: Develop a new npm package that provides a CLI tool for managing project configurations, ensuring it works seamlessly on Windows, macOS, and Linux.

Quick Start

Use the cli-expert skill to help me build a new npm package CLI that can parse arguments and handle interactive prompts.

Frequently Asked Questions about cli-expert

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

FAQPage Schema
How do I build a cross-platform CLI with npm and TypeScript?▼

Build a cross-platform CLI with npm by adhering to Unix philosophy, setting up a robust TypeScript project structure, parsing arguments, and resolving platform-specific behaviors like path separators and line endings to ensure seamless execution across Windows, macOS, and Linux.

What is the Unix philosophy for designing command-line interfaces?▼

The Unix philosophy for designing command-line interfaces emphasizes building tools that are focused, composable, and text-stream oriented. This approach ensures your npm package CLI handles interactive and non-interactive modes efficiently while remaining modular.

Why does my npm CLI shebang get corrupted on Windows?▼

Shebang corruption on Windows occurs due to platform-specific behaviors and line ending differences. Address this CLI issue by applying cross-platform compatibility strategies during project setup to ensure the binary executes correctly across different operating systems.

How do I add interactive prompts to a JavaScript CLI tool?▼

Add interactive prompts to a JavaScript CLI tool by implementing argument parsing and interactive modes within your project structure. This allows your npm package to handle both interactive and non-interactive modes seamlessly during command-line execution.

What's the best way to distribute an npm package CLI globally?▼

Distribute an npm package CLI globally by configuring the PATH environment and applying correct distribution strategies. This ensures the command-line interface is accessible system-wide, resolving common issues like platform-specific binary behaviors during installation.