Hi, some time ago I've adopted an existing completion script for pip, which has been removed from https://github.com/zsh-users/zsh-completions (in https://github.com/zsh-users/zsh-completions/commit/890f3701). I've also looked at oh-my-zsh's plugin (https://github.com/robbyrussell/oh-my-zsh/blob/master/plugins/pip/_pip), where I've adopted the idea to provide the list of installable packages from. I've enhanced it to provide completion for installable packages (both using the PyPI's simple and XMLRPC interface), and made it use pip's completion interface to get the list of un-installable packages. There are other fixes, like for completing filenames with "pip install -r". It is currently maintained at: https://gist.github.com/blueyed/54a257c411310a28805a I am attaching the current revision (cbd8ec9a). I would appreciate feedback on it and then think it would be nice to have it included in Zsh itself. zsh-users/zsh-completions's policy is to not provide completion scripts, if upstream does so - but pip's distributed completion is very limited: % pip completion --zsh # pip zsh completion start function _pip_completion { local words cword read -Ac words read -cn cword reply=( $( COMP_WORDS="$words[*]" \ COMP_CWORD=$(( cword-1 )) \ PIP_AUTO_COMPLETE=1 $words[1] ) ) } compctl -K _pip_completion pip # pip zsh completion end Thanks, Daniel.