Project

agentbox

active

Docker sandbox for coding agents — preinstalled runtimes, opt-in services, DinD.

Overview

Agentbox is a Debian Trixie container with Copilot CLI, Claude, Codex, and Pi preinstalled alongside git, gh, bun, uv, and brew.

It provides Docker, ssh, and a GUI image with RDP (disabled by default, enabled via env vars) and an XFCE desktop environment, as well as a workspace skeleton with SKILL.md templates to help coding harnesses feel at home.

Motivation

Since I never run agents on my personal machines and spend a lot of time on an iPad (as well as switching to and from desktop/laptop/other OSes), I needed something that would work remotely _and_ from whatever I was using at the time. And since I can survive most places with vim and tmux, this seemed like a good way to have persistent sandboxes (both TUI and graphical) I could get at over Tailscale.

Together with webterm, this proved to be a very effective environment until I built piclaw, and I still use and maintain it for other purposes.

How it works

The entrypoint checks ENABLE_DOCKER, ENABLE_SSH, and ENABLE_RDP and starts only what you asked for — all three default to off. The agent user gets passwordless sudo, and the workspace skeleton at /home/agent/workspace-skel copies into /workspace on first use without overwriting files.

Features
🤖
Agents preinstalled

Copilot CLI, Claude, Codex, Pi baked in. Toad, OpenCode and Gemini via make targets.

🔒
Opt-in services

Docker, SSH, RDP all off by default. Enable explicitly.

🖥
CLI and GUI images

:latest is headless. :gui adds XFCE, XRDP, VS Code.

📘
Workspace skeleton

SKILL.md templates without overwriting existing files.

🐳
Docker-in-Docker

Run privileged and agents get their own Docker daemon.

Architecture
Agent CLI claude / toad / aider webterm browser terminal UI Docker container isolated sandbox Dev tools git · bun · python Shell bash + tmux Shared workspace bind-mounted volume SSH/exec Docker sandbox for coding agents with shared workspace
Posts