ヘルプを自動生成できる、コマンドライン引数を型安全に宣言・解析するSwiftライブラリ。
urfave/cli
サブコマンド、フラグ、シェル補完、ヘルプ生成に対応した、CLI構築用の宣言的なGoパッケージ。
- スター
- 24,291
- フォーク
- 1,923
- 未解決の Issue
- 30
- 最終コミット
- 2 時間前
これは何?
urfave/cliは、コマンドラインアプリケーションを構築するためのGoパッケージです。コマンド、サブコマンド、フラグを宣言的に定義すると、解析や振り分け、ヘルプ出力をパッケージが処理します。
コマンドのエイリアスとプレフィックスマッチング、-abcのような短縮フラグの連結に対応し、単純な値、スライス、時刻、期間などのフラグ型を利用できます。bash、zsh、fish、PowerShell向けの動的なシェル補完も利用できます。Go標準ライブラリ以外の依存関係はありません。
入力元にはコマンドラインフラグ、環境変数、プレーンテキストファイルのほか、同梱のurfave/cli-altsrcモジュールを介したJSON、TOML、YAMLなどの構造化形式を指定できます。manページやMarkdown形式のドキュメント生成には、urfave/cli-docsモジュールを利用できます。
主な機能
- 01エイリアスとプレフィックスマッチングに対応したコマンドとサブコマンド
- 02bash、zsh、fish、PowerShell向けの動的なシェル補完
- 03-abcのような短縮フラグの連結
- 04単純な型、スライス、時刻、期間のフラグ
- 05環境変数、テキストファイル、JSON、TOML、YAMLからの入力
- 06Go標準ライブラリ以外の依存関係なし
ユースケース
- サブコマンドと型付きフラグを備えたGo製CLIツールの構築
- 既存のCLIへのシェルのタブ補完の追加
- 環境変数やYAML・TOML形式の設定ファイルからCLIオプションを読み込む
トピック
よくある質問
- cli とは?
- サブコマンド、フラグ、シェル補完、ヘルプ生成に対応した、CLI構築用の宣言的なGoパッケージ。 urfave/cliは、コマンドラインアプリケーションを構築するためのGoパッケージです。コマンド、サブコマンド、フラグを宣言的に定義すると、解析や振り分け、ヘルプ出力をパッケージが処理します。
- cli は無料で使えますか?ライセンスは?
- cli は MIT ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- cli は今もメンテナンスされていますか?
- 活発にメンテナンス中。cli の最終コミットは 2026年10月19日 です。
- cli は何に使えますか?
- サブコマンドと型付きフラグを備えたGo製CLIツールの構築 既存のCLIへのシェルのタブ補完の追加 環境変数やYAML・TOML形式の設定ファイルからCLIオプションを読み込む
- cli はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/urfave/cli
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
標準の型アノテーションを使ってJSON、MessagePack、YAML、TOMLをエンコード・デコードする、高速なPythonシリアライズ・バリデーションライブラリ。
youtube-dlから派生した、数千のサイトに対応する多機能な音声・動画ダウンロード用CLIツール。
70以上のクラウドストレージプロバイダーやローカルストレージ間でファイルを同期・コピー・マウントできるコマンドラインツール。rsyncのクラウド版として紹介されています。
よく使うディレクトリを学習し、主要なシェルから数回のキー入力で移動できる、賢いcdコマンド。
Twitter/X、Reddit、YouTube、Hacker Newsなど55以上のサイトからデータを取得できるRust製CLIツール。