add shell mode