diff --git a/include/class.plugin.php b/include/class.plugin.php
index a9ed46ffd2311010865fa2c4cccfaca94d6d1de9..6a8ac830b8d372b3dd9974af60ca555635e77898 100644
--- a/include/class.plugin.php
+++ b/include/class.plugin.php
@@ -286,7 +286,7 @@ class PluginManager {
  * Base class for plugins. Plugins should inherit from this class and define
  * the useful pieces of the
  */
-class Plugin {
+abstract class Plugin {
     /**
      * Configuration manager for the plugin. Should be the name of a class
      * that inherits from PluginConfig. This is abstract and must be defined
@@ -321,6 +321,13 @@ class Plugin {
             . $this->info['include_path']) . '/';
     }
 
+    /**
+     * Main interface for plugins. Called at the beginning of every request
+     * for each installed plugin. Plugins should register functionality and
+     * connect to signals, etc.
+     */
+    abstract function bootstrap();
+
     /**
      * uninstall
      *