alecthomas/kingpin

CONTRIBUTIONS ONLY: A Go (golang) command line and flag parser

View on GitHub ↗Jump to charts ↓

Summary Information

Updated 18 minutes ago
Type:Library / SDKCategory(s):CLI UtilitiesDeveloper Tools
Added to GitGenius on September 19th, 2026
Created on May 14th, 2014
Open Issues & Pull Requests: 28 (+0)
GitHub issues: Enabled
Number of forks: 279
Total Stargazers: 3,568 (+0)
Total Subscribers: 42 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 274.0 days
Mean response time: 253.3 days
90th percentile: 480.8 days
Tracked items: 3

Most active contributors

Sign in to see contributor activity.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 2
New in 7 days: 0
Closed in 7 days: 0
Avg open age: 523 days
Stale 30+ days: 0
Stale 90+ days: 0

Recent activity

Opened in 7 days: 0
Closed in 7 days: 0
Comments in 7 days: 0
Events in 7 days: 0

Top labels

No label distribution available yet.

Most active issues this week

No issue events were indexed in the last 7 days.

Detailed Description

Kingpin is a command-line and flag parser for Go that uses a fluent-style, type-safe API.

Kingpin solves the problem of parsing command-line arguments, flags, and subcommands in Go applications. It uses a fluent interface that chains method calls to define the structure of a CLI, allowing developers to specify flags, nested commands, and positional arguments in a readable, declarative way. The parser generates contextual help automatically at any point in the command line, prioritizing user-facing documentation alongside argument parsing.

Kingpin suits projects that need straightforward command-line interfaces with nested subcommands, repeatable flags, and custom argument parsing. The tool is feature-stable and handles common CLI patterns including shell completion for Bash, ZSH, and Fish. Developers should be aware that the original maintainer no longer actively develops the project and now uses an alternative tool; the project operates on a contributions-only basis, meaning fixes and new features depend on community pull requests.

The project is in a stable but unmaintained state. There are known bugs that remain unfixed due to lack of active development capacity. The tool is no longer used by its original author for new work.