diff --git a/library/Neovim/Context/Internal.hs b/library/Neovim/Context/Internal.hs
--- a/library/Neovim/Context/Internal.hs
+++ b/library/Neovim/Context/Internal.hs
@@ -56,7 +56,7 @@
     { unNeovim :: ResourceT (ReaderT (Config env) IO) a }
 
   deriving (Functor, Applicative, Monad, MonadIO
-           , MonadThrow)
+           , MonadThrow, MonadUnliftIO)
 
 
 -- | User facing instance declaration for the reader state.
@@ -70,11 +70,6 @@
 
 instance MonadResource (Neovim env) where
     liftResourceT m = Neovim $ liftResourceT m
-
-
-instance MonadUnliftIO (Neovim env) where
-    askUnliftIO = Neovim . withUnliftIO $ \x ->
-        return (UnliftIO (unliftIO x . unNeovim))
 
 
 instance Fail.MonadFail (Neovim env) where
diff --git a/nvim-hs.cabal b/nvim-hs.cabal
--- a/nvim-hs.cabal
+++ b/nvim-hs.cabal
@@ -1,5 +1,5 @@
 name:                nvim-hs
-version:             2.1.0.3
+version:             2.1.0.4
 synopsis:            Haskell plugin backend for neovim
 description:
   This package provides a plugin provider for neovim. It allows you to write
@@ -130,7 +130,7 @@
                       , transformers-base
                       , typed-process
                       , unliftio >= 0.2
-                      , unliftio-core
+                      , unliftio-core >= 0.2
                       , utf8-string
                       , vector
                       , void
