Cmdliner permet la définition déclarative d'interfaces en ligne de commande en OCaml.
Il fournit un mécanisme simple et compositionnel pour convertir les arguments de la ligne de commande en valeurs OCaml et pour les passer à vos fonctions. Le module gère automatiquement les erreurs de syntaxe, les messages d'aide ainsi que la génération de pages de manuel UNIX. Il permet de définir des programmes avec des commandes multiples (comme darcs ou git) et respecte la plupart des conventions POSIX et GNU.
Cmdliner ne possède pas de dépendances, il est distribué sous la license ISC.