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.