diff --git a/plugins/supervisor/README.md b/plugins/supervisor/README.md
new file mode 100644
index 000000000..25a04c968
--- /dev/null
+++ b/plugins/supervisor/README.md
@@ -0,0 +1,13 @@
+# supervisor plugin
+
+This plugin adds tab-completion for supervisord/supervisorctl in [Supervisor](http://supervisord.org/).
+
+Supervisor is a client/server system that allows its users to monitor and control a number of processes on UNIX-like operating systems.
+
+To use it, add `supervisor` to the plugins array in your zshrc file:
+
+```zsh
+plugins=(... supervisor)
+```
+
+These scripts are from [zshcompfunc4supervisor](https://bitbucket.org/hhatto/zshcompfunc4supervisor).
diff --git a/plugins/supervisor/_supervisorctl b/plugins/supervisor/_supervisorctl
index d159f20e0..9f576c0c0 100644
--- a/plugins/supervisor/_supervisorctl
+++ b/plugins/supervisor/_supervisorctl
@@ -112,6 +112,13 @@ _supervisorctl_start() {
         '*::supvervisor process:_get_supervisor_procs'
 }
 
+(( $+functions[_supervisorctl_restart] )) ||
+_supervisorctl_restart() {
+    # TODO: add 'all'
+    _arguments -s \
+        '*::supvervisor process:_get_supervisor_procs'
+}
+
 (( $+functions[_supervisorctl_status] )) ||
 _supervisorctl_status() {
     _arguments \