Module Cmdlang_cmdliner_runner

val run : ?exn_handler:(exn -> Err.t option) -> unit Cmdlang.Command.t -> name:string -> version:string -> unit

This is the standard way that is designed with cmdlang, assuming you are using Err etc.