DreamCoder
Download DreamCoder
Pick your platform below. On first launch, sign in with your DreamCoder account or create one.
Latest changes
MOTDFetching the latest dispatch…
macOS Apple Silicon macOS app ZIP
Install from Terminal
RecommendedOpen Terminal (in Applications › Utilities), paste this command and press Return. It downloads DreamCoder, puts it in Applications and opens it. You can read the script first.
curl -fsSL https://www.dreamcoder.ai/install.sh | sh
Or download the ZIP yourself
Download ZIPBefore you open it, paste this into Terminal and press Return. Without it, macOS may say it cannot verify the app and refuse to open it.
xattr -dr com.apple.quarantine "/Applications/DreamCoder.app"
http://localhost:9889 on first run.Windows 10 · 11 Windows setup package
http://localhost:9889 if the browser does not open automatically.Debian · Ubuntu .deb package amd64
Install from Terminal
Recommended
Paste this command into a terminal and press Enter. It downloads the DreamCoder package and installs it with apt-get, so it may ask for your password. You can read the script first.
curl -fsSL https://www.dreamcoder.ai/install.sh | sh
Or download the package yourself
Download .debsudo apt install ./dreamcoder*_amd64.debdreamcoder, or open DreamCoder from your applications menu.http://localhost:9889.Containers Docker & Podman images exact published release tags
Loading the image for the current release…
$ docker login <registry-host> --username dreamcoder Password: Login Succeeded $ docker pull <registry-host>/dreamcoder:<release-tag>
Run the server
Canonical
Use this shape for local Docker or Podman runs; replace docker with podman throughout if that is your runtime. The named volume keeps /data persistent. Port 1455 carries Codex OAuth back from your browser and must stay 1455 on both sides of the mapping. Publishing it on 127.0.0.1 keeps this browser-only callback private and avoids an IPv6-localhost reset with rootless Podman.
$ docker run --rm --name dreamcoder_server \
-v dreamcoder_data:/data \
-p 9889:9889 \
-p 127.0.0.1:1455:1455 \
-e DREAMCODER_ALLOWED_ORIGINS=http://localhost:9889 \
<registry-host>/dreamcoder:<release-tag>
Browser on another machine?
Forward both ports to the machine running your browser, then open http://localhost:9889. This preserves Codex's fixed localhost:1455 redirect across the network boundary; a reverse proxy for port 9889 alone cannot do that.
$ ssh -N \ -L 9889:127.0.0.1:9889 \ -L 1455:127.0.0.1:1455 \ user@container-host
If you enable generic GitHub OAuth with its default callback port, also add -p 127.0.0.1:1456:1456 and forward port 1456. Use the configured port on both sides if you changed that default. GitHub Copilot uses a device flow and does not need a callback port.
OAuth callback troubleshooting
If Codex returns to a blank or refused page, confirm that 127.0.0.1:1455:1455 is published and that no other host process owns port 1455. Do not remap it to another host port or override the OpenAI callback host, port, or path: OpenAI accepts only http://localhost:1455/auth/callback for this client.
Current Docker image
The image for the current release, built from the Debian package.
Loading…
Need a hand?
Stuck installing, or want advice on setting DreamCoder up? Email hello@dreamcoder.ai and we’ll help.
From the blog
All postsPublished files
Every file in the current release. The Docker image is listed above.
Loading published files…
© DreamCoder · drawn under a kind moon