Help is given as structure listing command and their parameters in a short/compressed form. help = dict (name -> command) name = string command = dict ('desc' -> description 'options' -> options 'arguments' -> arguments) description = string options = list (option...) option = dict (name -> description) arguments = list (argument...) argument = dict (name -> argdesc) argdesc = dict ('code' -> code 'desc' -> description) code in { + <=> required ? <=> optional +* <=> required splat ?* <=> optional splat } The conversion of this form into a help text, or other structure is outside of the scope of xo/cmdr