add more basic feature to shell structure