add new command interface