iMDone loads plugins that are mentioned in the .imdone/config.json file in your project directory. It looks for them in your project directory under node_modules then in your home directory under node_modules, then by name. So if you include a plugin.js that implements the plugin interface in your project, you can load it directly or install one using npm install -g.

All plugins should expect a config and repo. Take a look at this example config. The plugins hash contains the plugin package name or path with it's config hash as the value. Repo is the Repository object for the project.