Open source · MIT licensed

Double your Mac capacity. Same hardware.

Run 2 macOS VMs per Mac with APFS cloning, ephemeral runner pools, and warm-pool scrub validation. Open source, $0 forever.

spooktacular
# Create ephemeral GitHub runners on your Mac fleet
$ spook list
NAME STATUS CPU MEM IP
runner-01 running 8 16G 192.168.64.3
 
# Verify host readiness
$ spook doctor
Apple Silicon (arm64)
macOS 15.4.0 · TLS configured · Capacity: 0/2
 
# Clone a VM in 48ms
$ spook clone base runner-01
com.apple.finder Finder running
com.apple.Safari Safari running
784
Tests
27
CLI commands
~47K
Lines of Swift
$0
Forever

Built for real workflows

Four primary use cases, each with dedicated templates and CLI commands.

CI/CD Runners

Ephemeral GitHub Actions runners. Clone from a base image, run one job, destroy. 2x capacity per Mac.

AI Agents

Give computer-using agents a full macOS desktop. SPICE clipboard bridge syncs the pasteboard between host and guest.

Remote Desktop

Personal macOS desktops for developers. Metal GPU, auto-resize display, audio, shared folders.

DevOps

HTTP API with Bearer auth. LaunchDaemon services, templates, and disk-level snapshots.

How we compare

Feature parity with commercial tools. MIT licensed, $0 forever.

Feature Spooktacular GhostVM Tart Anka
LicenseMIT (free)ProprietaryFair SourceProprietary
Clipboard sync (SPICE)YesYesNoPartial
APFS cloneYes (48ms)YesYesYes
HTTP APIYes + Bearer authBasicNoYes
Templates4 built-inNoNoPaid
Native guest provisioningYesYesYesYes
SwiftUI GUILiquid GlassNoNoYes
Price$0$$$$0-$36KContact sales

See full comparison →

Apple allows 2 VMs per Mac

The macOS Software License Agreement permits running up to two additional copies of macOS in virtual machines on each Apple-branded computer running Apple Silicon.

1x
Host Mac
+2x
macOS VMs
3x
Total capacity

Spooktacular enforces this limit via CapacityCheck.swift. Apple's EULA Section 2B(iii) explicitly permits virtualization on Apple Silicon. No additional licenses required.

Enterprise Operating Model

Security Model

Mandatory mTLS in production. RBAC with break-glass emergency access. Keychain-backed secrets. TLS certificate hot reload.

Isolation Semantics

Ephemeral: destroy after each job. Warm pool: scrub + validate, destroy on failure. Persistent: named identity with snapshots. Failed scrub = VM destroyed, never reused.

EC2 Mac Mapping

One Dedicated Host → one Spooktacular node → two VM slots. Ephemeral mode = your Replace Root Volume equivalent, but faster. SSM for fleet operations.

Runner Pools

Ephemeral GitHub Actions runners with auto-registration and automatic cleanup after each job — clone, register, run, destroy.

Full security model and deployment classes →

Ready to double your Mac capacity?

793 tests. 27 CLI commands. $0. Install and create your first VM in under 20 minutes.