One Python file boots 17 guest operating systems across 7 CPU architectures -- on Linux, macOS and Windows.
Need to test your code on FreeBSD? On NetBSD/sparc64? On Solaris, Haiku, or Plan 9? One command:
anyvm --os freebsd -- uname -aanyvm.py is a single Python file with no third-party dependencies. It picks a
prebuilt, CI-verified guest image, downloads it, configures QEMU with defaults
that actually work for that guest and that architecture, boots it, and drops
you into an SSH session -- or runs your command inside the guest and exits.
No libvirt, no Vagrant, no VirtualBox, and no image to build yourself.
pip install anyvm.py # or: brew install anyvm-org/tap/anyvm
anyvm --os freebsdPrefer a container? docker run --rm -it ghcr.io/anyvm-org/anyvm:latest --os freebsd
Or launch straight into a ready-made cloud environment:
A few more things it does out of the box:
# Pick a release and a CPU architecture
anyvm --os netbsd --release 11.0 --arch sparc64
# Share a host folder with the guest
anyvm --os freebsd -v "$PWD:/data"
# Boot a desktop image and open it in your browser
anyvm --os openbsd --release 7.9-xfce- One file, standard library only. Nothing to compile, nothing to vendor.
Copy
anyvm.pyaround and it works. - Images are prebuilt and boot-tested. Every image in the matrix below is produced and verified by its own builder repository in this organization, on every release -- so a green check means that guest really boots on that architecture today.
- Acceleration is automatic. KVM, HVF or WHPX is detected and used when available, with a clean fall back to TCG emulation when it is not.
- Folder sync that works everywhere. Six backends (
rsync,sshfs,nfs,sys-nfs,scp,9p), including a bundled pure-Python NFS server so even Windows and macOS hosts can export a directory without root. - A graphical console in your browser. The built-in VNC web UI starts by
default, with clipboard, fullscreen, optional password, and one-flag public
tunnelling via
--remote-vnc. - Desktops, not just shells. XFCE, GNOME, KDE, MATE, LXQt and more ship as ready-to-boot desktop images for several guests.
Hosts: Linux, macOS and Windows, natively on x86_64 and arm64. See the anyvm README for the full host-to-guest support table.
The same images run inside the vmactions GitHub
Actions -- freebsd-vm, openbsd-vm, netbsd-vm, solaris-vm and friends --
which execute your CI steps inside a real BSD or illumos guest on GitHub's
Linux runners.
Core
| Repository | What it is |
|---|---|
| anyvm | The launcher: one Python file, no dependencies, every guest and architecture above. |
| docker | Run any guest inside a Docker container -- disposable environments for CI and throwaway work. |
| homebrew-tap | brew install anyvm-org/tap/anyvm, with QEMU pulled in as a dependency. |
AI agents
| Repository | What it is |
|---|---|
| mcp | MCP server -- let Claude Code, Copilot or any MCP client boot and drive VMs for you. |
| anyvm-skill | Agent skill file that teaches an assistant to use anyvm from plain-language requests. |
Images
base-builder is the single template every image builder is generated from. Each guest then gets its own builder repository, which builds, boots and publishes that guest's images:
blissos · dragonflybsd · freebsd · ghostbsd · haiku · hurd · midnightbsd · netbsd · nextbsd · omnios · openbsd · openeuler · openindiana · plan9 · solaris · tribblix · ubuntu
Infrastructure
| Repository | What it is |
|---|---|
| nfsd | A user-space NFSv3/v4.0/v4.1/v4.2 server in one pure-Python file. Powers --sync nfs on any host, no root and no kernel module. |