diff --git a/lib/dmd.js b/lib/dmd.js
index <HASH>..<HASH> 100644
--- a/lib/dmd.js
+++ b/lib/dmd.js
@@ -1,5 +1,6 @@
 "use strict";
 var boil = require("boil-js"),
+    fs = require("fs"),
     path = require("path");
 
 /**
@@ -32,7 +33,17 @@ function dmd(options){
     if(options.helper) boil.registerHelpers(options.helper);
     if(options.plugin){
         options.plugin.forEach(function(plugin){
-            require(plugin)(boil);
+            var dirs = process.cwd().split(path.sep);
+            for (var i = 0; i < dirs.length; i++) {
+                var basedir = i < dirs.length - 1
+                    ? dirs.slice(0, dirs.length - i).join(path.sep)
+                    : path.sep;
+                var modulePath = path.join(basedir, "node_modules", plugin);
+                if (fs.existsSync(modulePath)){
+                    require(modulePath)(boil);
+                    break;
+                }
+            }
         });
     }
require relative to cwd()