TartDesk is a macOS desktop GUI for managing Tart virtual machines and OCI images.
Built with SwiftUI, it provides a native interface for browsing local Tart VMs, creating VMs from OCI images, editing VM settings, running or stopping machines, and accessing SSH information from your Mac.
If Tart is not installed, TartDesk shows an install screen on launch and can install Tart for you from within the app via Homebrew.
The latest signed app bundle is available from GitHub Releases.
- Download the latest
.zipfrom Releases. - Extract
TartDesk.app. - Drag and drop
TartDesk.appinto yourApplicationsfolder. - Launch
TartDesk. IfTartis missing, the app will prompt you to install it and can run the Homebrew install command for you. - Install
Tartmanually if you prefer:
brew install cirruslabs/cli/tart- macOS 14+
tartinstalled separately and available on the machine- Homebrew if you want TartDesk to install
Tartfor you from inside the app - Tart-compatible VMs or OCI images
TartDesk does not bundle Tart.
- List local VMs and OCI images
- Detect when
Tartis missing and show an install flow on launch - Install
Tartfrom inside the app via Homebrew - Deduplicate OCI tag and digest entries in the UI
- Run local VMs in graphics or headless mode
- Configure per-VM shared folders from Edit VM Settings and apply them on run
- Stop local VMs
- Create local VMs from OCI images or other local VMs
- Create empty VMs
- Edit local VM settings
- name
- CPU
- memory
- display size
- disk size
- Delete local VMs with confirmation
- Show Guest Agent /
tart execstatus - Show VM IP address for SSH
- Copy SSH command
- Open SSH command in Terminal
- OCI images cannot be run directly. Clone them into a local VM first.
TartDeskis a GUI wrapper around thetartCLI and depends on a separately installedTart.- If
Tartis not installed, TartDesk can triggerbrew install cirruslabs/cli/tartfrom the app. This requires Homebrew to already be installed. - Some features depend on guest setup, for example:
- SSH requires guest networking and an SSH server
tart execrequires Tart Guest Agent support in the guest- Shared folders require Tart's directory sharing support; macOS guests mount them under
/Volumes/My Shared Filesby default
dist/is a build artifact directory and is not meant to be committed.
General distribution uses the notarized GitHub Actions flow in .github/workflows/release.yml.
Push a version tag to trigger the workflow:
git tag v0.0.1
git push origin v0.0.1The workflow runs on the self-hosted macOS runner and:
- builds
TartDesk.app - signs it with
Developer ID Application - notarizes and staples it
- uploads the final zip to GitHub Releases
You can also run the workflow manually from the GitHub Actions UI when needed.
Run the app directly from Swift Package Manager:
swift runBuild only:
swift buildBuild a local .app bundle:
./scripts/build-app.shThis project is licensed under the MIT License. See LICENSE.
TartDesk and Tart are licensed separately.
TartDesk: MIT LicenseTart: licensed by Cirrus Labs under the Fair Source License 0.9
See the official Tart repository and its license for details: