diff --git a/suites/hg/scheduling/setup-base-dir b/suites/hg/scheduling/setup-base-dir
index 13749bd2d308c053e2d5a14f2c995f9ec5be5c4b_c3VpdGVzL2hnL3NjaGVkdWxpbmcvc2V0dXAtYmFzZS1kaXI=..bc4347dff5076651d8cb5041d6064e798468ba6b_c3VpdGVzL2hnL3NjaGVkdWxpbmcvc2V0dXAtYmFzZS1kaXI= 100755
--- a/suites/hg/scheduling/setup-base-dir
+++ b/suites/hg/scheduling/setup-base-dir
@@ -41,6 +41,12 @@
         subprocess.run(command, check=True)
 
 
+POULPE_PROXY = """#!/bin/bash
+set -euo pipefail
+. `dirname $0`/activate
+poulpe "$@"
+"""
+
 BASH_PROXY = """#!/bin/bash
 set -euo pipefail
 . `dirname $0`/activate
@@ -54,6 +60,11 @@
     env_bin = Path("..") / ".venv" / "bin"
     dir_bin = Path("bin")
     os.symlink(env_bin / "poulpe", dir_bin / "poulpe")
+
+    poulpe_proxy = dir_bin / "poulpe"
+    poulpe_proxy.write_text(POULPE_PROXY)
+    poulpe_proxy.chmod(poulpe_proxy.stat().st_mode | stat.S_IEXEC)
+
     os.symlink(env_bin / "activate", dir_bin / "activate")
 
     bash_proxy = dir_bin / "shell"