diff --git a/horizon.dhall b/horizon.dhall
index 0ec3df218051f4f4486c2b5fd89769abfe1e9e17..f2fb9fa10439ab867cb0e547919cbab2cded95eb 100644
--- a/horizon.dhall
+++ b/horizon.dhall
@@ -72,6 +72,7 @@ let packages =
       , ListLike = H.callHackage "ListLike" "4.7.7"
       , JuicyPixels = H.callHackage "JuicyPixels" "3.3.8"
       , MonadRandom = H.callHackage "MonadRandom" "0.5.3"
+      , MonadPrompt = H.callHackage "MonadPrompt" "1.0.0.5"
       , OneTuple = H.callHackage "OneTuple" "0.3.1"
       , Only = H.callHackage "Only" "0.1"
       , OpenGLRaw = H.callHackage "OpenGLRaw" "3.3.4.1"
diff --git a/initial-packages.nix b/initial-packages.nix
index 10b410ec9b28b397aa4a362d31c5c5452c13f98e..7e64116cb3b3ce2f23a9b5abcce8716ca76649ef 100644
--- a/initial-packages.nix
+++ b/initial-packages.nix
@@ -39,6 +39,8 @@ self: with pkgs.haskell.lib; {
 
   ListLike = self.callPackage (./pkgs/ListLike.nix) { };
 
+  MonadPrompt = self.callPackage (./pkgs/MonadPrompt.nix) { };
+
   MonadRandom = self.callPackage (./pkgs/MonadRandom.nix) { };
 
   OneTuple = self.callPackage (./pkgs/OneTuple.nix) { };
diff --git a/pkgs/MonadPrompt.nix b/pkgs/MonadPrompt.nix
new file mode 100644
index 0000000000000000000000000000000000000000..ddda9a6cdd9b2aa1d08bdfff55286a282542335b
--- /dev/null
+++ b/pkgs/MonadPrompt.nix
@@ -0,0 +1,20 @@
+{ mkDerivation, base, lib, mtl }:
+mkDerivation {
+  pname = "MonadPrompt";
+  version = "1.0.0.5";
+  sha256 = "b012cbbe83650f741c7b7f6eafcc89dec299b0ac74a758b6f3a8cdfc5d3bbeda";
+  isLibrary = true;
+  isExecutable = false;
+  enableSeparateDataOutput = false;
+  libraryHaskellDepends = [ base mtl ];
+  enableLibraryProfiling = true;
+  enableExecutableProfiling = true;
+  doHaddock = false;
+  jailbreak = true;
+  doCheck = false;
+  doBenchmark = false;
+  hyperlinkSource = false;
+  description = "MonadPrompt, implementation & examples";
+  license = lib.licenses.bsd3;
+  broken = false;
+}