whatisgithub

What is baguette?

tddworks/baguette — explained in plain English

Analysis updated 2026-05-18

962SwiftAudience · developerComplexity · 3/5Setup · moderate

In one sentence

A command line tool and web UI for controlling and streaming iOS simulators on a Mac without opening Xcode, built for testing and AI agents.

Mindmap

mindmap
  root((repo))
    What it does
      Headless simulator control
      Live screen streaming
      Input injection
    Tech stack
      Swift CLI
      Web UI
      SimulatorKit
    Use cases
      Automated UI testing
      AI agent driven testing
      Multi device farm
    Audience
      iOS developers
    Setup
      Homebrew install
      Requires Xcode 26

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

What do people build with it?

USE CASE 1

Drive an iOS app's UI with taps and swipes from a script or AI coding agent.

USE CASE 2

Stream a live view of multiple booted simulators side by side in a browser.

USE CASE 3

Read the on screen accessibility tree as JSON for automated UI testing.

USE CASE 4

Pipe a Mac webcam into a simulator to test camera based iOS features.

What is it built with?

SwiftmacOSXcodeiOS Simulator

How does it compare?

tddworks/baguettenickustinov/itsyhome-macosapple/coreai-models
Stars962896881
LanguageSwiftSwiftSwift
Setup difficultymoderateeasy
Complexity3/52/5
Audiencedevelopergeneraldeveloper

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

How do you get it running?

Difficulty · moderate Time to first run · 30min

Requires Apple Silicon, Xcode 26, and Homebrew.

Not stated in the README text provided.

So what is it?

Baguette is a command line tool and web app for controlling iOS simulators on a Mac without ever opening Xcode or the Simulator app directly. It is aimed at developers and AI coding agents that need to interact with an iOS app the way a real person would, by tapping, swiping, and reading what is on screen, all from outside the simulator itself. With a single command, baguette can boot a simulator, stream its screen live at up to sixty frames per second either as an MJPEG or H.264 video feed, and inject taps, swipes, multi finger gestures, keyboard input, and hardware button presses using Apple's private SimulatorKit framework rather than any special code baked into the app being tested. It can also read out the accessibility tree of whatever is currently on screen as structured JSON, take screenshots and recordings, tail the system log, and even pipe a Mac's webcam into the simulator so a camera using app sees real video frames instead of a blank preview. The project ships with a self contained web interface, reachable by running baguette serve, which gives you a list of every simulator on the machine, a full screen focused view for controlling one device at a time, and a device farm view that shows every booted simulator side by side in a grid, useful for testing several devices at once. Everything is also scriptable from the command line, so it fits naturally into automated testing pipelines or AI agent workflows that need to drive an iOS app. Baguette is written in Swift, targets Apple Silicon Macs only, and requires Xcode 26 since it links against private frameworks that ship with that specific Xcode version. It is installed through Homebrew and comes with an extensive automated test suite covering all of its internals.

Copy-paste prompts

Prompt 1
Show me how to install baguette with Homebrew and boot my first simulator.
Prompt 2
Write a script that uses baguette to tap through a login flow in an iOS simulator.
Prompt 3
Explain how baguette's accessibility tree output could be used for automated UI tests.
Prompt 4
Help me set up baguette's device farm view to test on three simulators at once.

Frequently asked questions

What is baguette?

A command line tool and web UI for controlling and streaming iOS simulators on a Mac without opening Xcode, built for testing and AI agents.

What language is baguette written in?

Mainly Swift. The stack also includes Swift, macOS, Xcode.

What license does baguette use?

Not stated in the README text provided.

How hard is baguette to set up?

Setup difficulty is rated moderate, with roughly 30min to a first successful run.

Who is baguette for?

Mainly developer.

Open on GitHub → Ask about another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.