diff --git a/plugins/bundler/bundler.plugin.zsh b/plugins/bundler/bundler.plugin.zsh
index a6c116407038cbf6b9e81e1a82d25c41e2a9b7ad..bd77b0781411985811c7fb49556e623c34878a78 100644
--- a/plugins/bundler/bundler.plugin.zsh
+++ b/plugins/bundler/bundler.plugin.zsh
@@ -33,5 +33,10 @@ _run-with-bundler() {
 
 ## Main program
 for cmd in $bundled_commands; do
-  alias $cmd="_run-with-bundler $cmd"
+  eval "function bundled_$cmd () { _run-with-bundler $cmd \$@}"
+  alias $cmd=bundled_$cmd
+
+  if which _$cmd > /dev/null 2>&1; then
+        compdef _$cmd bundled_$cmd
+  fi
 done