citty
CommunityBuild lightweight TypeScript CLIs quickly
Authornklisch
Version1.0.0
Installs0
System Documentation
What problem does it solve?
Provides a compact, TypeScript-first framework for defining and running command-line interfaces so developers can avoid boilerplate argument parsing, subcommand wiring, and lifecycle management while keeping zero runtime dependencies.
Core Features & Use Cases
- Declarative command definitions: defineCommand expresses metadata, arguments, subcommands, and lifecycle hooks in a single typed object.
- Flexible dispatch modes: runMain handles real processes with help/version handling and exits, while runCommand supports programmatic invocation for testing.
- Lazy and async subcommands: load heavy command implementations on demand via functions or dynamic imports to speed startup.
- Use Case: Create installer or developer tooling CLIs that require positional and boolean options, nested subcommands, consistent help output, and safe cleanup hooks.
Quick Start
Declare your command with defineCommand including args and subCommands, then invoke runMain(main) to parse argv and dispatch.
Dependency Matrix
Required Modules
None requiredComponents
Standard package💻 Claude Code Installation
Recommended: Let Claude install automatically. Simply copy and paste the text below to Claude Code.
Please help me install this Skill: Name: citty Download link: https://github.com/nklisch/skills/archive/main.zip#citty Please download this .zip file, extract it, and install it in the .claude/skills/ directory.
Agent Skills Search Helper
Install a tiny helper to your Agent, search and equip skill from 471,000+ vetted skills library on demand.