Add Amp sandbox image - #285
Conversation
There was a problem hiding this comment.
Needs attention — 1 issue in 1 file
The PR cleanly follows the established sandbox image pattern (hub/codex/Dockerfile is nearly identical in structure). Base image is digest-pinned, Amp version is pinned, and the template is correctly marked hidden. The one notable difference from the Codex image is that Amp is installed via a remote shell script rather than a package manager with built-in integrity verification — worth a supply-chain hardening step.
Prompt for AI agents (all issues)
Check if these issues are valid — if so, understand the root cause of each and fix them.
<assessment>
The PR cleanly follows the established sandbox image pattern (`hub/codex/Dockerfile` is nearly identical in structure). Base image is digest-pinned, Amp version is pinned, and the template is correctly marked hidden. The one notable difference from the Codex image is that Amp is installed via a remote shell script rather than a package manager with built-in integrity verification — worth a supply-chain hardening step.
</assessment>
<file name="hub/amp/Dockerfile">
<issue location="hub/amp/Dockerfile:20">
The install script is fetched over HTTPS without integrity verification. If `ampcode.com/install.sh` is ever compromised or serves different content, malicious code runs in the image build. The `grep -F` check only validates the *version string* in the resulting binary, not the integrity of the installer itself. Consider checksumming the script or the installed binary against a known-good hash. Confidence: medium — the risk is real but depends on threat model and the transient nature of build environments.
</issue>
</file>
Tag @mendral-app with feedback or questions. View session
🧪 Testing GuideWhat this PR addressesAdds a new Amp sandbox image to the Blaxel sandbox catalog, comparable to existing Codex and Claude Code sandbox images. The image is built on the standard Blaxel sandbox API ( Steps to verifySince this is a new container image (infrastructure/config change), there are no user-facing reproduction steps. Instead, verify the following:
What to verify (expected behavior)
Note Posted by PR Testing Guide · Tag @mendral-app with feedback. |
There was a problem hiding this comment.
Supply Chain Security Review
✅ Approve — 1 finding in 1 file
Dockerfile uses good practices: node:24-slim is digest-pinned, and the remote installer script is verified with a SHA-256 checksum before execution. The ghcr.io/blaxel-ai/sandbox:${SANDBOX_VERSION} stage defaults to latest but this is an internal image parameterized via build arg, consistent with the project's existing patterns.
Tag @mendral-app with feedback or questions. View session
| @@ -0,0 +1,37 @@ | |||
| ARG SANDBOX_VERSION=latest | |||
There was a problem hiding this comment.
maintainability (P3), medium confidence: The SANDBOX_VERSION build arg defaults to latest, a mutable tag. Consider pinning to a digest for reproducible builds, or documenting that CI always overrides this arg.
Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. At hub/amp/Dockerfile, line 1:
<issue>
The `SANDBOX_VERSION` build arg defaults to `latest`, a mutable tag. Consider pinning to a digest for reproducible builds, or documenting that CI always overrides this arg.
</issue>
There was a problem hiding this comment.
LGTM
All previous supply-chain concerns are addressed: the installer script is now checksummed before execution (sha256sum -c), the Node base image is digest-pinned, and the Amp version is verified post-install. The SANDBOX_VERSION=latest pattern matches the established project convention. No new issues in the update.
Tag @mendral-app with feedback or questions. View session
Summary
Why
This gives Blaxel a provider-owned Amp runtime path comparable to the existing Codex and Claude Code sandbox images. Users can start Amp without installing the CLI during each sandbox session.
Verification
linux/amd64Release gate
This PR prepares the image but keeps the template hidden. Do not publish or unhide the image until ENG-4628 records Amp's written permission for image redistribution and branding.
No Amp outreach is included in this PR.
Linear: ENG-4614, ENG-4629
Note
Adds a hidden Amp sandbox image with pinned Amp CLI version, SHA-256 checksum verification of the installer script, and standard sandbox-api entrypoint. Includes workflow selector entry and template metadata.
Written by Mendral for commit e57408b.