automatically register commands