Skip to main content

inspect-glovebox

A sandbox provider for UK AISI Inspect that runs each sample in a hardware-isolated microVM with a default-deny outgoing-traffic allowlist, and hands your scorer the record of every host the agent reached.

If pip install inspect-glovebox reports no matching distribution, no release has reached PyPI yet. Install this package and its glovebox-driver dependency from the repository instead, which tracks the main branch rather than a released version:

pip install \
  "glovebox-driver @ git+https://github.com/AlexanderMattTurner/agent-glovebox.git#subdirectory=glovebox-driver" \
  "inspect-glovebox @ git+https://github.com/AlexanderMattTurner/agent-glovebox.git#subdirectory=inspect-glovebox"

Adoption is one line on your Task

from inspect_glovebox import GloveboxSandboxConfig, glovebox_egress_scorer

Task(
    dataset=dataset,
    solver=solver,
    sandbox=SandboxEnvironmentSpec("glovebox", GloveboxSandboxConfig(memory="4g")),
    scorer=glovebox_egress_scorer("pastebin.com"),
)

Inspect finds the provider through this distribution's inspect_ai entry point, so nothing in your own code imports it. sandbox="glovebox" alone takes every default below.

What the host needs

The provider drives the glovebox command, which drives Docker's sbx sandbox runtime. A glovebox you installed (glovebox) is used first; with none on PATH, the provider downloads the release this package pins, refuses it unless its SHA-256 matches the pinned digest, and runs it from ~/.cache/inspect-glovebox. Sign in to sbx, then ask whether this host qualifies:

inspect-glovebox sandbox preflight

That console script comes with this package and runs whichever glovebox a task would drive, so it works before you have installed one. Run glovebox sandbox preflight instead when you installed the CLI yourself.

It exits 0 when the host can boot a sandbox, and otherwise names what is missing and the command that installs it. GLOVEBOX_BIN points the provider at a bin/glovebox that is not on PATH. Every task refuses at startup on a host that fails preflight, so one bad host costs one error and not one error per sample.

Configuration

Field Default Purpose
workspace None Host directory bound into the guest; None mints an empty one per sample.
allowlist None Path to a domain-allowlist.json saying which hosts the guest may reach and how; None takes glovebox's shipped list.
per_sample_workspace True Give each sample a private copy of workspace.
boot_timeout 300 Seconds to wait for the microVM to become usable.
cpus None Virtual CPUs for the VM; None takes glovebox's own cap.
memory None Memory ceiling, such as 4g; None takes glovebox's own cap.
user glovebox-agent The de-privileged guest identity every command runs as.
rootfs_image None Boot from this image, already built by glovebox sandbox build-rootfs; a compose image: fills it in.
capture_egress True Write each sample's outgoing-traffic record under INSPECT_LOG_DIR, which --log-dir does not set.

Read next

docs/inspect-provider.md covers the lifecycle, custom scorers over the traffic record, cleanup and troubleshooting. It also states which tools run at the model provider rather than in the sandbox, which the allowlist cannot bound. examples/claude_code_task.py is a runnable Claude Code task. examples/containment_smoke.py needs no model API key: inspect eval containment_smoke.py --model mockllm/model boots one sandbox, reaches for an allowed host and a refused one, and grades what left. The sandbox itself lives in the agent-glovebox repository, whose SECURITY.md states the threat model and what each layer does not stop.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

inspect_glovebox-0.4.0.tar.gz (117.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

inspect_glovebox-0.4.0-py3-none-any.whl (131.9 kB view details)

Uploaded Python 3

File details

Details for the file inspect_glovebox-0.4.0.tar.gz.

File metadata

  • Download URL: inspect_glovebox-0.4.0.tar.gz
  • Upload date:
  • Size: 117.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.7 {"installer":{"name":"uv","version":"0.12.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for inspect_glovebox-0.4.0.tar.gz
Algorithm Hash digest
SHA256 3c308494b66ded3a8b48d0ba30533c51050d7d0595fccb39f33d41a5ec59cfd1
MD5 a7f27c4ef459985273bc4af11c3b1897
BLAKE2b-256 37b2b8df8b448e6de9b7f150d27201cd955bafe11c7e35d3b532003ad8ae4579

See more details on using hashes here.

File details

Details for the file inspect_glovebox-0.4.0-py3-none-any.whl.

File metadata

  • Download URL: inspect_glovebox-0.4.0-py3-none-any.whl
  • Upload date:
  • Size: 131.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.7 {"installer":{"name":"uv","version":"0.12.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for inspect_glovebox-0.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 4884a9c483e1d8d1dc9f1af37ee5fe0ef7bcc52d228e392f7275e58867eb582e
MD5 6b6c8bfdc7cf0e8fd3eaccc68ba35123
BLAKE2b-256 8fc2304c345fbdc1b368c9e39331b000580bdbac1c59e056b4e5a4b10c0db094

See more details on using hashes here.

Release history Release notifications | RSS feed

0.4.2

2 files

0.4.1

2 files

This release

0.4.0 This release

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page