Sector7's VX/DCL uses Command Line Definition files to parse the arguments of any command sent to DCL.
The same mechanism, again, like VMS / OpenVMS, can me used to EXTEND the normal VMS / OpenVMS command syntax.
You can ADD commands to DCL and also, if required, take out functionality.
If your VMS / OpenVMS application uses a CLD to parse and invoke the application, then you'll use VX/CLD to compile your command syntax scanner and launch the executable.
Example CLD usage.
DEFINE VERB TYPE
ROUTINE DO_TYPE
IMAGE "TYPE" PARAMETER P1
LABEL=INPUT
PROMPT="File"
VALUE(REQUIRED, LIST, TYPE=$INFILE
QUALIFIER BACKUP Q
UALIFIER BEFORE, VALUE(DEFAULT="TODAY", TYPE=$DATETIME) Q
UALIFIER CONFIRM
QUALIFIER CREATED
QUALIFIER EXCLUDE, VALUE(REQUIRED, LIST)
QUALIFIER EXPIRED QUALIFIER HEADER
QUALIFIER MODIFIED Q
UALIFIER ON, VALUE(DEFAULT="TODAY", TYPE=$DATETIME)
QUALIFIER OUTPUT, DEFAULT, VALUE(DEFAULT="SYS$OUTPUT", TYPE=$FILE)
QUALIFIER PAGE
QUALIFIER SINCE, VALUE(DEFAULT="TODAY", TYPE=$DATETIME)
QUALIFIER BY_OWNER, VALUE(TYPE=$UIC)
QUALIFIER TAIL, VALUE(DEFAULT="22", TYPE=$NUMBER)
DISALLOW (OUTPUT) AND (PAGE)