Verboo Code: how to sandbox the agent's commands with /sandbox
Back to the blog
Articleverboo codetutorialdev toolshow tosegurança

Verboo Code: how to sandbox the agent's commands with /sandbox

MafraSeptember 24, 20264 min read

Verboo Code can run the Bash commands the agent decides to execute inside an OS-level sandbox, with no network access outside an allowlist and no writes outside the folders it's allowed to touch. The feature already ships in the CLI, but it's off by default, and most people who use Verboo Code every day have never typed the command that turns it on: /sandbox.

How do you enable command sandboxing in Verboo Code?

Add sandbox.enabled: true to your user settings (never to the project's settings file, more on why below). From then on, Bash and other tools that touch the filesystem or the network try to run inside the sandbox before asking for confirmation.

{
  "sandbox": {
    "enabled": true
  }
}

Sandboxing works on macOS, Linux and WSL2. WSL1 isn't supported. On Linux and WSL2 you also need two dependencies installed:

sudo apt install bubblewrap socat

Without them, Verboo Code doesn't pretend the command was sandboxed: it tells you the dependency is missing and what to install.

Why can't you turn this on in the project's settings.json?

Because that's exactly the file an untrusted repository could ship pre-filled. The sandbox.enabled flag is only read from your user settings or your local (untracked) settings, never from the settings file that comes inside the project itself. A malicious repository can't turn off your sandbox, or make you believe one is on when it isn't, just by editing a file you're about to clone.

What shows up when you run /sandbox?

A menu with 4 tabs, enough to configure and diagnose the sandbox without hand-editing JSON:

TabWhat it shows
Modethe current mode (Auto-allow or off) and the option to switch
Overridesthe commands you've already marked to always run outside the sandbox
Configallowed network domains and other fine-grained options
Dependencieswhat's missing on your system, if anything is

What changes in command approval once the sandbox is on?

In Auto-allow mode, a command tries to run inside the sandbox automatically, without stopping to ask. If it can't be sandboxed for some reason, it falls back to the regular permission flow, with the usual prompt. Explicit ask or deny rules you've already set still apply either way.

This changes who decides whether a command runs. Without sandboxing, you approve every Bash command before it executes. With Auto-allow on, the sandbox boundary itself is what approves it: if the command is contained, it runs straight away. That only protects what the configuration actually restricts. A command with access to a sensitive domain listed in allowedDomains, for example, still has access to that domain from inside the sandbox. It's worth reviewing that list before relying on Auto-allow for everything.

How do you restrict network access and add a one-off exception?

To limit which domains a sandboxed command can reach, use network.allowedDomains:

{
  "sandbox": {
    "enabled": true,
    "network": {
      "allowedDomains": ["registry.npmjs.org", "github.com"]
    }
  }
}

For the opposite case, a specific command that needs to run outside the sandbox, use /sandbox exclude right in the session:

/sandbox exclude "npm run test:*"

That writes the pattern to your project's local settings (the untracked file), and that command runs outside the sandbox from then on, without asking again every time.

Sandbox flow in Verboo Code: turn it on in settings, check status and mode with /sandbox, mark one-off exceptions, and install bubblewrap and socat if missing on Linux.
Verified in the verbeux-ai/code source on 2026-09-24, src/utils/sandbox/sandbox-adapter.ts and src/commands/sandbox-toggle/.

Letting an agent run commands on its own is already a trade of control for speed. Sandboxing doesn't remove that trade, but it changes how much damage is possible: instead of relying only on human review of every line, there's a second boundary at the operating system level. If you already let Verboo Code run commands without confirming each one, this is the setting that closes that door without slowing the agent down.

Enjoyed this article?
Share knowledge with your network.
// Read also

Related articles