← Back to Discover

brood-box

A command-line tool that boots a lightweight virtual machine for each coding-agent session, so the agent works on a copy of your project and you approve file changes before they reach it.

AI security & guardrailsCommand-line tools

What it does

Brood Box is a command-line tool, run as bbox, that starts a coding agent inside a small virtual machine instead of directly on your computer. It boots the VM with libkrun, using KVM on Linux or Hypervisor.framework on Apple Silicon Macs. The project says this gives stronger separation than a container, because a container shares the host kernel. Your workspace is cloned as a copy-on-write snapshot, so the agent never touches your real files. When the agent exits, a per-file diff review lets you accept or reject each change before it is written back. Only the secrets you choose are forwarded into the VM, and files such as .env and key files are always left out of the snapshot. Claude Code, Codex, OpenCode, Hermes and Gemini CLI are supported out of the box. You can also define custom agents or run an arbitrary container image as a one-off. An egress firewall with three profiles (permissive, standard and locked) controls which hosts the VM can reach, and ToolHive MCP servers are discovered and proxied into the VM. The project describes itself as experimental, so APIs, flags and config format may change between releases. It is open source under the Apache-2.0 licence, and you supply the API key for whichever agent you run.

Capabilities

  • Runs each agent session in a hardware-isolated microVM
  • Copy-on-write workspace snapshot with per-file diff review
  • Three egress profiles: permissive, standard and locked
  • Built-in support for Claude Code, Codex, OpenCode, Hermes and Gemini CLI, plus custom agents
  • Proxies ToolHive MCP servers into the VM
  • Forwards only the secrets you specify

When to use it

  • You want to try a coding agent without giving it direct access to your files
  • You want to review every change an agent makes before it reaches your project
  • You need to limit which network hosts an agent can reach