diff --git a/gos/tasks.py b/gos/tasks.py
index <HASH>..<HASH> 100644
--- a/gos/tasks.py
+++ b/gos/tasks.py
@@ -44,4 +44,6 @@ class TaskLoader(object):
 
     def load_tasks_from_dir(self, dir_path):
         if not os.path.exists(dir_path):
-            raise GOSTaskException
+            raise GOSTaskException()
+        if os.path.isfile(dir_path):
+            raise GOSTaskException()
diff --git a/tests/test_tasks.py b/tests/test_tasks.py
index <HASH>..<HASH> 100644
--- a/tests/test_tasks.py
+++ b/tests/test_tasks.py
@@ -111,6 +111,10 @@ class TaskLoaderTestCase(unittest.TestCase):
         with self.assertRaises(GOSTaskException):
             TaskLoader().load_tasks_from_dir(non_existing_dir)
 
+    def test_load_from_dir_file_supplied(self):
+        tmp_file = tempfile.NamedTemporaryFile(mode="wt")
+        with self.assertRaises(GOSTaskException):
+            TaskLoader().load_tasks_from_dir(tmp_file.name)
 
 if __name__ == '__main__':
     unittest.main()
GOS-<I>

dir loading logic prohibits to load from file path