If you mean generate completion entries for you own tool, my answer will be 'I am not that kind of a guru ;D'. Go lookup creating zsh completions
If you mean the interface with tabs, I am just using zsh-grml config (config file you download for those who don't care for a zsh plugin manger) (I believe very similar behavior is available in bash)
how do I do this for custom cli apps?