microsoft/nvx
Cross-Platform Micro-VM Sandbox for Agentic Workloads - microsoft/nvx
188 stars · 13 forks
README
NVX: An Ultra-Light Micro-VM Sandbox NVX is an ultra-light micro-VM sandbox for running untrusted workloads with hardware-enforced isolation. It is built on top of OpenVMM and runs Linux as a guest. NVX was jointly developed by the MSR Systems Research Group and Azure Research - Systems, building on research results from the Nanvix system. This repository includes version pins for Linux and OpenVMM, along with the patches, guest source files, build tools, and benchmarks needed to use NVX. Quick Start Python 3.10 or newer is required. The commands below download the latest NVX release for the selected platform, so no local build is required. A successful boot prints NVX-GUEST-BOOT-OK: alpine and opens a root shell. Select Ubuntu userland with the same NVX kernel by passing --guest ubuntu. Exit cleanly from the guest with /sbin/nvx-exit 0. See the setup and run guides for detailed prerequisites and runtime options.
ℹ️ For direct OpenVMM integration without the scripts/nvx.py runtime harness, see Run OpenVMM directly.
Linux / KVM Requires KVM configured with read/write access to /dev/kvm. git clone https://github.com/microsoft/nvx.git && cd nvx python3 scripts/nvx.py download python3 scripts/nvx.py run Linux / MSHV Requires MSHV configured with read/write access to /dev/mshv. git clone https://github.com/microsoft/nvx.git && cd nvx python3 scripts/nvx.py download --hypervisor mshv python3 scripts/nvx.py run --hypervisor mshv Windows / WHP Requires Windows Hypervisor Platform enabled. git clone https://github.com/microsoft/nvx.git; Set-Location nvx python scripts\nvx.py download python scripts\nvx.py run Documentation Usage
Setup - Instructions for setting up your environment. Build - Instructions for building NVX. Run - Instructions for running NVX. Benchmark - Instructions for benchmarking NVX. Command-line reference - Complete scripts/nvx.py command and option reference.
Development
Design - Current microVM architecture and ABI. Project structure - Overview of the NVX repository layout. Continuous integration - Instructions for running and maintaining NVX CI. Copilot-driven adversarial testing - Bounded adaptive stress and containment campaigns. Package and source delivery - Instructions for packaging and distributing NVX. Contributing - Guidelines for contributing to NVX.