Command Line / Standard CLI

51 packages

Packages (51)

cobra

Commander for modern Go CLI interactions.

43,995 3,153

urfave/cli

Simple, fast, and fun package for building command line apps in Go (formerly codegangsta/cli).

24,093 1,786

elvish

An expressive programming language and a versatile interactive shell.

6,314 324

kingpin

Command line and flag parser supporting sub commands (superseded by `kong`; see below).

3,563 278

Dnote

A simple command line notebook with multi-device sync.

3,037 123

pflag

Drop-in replacement for Go's flag package, implementing POSIX/GNU-style --flags.

2,738 372

go-flags

go command line option parser.

2,700 322

go-arg

Struct-based argument parsing in Go.

2,257 114

carapace-bin

Multi-shell multi-command argument completer.

1,833 125

ops

Unikernel Builder/Orchestrator.

1,496 142

carapace

Command argument completion generator for spf13/cobra.

1,321 38

liner

Go readline-like library for command-line interfaces.

1,095 133

complete

Write bash completions in Go + Go command bash completion.

955 71

flaggy

A robust and idiomatic flags package with excellent subcommand support.

949 33

mow.cli

Go library for building CLI applications with sophisticated flag and argument parsing and validation.

884 57

mkideal/cli

Feature-rich and easy to use command-line package based on golang struct tags.

724 43

argparse

Command line argument parser inspired by Python's argparse module.

640 65

wmenu

Easy to use menu structure for cli applications that prompt users to make choices.

229 22

climax

Alternative CLI with "human face", in spirit of Go command.

216 16

clîr

A Simple and Clear CLI library. Dependency free.

202 18

hiboot cli

cli application framework with auto configuration and dependency injection.

179 24

commandeer

Dev-friendly CLI apps: sets up flags, defaults, and usage based on struct fields and tags.

175 16

sflags

Struct based flags generator for flag, urfave/cli, pflag, cobra, kingpin, and other libraries.

165 37

job

JOB, make your short-term command as a long-term job.

149 12

acmd

Simple, useful, and opinionated CLI package in Go.

141 3

cmdr

A POSIX/GNU style, getopt-like command-line UI Go library.

141 10

readline

Shell library with modern and easy to use UI features.

140 20

teris-io/cli

Simple and complete API for building command line interfaces in Go.

132 9

env

Tag-based environment configuration for structs.

126 14

version

Collects and displays CLI version information in multiple formats along with upgrade notice.

114 5

console

Closed-loop application library for Cobra commands, with oh-my-posh prompts, and more.

108 9

command-chain

A go library for configure and run command chains - such as pipelining in unix shells.

71 3

gocmd

Go library for building command line applications.

67 5

wlog

Simple logging interface that supports cross-platform color and concurrency.

67 8

strumt

Library to create prompt chain.

62 5

go-getoptions

Go option parser inspired by the flexibility of Perl’s GetOpt::Long.

60 10

flagvar

A collection of flag argument types for Go's standard `flag` package.

48 4

boa

Declarative flags, env vars, validation, and config files from struct tags. Built on cobra.

47

cmd

Extends the standard `flag` package to support sub commands and more in idiomatic way.

47 3

mcli

A minimal but very powerful cli library for Go.

46 3

argv

Go library to split command line string as arguments array using the bash syntax.

43 7

hashicorp/cli

Go library for implementing command-line interfaces.

39 10

go-readline-ny

A customizable line-editing library with Emacs keybindings, Unicode support, completion, and syntax highlighting. Used in NYAGOS shell.

34 4

orpheus

CLI framework with security hardening, plugin storage system, and production observability features.

32

structcli

Eliminate Cobra boilerplate: build powerful, feature-rich CLIs declaratively from Go structs.

16 1

flash-flags

Ultra-fast, zero-dependency, POSIX-compliant flag parsing library that can be used as drop-in stdlib replacement with security hardening.

11

getopt

An accurate Go `getopt`, validated against the GNU libc implementation.

9

subcmd

Another approach to parsing and running subcommands. Works alongside the standard `flag` package.

9

memsh

Virtual bash shell in Go: executes shell commands against an in-memory filesystem (afero), with WASM plugin support and an embeddable HTTP server.

7 1

goopt

A declarative, struct-tag based CLI framework for Go, with a broad feature set such as hierarchical commands/flags, i18n, shell completion, and validation.

4 1