CLI(1)
NAME
cli — A declarative, simple, fast, and fun package for building command line tools in Go
SYNOPSIS
INFO
23.9k stars
1.8k forks
0 views
DESCRIPTION
A declarative, simple, fast, and fun package for building command line tools in Go
README
Welcome to urfave/cli
urfave/cli is a declarative, simple, fast, and fun package for building command line tools in Go featuring:
- commands and subcommands with alias and prefix match support
- flexible and permissive help system
- dynamic shell completion for
bash,zsh,fish, andpowershell - no dependencies except Go standard library
- input flags for simple types, slices of simple types, time, duration, and others
- compound short flag support (
-a-b-ccan be shortened to-abc) - documentation generation in
manand Markdown (supported via theurfave/cli-docsmodule) - input lookup from:
- environment variables
- plain text files
- structured file formats (supported via the
urfave/cli-altsrcmodule)
Documentation
See the hosted documentation website at https://cli.urfave.org. Contents of
this website are built from the ./docs directory.
Support
Check the Q&A discussions. If you don't find answer to your question, create a new discussion.
If you found a bug or have a feature request, create a new issue.
Please keep in mind that this project is run by unpaid volunteers.
License
See LICENSE.
SEE ALSO
ripgrep(1)— Recursively search directories for a regex pattern — blazingly fastbat(1)— A cat clone with syntax highlighting and Git integrationjq(1)— Command-line JSON processor — sed for JSON datafx(1)— Terminal JSON viewer and processor — interactive explorationconfig-file-validator(1)— Cross Platform tool to validate configuration files
clihub3/4/2026CLI(1)