boxlite  by boxlite-ai

Secure, embeddable micro-VM runtime for AI agents

Created 1 month ago
451 stars

Top 66.7% on SourcePulse

GitHubView on GitHub
Project Summary

An embeddable micro-VM runtime, BoxLite addresses the critical need for secure, isolated execution environments for AI agents and other applications. It targets developers and platforms requiring agents to have full freedom—including code execution, package installation, and network access—without risking host system compromise. BoxLite offers the robust security of hardware-level virtual machines combined with the simplicity and ease of integration typically associated with containers, enabling scalable, multi-tenant AI hosting and safer local development.

How It Works

BoxLite functions as an embeddable library, leveraging hardware virtualization (KVM on Linux, Hypervisor.framework on macOS) to create lightweight, isolated micro-VMs, referred to as "Boxes." Each Box runs a separate Linux kernel, providing strong hardware-level isolation. Crucially, BoxLite is OCI compatible, allowing it to run standard container images (like python:slim or node:alpine) within these secure VMs. This architecture ensures that agents operate within a complete, uncompromised Linux environment, capable of installing packages and accessing resources, while guaranteeing that nothing can escape to the host system, unlike container-only solutions.

Quick Start & Requirements

  • Install: pip install boxlite (requires Python 3.10+).
  • Prerequisites:
    • macOS: Apple Silicon (ARM64) with macOS 12+.
    • Linux: x86_64 or ARM64 with KVM enabled (/dev/kvm accessible).
  • Links: Examples available. API Reference and Node.js/Go SDKs are listed as "Coming soon."

Highlighted Details

  • OCI Compatible: Seamlessly run any Docker/OCI image from public or private registries.
  • Hardware Isolation: Each Box is a distinct micro-VM with its own kernel, ensuring robust security.
  • Embeddable Runtime: Integrates directly into applications as a library; no separate daemon or root privileges required.
  • Cross-Platform: Supported on Linux (x86_64, ARM64) and macOS (Apple Silicon).
  • Features: Includes compute resource control, environment variable customization, persistent storage (QCOW2), volume mounts, networking (full internet access, port forwarding), async API, and streaming I/O.

Maintenance & Community

Community support is available via GitHub Issues for bug reports and feature requests, and GitHub Discussions for general questions. Contribution guidelines are provided.

Licensing & Compatibility

Licensed under the Apache License, Version 2.0. This license is permissive and generally compatible with commercial use and closed-source applications.

Limitations & Caveats

BoxLite does not support macOS Intel (x86_64) or Windows platforms. Official SDKs for Node.js and Go, along with a comprehensive API reference, are still under development.

Health Check
Last Commit

17 hours ago

Responsiveness

Inactive

Pull Requests (30d)
63
Issues (30d)
20
Star History
455 stars in the last 30 days

Explore Similar Projects

Feedback? Help us improve.