Skip to content

Integrations

Export a Usage spec from your existing CLI framework, then use it for completions, reference docs, man pages, and generated clients. The integration reads your application's declaration; your framework continues to parse and run the CLI.

Start with the clap guide or Cobra guide, or choose a community integration below. Each exporter supports a different subset of its framework's features. Check its feature mapping and any loss report before relying on the generated interface.

Available

FrameworkLanguagePackage
CobraGocobra_usage
KongGokong-usage
urfave/cliGourfavecli-usage
clapRustclap_usage
argparsePythonargparse-usage
OptionParserRubyoption_parser_usage
Commander.jsNode.js@usage-spec/commander
oclifNode.js@usage-spec/oclif
yargsNode.js@usage-spec/yargs
TyperPythonusage-spec-typer
ClickPythonusage-spec-click
JCommanderJavajcommander-usage
picocliJavapicocli-usage
CliktKotlinclikt-usage

Planned

These frameworks are candidates for future integrations, not available packages. See Contributing before starting a new exporter.

High priority

FrameworkLanguage
Spectre.ConsoleC#/.NET
Symfony ConsolePHP
ThorRuby
cxxoptsC++
CommandLineParserC#/.NET
CLI11C++
Laravel ZeroPHP
swift-argument-parserSwift
System.CommandLineC#/.NET

Medium priority

FrameworkLanguage
zig-clapZig
optparse-applicativeHaskell
cligenNim
argparseLua
Getopt::LongPerl
OptionParserElixir
getoptC
MIT LicenseCopyright © 2026jdx.dev