概要 今年も大量のツールのようなものを作った.Golangで実装する場合にはkubectlやfaas-cli を参考にパクるとなんとなくいい感じのツールが作れます. 概要 packageの紹介 spf13/cobra spf13/viper spf13/pflag morikuni/aec 最後に packageの紹介 spf13/cobra フラグ処理やサブコマンド,ヘルプメッセージ,インテリジェントな提案,アプリケーション用に自動的に生成されたbashオートコンプリートなど,CLI ツールに必要なことはカバーできてしまいます. kubectlやfaas-cli にも実際に使われています. Cobraの構造の理想は以下のような実装です. ▾ appName/ ▾ cmd/ add.go your.go commands.go here.go main.go 一つのファイルにまとめてしまう