We build on the dev container standard, so the output works with VS Code and GitHub Codespaces out of the box.
Main use cases: reproducible dev/CI environments, self-describing repos, and safely sandboxed coding agents.
Our goal is to encourage all repos to self-describe their runtime environment.
Why the sandbox? Running Claude directly against your Docker daemon is risky. We've watched it clear Docker config and tweak kernel settings when iterating on containers. Containerization matters most when your agent is acting like a sysadmin.
To use it: get a Modal account and an Anthropic API key, run Keystone on your repo, check in the .devcontainer/ directory. See the project README for more details.