diff --git a/ChangeLog.md b/ChangeLog.md
--- a/ChangeLog.md
+++ b/ChangeLog.md
@@ -1,5 +1,9 @@
 # Changelog for polysemy-extra
 
+## v0.1.5.0
+
+* Add `runInputConstF`.
+
 ## v0.1.4.0
 
 * Add reinterpreting versions of `contramapInput` and `mapOutput`.
diff --git a/polysemy-extra.cabal b/polysemy-extra.cabal
--- a/polysemy-extra.cabal
+++ b/polysemy-extra.cabal
@@ -5,7 +5,7 @@
 -- see: https://github.com/sol/hpack
 
 name:           polysemy-extra
-version:        0.1.4.0
+version:        0.1.5.0
 synopsis:       Extra Input and Output functions for polysemy..
 category:       Polysemy
 author:         Daniel Firth
diff --git a/src/Polysemy/Extra.hs b/src/Polysemy/Extra.hs
--- a/src/Polysemy/Extra.hs
+++ b/src/Polysemy/Extra.hs
@@ -20,6 +20,7 @@
   contramapInput
 , contramapInputSem
 , contramapInput'
+, runInputConstF
 
 -- * Output
 , mapOutput
@@ -185,6 +186,15 @@
 contramapInputSem f = interpret \case
   Input -> f =<< input @i'
 {-# INLINE contramapInputSem #-}
+
+-- | Like `runInputConst`, except with a type parameter for the functor for abusing type applications.
+--
+-- @since 0.1.5.0
+runInputConstF :: forall b f r a.
+                  (f b)
+               -> Sem (Input (f b) ': r) a
+               -> Sem r a
+runInputConstF = runInputConst @(f b)
 
 -- | Reinterpret the second effect in the stack into a single effect.
 --
