Mobile apps and emulators
Boot an Android emulator, Firecracker or QEMU inside the sandbox through nested KVM, for tests and agents that use apps.
For Mobile QA and agents that operate apps
Why it pays
- Hardware acceleration inside Nested
/dev/kvmlets emulators run with KVM, not slow software emulation. - Watch or let an agent tap Stream the desktop to see the emulator, or drive it with computer use.
- Snapshot a booted device Save a template with the emulator image ready, and start new devices from it.
Step by step
Start a large sandbox and check KVM
Nested virtualization is on for every sandbox.
CLI
harebox new --name android --size large harebox exec current -- ls -l /dev/kvmPython
box = hb.create(name="android", size={"preset": "large"}) print(box.run("ls -l /dev/kvm")["stdout"])TypeScript
const box = await hb.create({ name: "android", size: { preset: "large" } }); console.log((await box.run("ls -l /dev/kvm")).stdout);Boot the emulator
Install the SDK's command-line tools, then start a device headless or on the desktop.
CLI
harebox exec current -- ./setup-android-sdk.sh harebox exec current --detach -- emulator -avd pixel -no-snapshot -gpu swiftshader_indirectSee it and drive it
Open the desktop, or let an agent tap through the app.
CLI
harebox desktop current harebox prompt current "Open the app, sign up with a test account, and report any crash" --harness claude --budget 2
Tips
- Save a template after the first boot, so each new device skips the slow setup.
- Memory snapshots and sleep are off while a nested guest runs. Stop and resume instead.
- Firecracker microVMs work the same way, for tests of your own VM tooling.
Related use cases
Data and research agents
Give an analysis agent notebooks, databases and the open web, run it on a schedule, and get results pushed to you.
See the stepsWindows apps through Wine
Automate a legacy Windows tool on a Linux desktop, driven by an agent through computer use.
See the stepsTeaching, workshops and interviews
Give every student or candidate an identical machine from a template, with a budget, and watch their desktop when they ask for help.
See the steps

