package main import ( "context" "flag" "log" "os" "path" "github.com/google/subcommands" ) func init() { log.SetFlags(0) log.SetPrefix(progName() + ": ") } func progName() string { return path.Base(os.Args[0]) } func main() { subcommands.Register(subcommands.CommandsCommand(), "") subcommands.Register(subcommands.FlagsCommand(), "") subcommands.Register(subcommands.HelpCommand(), "") subcommands.Register(&checkCmd{}, "") subcommands.Register(&generateCmd{}, "") subcommands.Register(&signCmd{}, "") subcommands.Register(&verifyCmd{}, "") flag.Parse() ctx := context.Background() os.Exit(int(subcommands.Execute(ctx))) }