add command processing