diff --git a/Control/Comonad/Trans/Adjoint.hs b/Control/Comonad/Trans/Adjoint.hs
new file mode 100644
--- /dev/null
+++ b/Control/Comonad/Trans/Adjoint.hs
@@ -0,0 +1,54 @@
+{-# LANGUAGE MultiParamTypeClasses, FunctionalDependencies, ImplicitParams #-}
+-----------------------------------------------------------------------------
+-- |
+-- Module      :  Control.Comonad.Trans.Adjoint
+-- Copyright   :  (C) 2011 Edward Kmett
+-- License     :  BSD-style (see the file LICENSE)
+--
+-- Maintainer  :  Edward Kmett <ekmett@gmail.com>
+-- Stability   :  provisional
+-- Portability :  MPTCs, fundeps
+--
+----------------------------------------------------------------------------
+
+module Control.Comonad.Trans.Adjoint
+  ( Adjoint
+  , runAdjoint
+  , adjoint
+  , AdjointT(..)
+  ) where
+
+import Prelude hiding (sequence)
+import Control.Applicative
+import Control.Comonad
+import Control.Comonad.Trans.Class
+import Data.Functor.Adjunction
+import Data.Functor.Identity
+import Data.Distributive
+
+type Adjoint f g = AdjointT f g Identity
+
+newtype AdjointT f g w a = AdjointT { runAdjointT :: f (w (g a)) }
+
+adjoint :: Functor f => f (g a) -> Adjoint f g a
+adjoint = AdjointT . fmap Identity
+
+runAdjoint :: Functor f => Adjoint f g a -> f (g a)
+runAdjoint = fmap runIdentity . runAdjointT
+
+instance (Adjunction f g, Functor m) => Functor (AdjointT f g m) where
+  fmap f (AdjointT g) = AdjointT $ fmap (fmap (fmap f)) g
+  b <$ (AdjointT g) = AdjointT $ fmap (fmap (b <$)) g
+
+instance (Adjunction f g, Comonad m) => Comonad (AdjointT f g m) where
+  extract = rightAdjunct extract . runAdjointT
+  extend f (AdjointT m) = AdjointT $ fmap (extend $ leftAdjunct (f . AdjointT)) m
+  
+{-
+instance (Adjunction f g, Monad m) => Applicative (AdjointT f g m) where
+  pure = AdjointT . leftAdjunct return
+  (<*>) = ap
+-}
+    
+instance (Adjunction f g, Distributive g) => ComonadTrans (AdjointT f g) where
+  lower = counit . fmap distribute . runAdjointT 
diff --git a/adjunctions.cabal b/adjunctions.cabal
--- a/adjunctions.cabal
+++ b/adjunctions.cabal
@@ -1,6 +1,6 @@
 name:          adjunctions
 category:      Data Structures, Adjunctions
-version:       0.2
+version:       0.2.1
 license:       BSD3
 cabal-version: >= 1.6
 license-file:  LICENSE
@@ -21,10 +21,13 @@
   build-depends: 
     base >= 4 && < 4.4,
     contravariant >= 0.1.2 && < 0.2,
+    comonad >= 0.6.2 && < 0.8,
+    comonad-transformers >= 0.6.1 && < 0.8,
     transformers >= 0.2.0 && < 0.3
 
   exposed-modules:
     Control.Monad.Trans.Adjoint
+    Control.Comonad.Trans.Adjoint
     Data.Functor.Adjunction
     Data.Functor.Contravariant.Adjunction
     Data.Functor.Zap
