client command parser