gitwtfhub

wtf is tart-skills?

jonnyzzz/tart-skills — explained in plain English

Analysis updated 2026-05-18

1ShellAudience · developerComplexity · 4/5Setup · hard

TL;DR

Lets a Linux-based AI agent remotely control a full macOS desktop VM over SSH to run GUI tests without owning a Mac.

Mindmap

mindmap
  root((tart-skills))
    What it does
      Control macOS VM
      Screenshot and click
      Record video
    Tech stack
      Shell scripts
      Tart
      SSH
    Use cases
      GUI testing
      Drive IntelliJ
      Record sessions
    Audience
      Developers
      AI agent builders
    Setup
      Apple Silicon Mac
      Enable SSH
      Install Tart

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Why would anyone build with this?

REASON 1

Run automated GUI tests on macOS from an agent that only has Linux available.

REASON 2

Take screenshots of a macOS virtual machine to verify how an app renders.

REASON 3

Launch and drive IntelliJ IDEA inside a remote macOS VM to test IDE workflows.

REASON 4

Record a video of a GUI session running inside the macOS VM.

What's in the stack?

ShellTartSSHmacOS

How it stacks up

jonnyzzz/tart-skills100/dotfilesabdellaouiamir/palworld-server
Stars111
LanguageShellShellShell
Last pushed2016-11-18
MaintenanceDormant
Setup difficultyhardeasymoderate
Complexity4/51/53/5
Audiencedeveloperdeveloperops devops

Figures from each repo's GitHub metadata at analysis time.

How do you spin it up?

Difficulty · hard Time to first run · 1h+

Requires an Apple Silicon Mac host with Tart installed and SSH remote login enabled.

Wtf does this do

This project gives an AI agent running on Linux a way to control a full macOS desktop, even though the agent has no Apple hardware of its own. It does this through Tart, a tool that runs macOS virtual machines on Apple Silicon Macs. Since Tart only works on a real Mac, the agent cannot use it directly, so this project bridges the gap with two SSH connections: one from the Linux agent to a Mac host, and a second from that Mac host into the macOS virtual machine itself. Once connected, the agent can take screenshots of the virtual machine's screen, click and type inside it, launch the IntelliJ IDEA code editor, open a project, and even record what happens as a video file. This effectively gives the agent eyes and hands inside a real macOS graphical session, Finder, Dock, wallpaper and all, so it can test how software actually looks and behaves on a Mac. The project is organized as a set of individual skills, each one handling a specific job: setting up the initial connection, creating and managing the virtual machine, taking screenshots, launching and driving IntelliJ IDEA, recording video, and caching IDE software so it does not need to be downloaded again for every new virtual machine. Because the Mac host may be shared across many tasks at once, each task is expected to create its own uniquely named virtual machine and clean it up when finished, so tasks do not interfere with each other. To use this, you need an Apple Silicon Mac (M1 or newer) with Tart installed, SSH remote login turned on, and SSH access set up so commands can run without typing a password each time. On the Linux side, only a standard SSH client is required. Everything the virtual machine itself needs, like screen automation tools and video recording, gets installed automatically by one of the setup commands. The project is written primarily in Shell scripts.

Yoink these prompts

Prompt 1
Set up an SSH bridge so a Linux agent can control a Tart macOS VM on a remote Apple Silicon Mac.
Prompt 2
Write a supervisor script that boots a Tart VM detached so it survives the SSH session ending.
Prompt 3
Create a skill that takes a screenshot of a running macOS VM over SSH.
Prompt 4
Add a shared IDE cache so multiple VMs reuse one downloaded copy of IntelliJ IDEA.
Prompt 5
Design a naming convention so multiple agent tasks can share one Mac host without clobbering each other's VMs.

Frequently asked questions

wtf is tart-skills?

Lets a Linux-based AI agent remotely control a full macOS desktop VM over SSH to run GUI tests without owning a Mac.

What language is tart-skills written in?

Mainly Shell. The stack also includes Shell, Tart, SSH.

How hard is tart-skills to set up?

Setup difficulty is rated hard, with roughly 1h+ to a first successful run.

Who is tart-skills for?

Mainly developer.

View the repo → Decode another repo

This repo across BitVibe Labs

Don't trust strangers blindly. Verify against the repo.