A command line parser which allows to easily create complex commandlines similar to git. This wraps the clojure cli library, so it does everthing that does and more, more easily. Define your commandline options and give them to the parser along with the args to your program. All the usual is there. Defaults, validation etc. The cli is completely validated up front and a tree of the cli options is created which reflects the structure of the cli definition. Help is integrated so that a complete cli solution can easily be created with just a few definitions.