diff --git a/bin/pm.js b/bin/pm.js
index <HASH>..<HASH> 100755
--- a/bin/pm.js
+++ b/bin/pm.js
@@ -25,6 +25,7 @@ let modsAndWebsite = mods.concat("website")
 
 function start() {
   let command = process.argv[2]
+  if (command && !["install", "--help"].includes(command)) assertInstalled()
   let args = process.argv.slice(3)
   let cmdFn = {
     "status": status,
@@ -79,6 +80,15 @@ function help(status) {
   process.exit(status)
 }
 
+function assertInstalled() {
+  modsAndWebsite.forEach(repo => {
+    if (!fs.existsSync(repo)) {
+      console.error("module `%s` is missing. Did you forget to run `pm install`?", repo)
+      process.exit(1)
+    }
+  })
+}
+
 function run(cmd, args, wd) {
   return child.execFileSync(cmd, args, {cwd: wd, encoding: "utf8", stdio: ["ignore", "pipe", process.stderr]})
 }
Check that modules are installed in bin/pm