Runs iPhone, iPad, Apple Watch, Android (phone, tablet and folding phone), Windows and 8 Linux versions on free machines borrowed from GitHub Actions, and takes a screenshot of each. Everything uses the newest version available.
| Device | Runs on | Tool |
|---|---|---|
| iPhone, iPad, Apple Watch (versions 27, 26, 18 and 17) | GitHub's macOS machines | Xcode simulators |
| Android phone, tablet and folding phone (newest), plus every Android from 5 to 15 | GitHub's Linux machine | Android emulator |
| Mac: macOS 27, Tahoe, Sequoia (Apple M chip) and Sequoia (Intel chip) | GitHub's macOS machines | The real Mac desktop |
| Windows 11 (ARM), Server 2025, Server 2022 | GitHub's Windows machines | The real Windows desktop |
| Ubuntu, Fedora, Debian, Mint, Arch, openSUSE, Pop!_OS, Omarchy | GitHub's Linux machine | The newest live ISO, booted in a QEMU virtual machine |
| Older Ubuntu: 24.04, 22.04, 20.04, 18.04, 16.04, 14.04, 12.04, 10.04, 8.04, 6.06 and 4.10 (the first, 2004) | GitHub's Linux machine | The archived live ISO, in QEMU |
| ReactOS (free Windows XP look-alike), FreeDOS, Haiku, FreeBSD, ChromeOS Flex | GitHub's Linux machine | Their official free download, in QEMU |
| Game consoles: NES, SNES, Game Boy, GBA, Sega Genesis, PS1, PSP, GameCube | GitHub's Linux machine | RetroArch running a free homebrew game from libretro |
| PS2 (PCSX2), PS3 (RPCS3 + Sony's free system software), PS4 (shadPS4) | GitHub's Linux machine | The emulator's own screen, installed from Flathub |
After each run, the Gimmich step puts every system's photos, one picture of all of
them together (gimmich-all.png), and a list of every version (versions.md) into a
single download:
- Newest weekly bundle: https://github.com/fablab503-collab/Simulator-/releases/download/gimmich-latest/gimmich.zip
- Any single run: open the run on the Actions tab and download
gimmich.
Give Gimmich one file and only the system that can open it starts:
| File | Opens on |
|---|---|
Android app (.apk) |
Android emulator: installs and opens it |
Windows program (.exe, .msi) |
Windows Server 2025 |
Mac app (.dmg, .pkg, zipped .app) |
macOS 26 |
Bootable disc (.iso) |
QEMU virtual PC on Linux |
Retro game (.nes, .sfc, .gb, .gba, .md) |
RetroArch |
Web page, e-book (.html, .epub) |
Chrome |
| PDF, video, audio, picture | Linux: first page / 9 frames / sound wave / the picture |
Code (.py .rs .java .c .cpp .go .js .sh) |
Linux: compiles and runs it |
Linux app (AppImage, program, .deb, .rpm) |
Linux: starts it or lists what's inside |
It checks what's inside the file first, so a wrong name doesn't fool it
(scripts/route-file.py).
How: Actions → Run a file → Run workflow → paste a download link. Or put
the file in inbox/ and push. Download gimmich-run-report from the run: one
picture and one note per file.
Actions → Run a GitHub project → paste one or more repositories (e.g.
sharkdp/fd pallets/click). For each one Gimmich:
- downloads it and works out what it's written in (Rust 97%, Shell 3%, …)
and how to build it (
scripts/detect-project.py): Cargo, Go, npm/yarn/pnpm, Python, CMake, Meson, Make, Gradle, Maven, .NET, Swift, Xcode, Flutter, Docker or a plain website, including sub-projects like an Android or iPhone example app; - builds and tests it on every system it fits (
scripts/build-project.sh): Linux, Windows and Mac; Android apps are installed and opened in the emulator, iPhone apps in the simulator, and websites are opened in Chrome; - writes one report (
gimmich-project-report): what it built, what it made, and whether its tests passed.
Public repositories need nothing. For private ones, add a token with read
access as the GIMMICH_GITHUB_TOKEN secret (never in a file). It is only used
to download the project (scripts/get-project.sh): the project's build and
tests never see it. Gimmich runs the project's own build and test commands,
so only give it projects you trust.
models/models.toml lists 10 open AI models that can look at a screenshot and
decide what to click: UI-TARS, OpenCUA, Fara, Qwen-VL, CogAgent and AutoGLM.
The orchestrator picks one per system (scripts/get-model.py pick android)
and asks it about a screen with scripts/ask-model.sh. See
models/README.md.
The AI models can now use the systems by themselves: look at the screen, click, type and press keys, one step at a time, on Linux screens and Android phones. Practice tasks check automatically whether they got it right, and every run is saved as training data. See scripts/gym/README.md; on GitHub: Actions → AI gym.
- Open the Actions tab of this repository.
- Click Simulators on the left, then Run workflow.
- Wait about 5–10 minutes until the run shows a green check mark.
- Open the run and download the screenshots at the bottom. The run's summary page lists every version that was used.
- It runs every Monday by itself, and on every push to
mainand every pull request. - Apple and Windows use GitHub's newest machines; the script picks the newest simulators on them.
- Android asks Google's SDK for the newest version each run.
- Linux looks up the newest ISO on each project's official site each run (
scripts/linux-iso-url.sh). - Dependabot opens a pull request when the GitHub Actions helpers have a new version.
.github/workflows/simulators.yml: tells GitHub which machines to start and what to run.scripts/screenshot-simulators.sh: boots the newest iPhone, iPad and Apple Watch simulators, screenshots them, and lists every installed runtime.scripts/screenshot-windows.ps1: screenshots the Windows desktop.scripts/screenshot-mac.sh: screenshots a Mac desktop and records its macOS version and chip.scripts/linux-iso-url.sh: finds the newest download for each Linux.scripts/boot-linux.sh: boots that Linux in a virtual machine and screenshots it every 30 seconds.
You can also run the scripts on your own computer:
./scripts/screenshot-simulators.sh # on a Mac with Xcode
pwsh ./scripts/screenshot-windows.ps1 # on Windows (add -MinimizeWindows to hide open windows)
- There is no "Mac simulator": Mac apps run directly on the Mac, so the Mac rows are real Macs.
- Older macOS versions (Sonoma and earlier) can't run on GitHub. Apple only allows macOS on Apple hardware, and GitHub no longer offers those versions.
- iPad simulators come with the iOS runtime.
- Game consoles use only free homebrew games and Sony's free PS3 system software. No commercial games or console BIOS files are downloaded. There is no real PS5 emulator.
- Windows is a real Windows machine, not a simulator. Older Windows (XP, Vista, 7, 8) isn't included: Microsoft no longer offers it for download and it gets no security fixes.
- Linux screenshots show the live (try-before-install) desktop. Arch has no desktop by default, so it shows a text console. Omarchy's ISO is an installer, so it shows the installer's first screen.
- If an Apple runtime (e.g. watchOS) isn't installed, that device is skipped with a warning.