From f5419f860ad59138a4dc4ae85e2ea8db690221dd Mon Sep 17 00:00:00 2001 From: Ahmed Abushagur Date: Wed, 29 Apr 2026 15:20:41 -0700 Subject: [PATCH] fix(docker): publish spawn-pi image so --beta sandbox works for pi The sandbox flow on local pulls ghcr.io/openrouterteam/spawn-:latest, but the Docker build matrix in .github/workflows/docker.yml didn't include `pi` and there was no sh/docker/pi.Dockerfile, so the image was never published. `spawn pi local --beta sandbox` failed with "denied" pulling spawn-pi:latest. Adds the Dockerfile (mirrors kilocode/codex: Ubuntu 24.04 + Node 22 + `npm install -g @mariozechner/pi-coding-agent`) and registers `pi` in the workflow matrix. The next scheduled or manual run will publish ghcr.io/openrouterteam/spawn-pi:latest. --- .github/workflows/docker.yml | 2 +- sh/docker/pi.Dockerfile | 17 +++++++++++++++++ 2 files changed, 18 insertions(+), 1 deletion(-) create mode 100644 sh/docker/pi.Dockerfile diff --git a/.github/workflows/docker.yml b/.github/workflows/docker.yml index fb9ac98f9..409a72799 100644 --- a/.github/workflows/docker.yml +++ b/.github/workflows/docker.yml @@ -20,7 +20,7 @@ jobs: strategy: fail-fast: false matrix: - agent: [claude, codex, cursor, openclaw, opencode, kilocode, hermes, junie] + agent: [claude, codex, cursor, openclaw, opencode, kilocode, hermes, junie, pi] steps: - uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4 diff --git a/sh/docker/pi.Dockerfile b/sh/docker/pi.Dockerfile new file mode 100644 index 000000000..744fb9c36 --- /dev/null +++ b/sh/docker/pi.Dockerfile @@ -0,0 +1,17 @@ +FROM ubuntu:24.04 + +ENV DEBIAN_FRONTEND=noninteractive + +# Base packages +RUN apt-get update -y && \ + apt-get install -y --no-install-recommends \ + curl git ca-certificates build-essential unzip zsh && \ + rm -rf /var/lib/apt/lists/* + +# Node.js 22 via n +RUN curl --proto '=https' -fsSL https://raw.githubusercontent.com/tj/n/master/bin/n | bash -s install 22 + +# Pi (pi-coding-agent) +RUN npm install -g @mariozechner/pi-coding-agent + +CMD ["/bin/sleep", "inf"]