Instead of having hardcoded bash and zsh completion files we should generate them based on the providers configuration.