How OpenAI’s Open‑Source Tart Enables macOS and Linux VMs on Apple Silicon
Tart is an open‑source Apple Silicon virtualization toolkit that uses the native Virtualization.Framework to run Docker‑style macOS and Linux VMs with OCI‑compatible images, seamless CI/CD integration, and adoption by companies like Atlassian and Figma, offering near‑native performance and easy automation.
Overview
Tart is an open‑source virtualization toolset hosted on GitHub that runs macOS and Linux virtual machines on Apple Silicon (M1/M2/M3/M4) using Apple’s Virtualization.Framework . It provides Docker‑style image management, OCI‑compatible push/pull, a Packer plugin for automated VM creation, and native integration with CI systems.
Key capabilities
Near‑native performance by leveraging Virtualization.Framework.
VM images can be pushed to or pulled from any OCI‑compatible registry (e.g., ghcr.io, Docker Hub).
Packer plugin automates VM build pipelines.
CLI commands mirror Docker workflow: tart clone, tart run, tart push.
Installation
Three commands install Tart via Homebrew, clone a macOS Tahoe base image, and start the VM:
brew install cirruslabs/cli/tart
tart clone ghcr.io/cirruslabs/macos-tahoe-base:latest tahoe-base
tart run tahoe-baseThe base image is ~25 GB. Manual installation is also possible:
curl -LO https://github.com/cirruslabs/tart/releases/latest/download/tart.tar.gz
tar -xzvf tart.tar.gz
./tart.app/Contents/MacOS/tart clone ghcr.io/cirruslabs/macos-tahoe-base:latest tahoe-base
./tart.app/Contents/MacOS/tart run tahoe-baseSystem requirements: Apple Silicon with macOS 13.0 (Ventura) or later.
Core operations
SSH into a VM : ssh admin@$(tart ip tahoe-base) Directory mounting (host → VM): tart run --dir=project:~/src/project vm macOS guests auto‑mount to /Volumes/My Shared Files/project; Linux guests require manual mount:
sudo mkdir /mnt/shared
sudo mount -t virtiofs com.apple.virtio-fs.automount /mnt/sharedPush VM image to OCI registry :
tart push my-local-vm acme.io/org/name:latest acme.io/org/name:v1.0.0Create a macOS VM from an IPSW :
tart create --from-ipsw=latest tahoe-vanilla
tart run tahoe-vanillaDownloads the latest macOS IPSW and starts a fresh VM.
CI/CD integration
Using Tart with Cirrus CLI provides a Docker‑like CI experience. Example .cirrus.yml:
task:
name: hello
macos_instance:
image: ghcr.io/cirruslabs/macos-tahoe-base:latest
hello_script:
- echo "Hello from within a Tart VM!"
- sysctl -n machdep.cpu.brand_stringRun the pipeline:
brew install cirruslabs/cli/cirrus
cirrus runThe process pulls the image, starts the VM, copies the workspace, executes the scripts, and collects artifacts, reproducing Docker CI behavior with a full macOS environment.
Comparison with alternative solutions
Tart – performance: near native; macOS support: full; OCI support: native; CI friendliness: very high.
UTM – performance: good; macOS support: supported; OCI support: none; CI friendliness: low.
VMware Fusion – performance: average; macOS support: supported; OCI support: none; CI friendliness: medium.
Lima/Colima – performance: good; macOS support: Linux only; OCI support: partial; CI friendliness: medium.
Docker – performance: native; macOS support: not supported; OCI support: native; CI friendliness: very high.
Adoption
Organizations reported using Tart internally, including Atlassian, Figma, Mullvad VPN, Expo, and Krisp. The GitHub repository has ~6.1 k stars and 317 forks, indicating active community interest.
Use cases
iOS/macOS development teams – cross‑version testing (macOS 12‑26) without physical devices.
CI/CD engineers – building macOS build clusters or self‑hosted GitHub Actions runners.
AI agent developers – providing isolated sandbox environments for agents such as Claude Code.
Security researchers / malware analysts – disposable, isolated VMs for analysis.
Limitations
Tart runs exclusively on Apple Silicon and requires macOS 13 or newer; Intel‑based Macs are not supported.
Speculative deployment
It is hypothesized that OpenAI may use Tart as a sandbox for AI agents, exemplified by the community project ClodPod , which creates an isolated macOS VM for Claude Code and exposes only a project directory, allowing safe execution of claude --dangerously-skip-permissions.
Signed-in readers can open the original source through BestHub's protected redirect.
This article has been distilled and summarized from source material, then republished for learning and reference. If you believe it infringes your rights, please contactand we will review it promptly.
Old Zhang's AI Learning
AI practitioner specializing in large-model evaluation and on-premise deployment, agents, AI programming, Vibe Coding, general AI, and broader tech trends, with daily original technical articles.
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.
