For un framework Go pour créer des outils en ligne de commande, the strongest matches are urfave/cli (urfave/cli is a Go framework specifically designed for building), spf13/cobra (Cobra is a comprehensive Go CLI framework that provides) and alecthomas/kong (Kong is a declarative Go CLI framework that maps). mitchellh/cli and integrii/flaggy round out the shortlist. Each is ranked by relevance to your query, popularity and recent activity.
Bibliothèques et toolkits pour créer des interfaces en ligne de commande (CLI) et des applications de terminal interactives en Go.
This is a framework for building structured terminal applications in Go. It provides the core components necessary to define a command-line interface, including a system for managing commands, sub-commands, and their associated flags. The library distinguishes itself through an automated help generator that produces formatted usage instructions and manual pages, and a shell completion generator that creates tab-completion scripts for Bash, Zsh, Fish, and PowerShell. It also features a command lifecycle manager to handle pre- and post-execution logic and process exit codes. The toolkit covers
urfave/cli is a Go framework specifically designed for building structured CLI applications, offering built-in subcommand support, flag parsing, shell auto-completion, help generation, and configuration file support (JSON, TOML, YAML), making it a comprehensive match for your needs.
Cobra is a development framework for building command-line applications in Go. It organizes application logic into a hierarchical tree structure where each node represents a command, complete with its own flags and execution logic. This structure allows developers to build complex, nested command interfaces that mirror business domains while maintaining a clean separation between command orchestration and underlying business logic. The framework distinguishes itself through its declarative approach to metadata and configuration. It automatically derives help documentation, usage instructions,
Cobra is a comprehensive Go CLI framework that provides tree-structured subcommands, declarative flag and option parsing, automatic shell completion, help text generation, and argument validation, and it integrates with configuration file support—covering every feature you're looking for.
Kong is a declarative command line interface framework and parser for Go. It maps flags and positional arguments directly into typed Go structures using struct tags, allowing developers to define terminal interfaces through data models rather than manual parsing logic. The project functions as a configuration mapper that populates Go structures from a combination of command-line arguments, environment variables, and JSON files. It distinguishes itself by providing a dependency injection container to pass external services into command handlers and a plugin architecture for dynamic command reg
Kong is a declarative Go CLI framework that maps flags and arguments directly into typed structs, with built-in support for subcommands, flag parsing, help generation, argument validation, and configuration from JSON/YAML files, making it exactly the kind of structured CLI tooling you're looking for.
A Go library for implementing command-line interfaces.
mitchellh/cli is a Go library specifically designed for building command-line interfaces, which matches the category of a CLI framework, but its minimal description doesn't confirm advanced features like auto-completion or configuration file support.
Idiomatic Go input parsing with subcommands, positional values, and flags at any position. No required project or package layout and no external dependencies.
Flaggy is a Go library for parsing command-line input with subcommands and flags at any position, directly fitting the need for a structured CLI tool builder, though it may not include built-in shell completion or configuration file support.