Today framework "..." runs Claude Code (the driver) directly on the host cwd — the agent writes and runs code on your machine, unsandboxed. The only Runner it touches is LocalRunner, and only with --serve (to boot-verify the app on the host). The Docker/WebContainer adapters from #109/#223 exist behind the Runner seam but are not wired into the framework.
Goal: let a run build + verify inside a sandbox so untrusted, agent-authored code never touches the host.
Notes on feasibility:
- Docker is the tractable target. Run the driver's work inside a container: either run
claude in the container against a mounted workspace, or (smaller first step) route the --serve boot-and-serve check through DockerRunner instead of LocalRunner.
- WebContainer does not fit the Claude Code driver — it's a browser Node runtime with no
claude binary. It only fits a browser-hosted build where the agent is ai-autopilot's own (via runnerTools), which is a separate, larger path.
Suggested first slice: make the runner behind --serve pluggable (Local | Docker), so verification can be sandboxed, then tackle sandboxing the build itself.
Part of #110; builds on #109.
Today
framework "..."runs Claude Code (the driver) directly on the host cwd — the agent writes and runs code on your machine, unsandboxed. The onlyRunnerit touches isLocalRunner, and only with--serve(to boot-verify the app on the host). The Docker/WebContainer adapters from #109/#223 exist behind theRunnerseam but are not wired into the framework.Goal: let a run build + verify inside a sandbox so untrusted, agent-authored code never touches the host.
Notes on feasibility:
claudein the container against a mounted workspace, or (smaller first step) route the--serveboot-and-serve check throughDockerRunnerinstead ofLocalRunner.claudebinary. It only fits a browser-hosted build where the agent is ai-autopilot's own (viarunnerTools), which is a separate, larger path.Suggested first slice: make the runner behind
--servepluggable (Local | Docker), so verification can be sandboxed, then tackle sandboxing the build itself.Part of #110; builds on #109.