new command API

Signed-off-by: Daniel Fagnan <dnfagnan@gmail.com>