This repository contains custom Docker Sandbox Kits developed by Praia Labs (GitHub).
Warning
Experimental Feature & Active Development: Docker Sandboxes (sbx) and Kits are experimental features under active development. Syntax, CLI commands, and features may change regularly.
Docker Sandbox Kits are declarative configurations used to customize and extend AI agent sandbox environments. This repository serves as a collection of custom kits tailored for various agent workflows.
To learn more about Docker Sandboxes and Kits, refer to the following official resources:
- Docker Sandboxes Documentation
- Docker Sandbox Custom Kits Guide
- Official Contrib Repository (
docker/sbx-kits-contrib)
You can run sandboxes with these custom kits either by referencing the local directory path or directly via the remote Git repository URL.
If you have cloned this repository locally, you can spin up a sandbox with a specific kit using:
sbx run --kit agents/<kit-dir> <agent-name>For example, to run the agy (Google Antigravity CLI) kit:
sbx run --kit agents/agy agyDocker Sandbox supports fetching kits directly from remote Git repositories. You can reference kits in this repository using the following syntax pattern:
Important
As of sbx v0.34.0, you need to explicitly allow the kit source before using it:
sbx settings set kit.allowedSources '["docker.io/","github.com/praialabs/"]'
sbx run --kit "git+https://github.com/praialabs/sbx-kits.git#dir=agents/<kit-dir>" <agent-name>Example:
sbx run --kit "git+https://github.com/praialabs/sbx-kits.git#dir=agents/agy" --kit "git+https://github.com/praialabs/sbx-kits.git#dir=mixins/default-allow-policies" agyFor more details on Git remote references, see the Docker Sandboxes Git Repository Documentation.
This repository also contains custom templates that pre-bake additional tools into the sandbox image to avoid repetitive installation steps.
- Elixir, Erlang & Node.js Template: extends
docker/sandbox-templates:shell-dockerand pre-installsasdf, Erlang, Elixir, and Node.js. Installation viaasdflets agents not only work with Elixir, but also install other versions as needed. - Google Antigravity CLI + Elixir Template: extends the Elixir base template and pre-bakes the Google Antigravity CLI (
agy) into the sandbox image.
We manage building template images using Docker Bake, which ships with Docker and automatically handles building one or more images using a declarative file, simplifying the build process into a single unified command:
docker buildx bakeYou can use environment variables to override specific tool versions during the build process:
ERLANG_VERSION=latest:28 ELIXIR_VERSION=1.19-otp-28 docker buildx bakeIf you want to compile a specific target individually:
# Build only the Elixir base image
docker buildx bake elixir-docker
# Build only the Antigravity CLI + Elixir image
docker buildx bake agy-elixir-dockerOnce built, you can stream the images directly into the local sbx runtime image store:
docker image save praialabs/sandbox-templates:elixir-docker | sbx template load /dev/stdin
docker image save praialabs/sandbox-templates:agy-elixir-docker | sbx template load /dev/stdinTo spin up the Google Antigravity CLI sandbox with Elixir, Erlang, and pre-configured network allow-policies, run:
sbx run \
--kit "git+https://github.com/praialabs/sbx-kits.git#dir=agents/agy" \
--kit "git+https://github.com/praialabs/sbx-kits.git#dir=mixins/default-allow-policies" \
--template praialabs/sandbox-templates:agy-elixir-docker \
agy