static void Main(string[] args) { System.Text.Encoding.RegisterProvider(System.Text.CodePagesEncodingProvider.Instance); RootCommand rootCommand = new RootCommand() { Description = "The best PasswordSafe CLI" }; rootCommand .AddCreateDbCommand() .AddShowDbCommand() .AddListCommand(); rootCommand.AddOption(new Option(new string[] { "--alias", "-a" }, "Alias to the database, config at $HOME/.pwsafe") { Argument = new Argument("ALIAS") }); rootCommand.AddOption(new Option(new string[] { "--file", "-f" }, "Path to your PasswordSafe file") { Argument = new Argument("FILE") }); rootCommand.AddOption(new Option(new string[] { "--title", "-t" }, "Title of your password") { Argument = new Argument("Title") }); rootCommand.AddOption(new Option(new string[] { "--password", "-p" }, "Password for current database") { Argument = new Argument("PASSWORD") }); rootCommand.Handler = CommandHandler.Create <string, string, string, string, IConsole>(HandleRootCommand); rootCommand.Invoke(args); }