Drive the simulator

For AI agents: this page is Markdown at https://squiggle.sh/docs/studio/device.md. Every docs page is listed at https://squiggle.sh/llms.txt, and all of them are one file at https://squiggle.sh/llms-full.txt.

Studio shows the simulator live, in the device's real frame. Click, drag, scroll and type on it from your Mac, press its buttons, and change its settings.

Loading the live Studio…
A live device, instrumented. Live, in your browser.Open in Studio

The live deviceStudio tour · 5 steps

Use the app

Both of these are on by default, in the device panel’s Interaction menu:

ToggleWhat it does
Pointer interactionYour clicks, drags and scrolls drive the simulator. Turn it off to look without touching.
Keyboard captureYour Mac’s keystrokes go to the simulator while it has focus. Click the simulator to give it focus; click anywhere else in Studio to take it back.

Touch and scroll

ToDo this
TapClick.
Drag or swipeClick and drag.
ScrollScroll with your trackpad or mouse wheel over the screen. It moves a finger on the simulator, so lists scroll, bounce and snap as they do under a real finger, and a long scroll keeps going. Over a Studio popover drawn on the screen, such as the notifications, the popover scrolls instead.
Go home or backDrag up from the bottom edge, or in from the left edge, as you would with a finger.
Press a buttonHome, Lock, the volume buttons and Shake are in the Hardware menu. With the real device frame, you can also press the side buttons on it.

Type

KeyWhat happens
Letters, numbers, symbolsTyped into the focused field, with your keyboard layout and capitals.
ReturnPresses the keyboard’s return key: it submits a form or runs the field’s submit action, as the app decides.
TabSent to the app. iOS only moves to the next field if the app handles Tab itself.
Delete, arrows, Escape, Page Up and DownSent as the same keys on a hardware keyboard.
⌘ C and ⌘ VCopy and paste between your Mac and the simulator.
Other ⌘ and ⌃ shortcutsSent to the app, such as ⌘A to select all. Studio’s own shortcuts keep working.

These are real touches and key presses, the same as using the simulator directly.

Keep the on-screen keyboard

iOS hides its on-screen keyboard once you type from a hardware keyboard. Turn on Keep software keyboard in the Interaction menu to keep it showing. It needs the app launched with Squiggle attached, and is remembered for each device.

Change the simulator’s settings

Three menus in the device panel change the simulator itself. When the simulator can’t report a value, the menu shows a dash instead of guessing.

MenuWhat it changes
SystemDark appearance, Increase contrast, text size (XS to AX5), and the status bar: Clean shows 9:41 with full signal and battery, Reset gives it back.
LocationA city, a moving route (City Run, City Bicycle Ride, Freeway Drive), or no location.
PermissionsGrant or revoke each of the app’s permissions, or all of them. Granting all may restart the app.

Save the screen you’re on

In the device panel’s Capture menu, Save slot saves the current screen and the data behind it, named by the time, such as studio-20261017-091504. Load a slot lists the newest eight and puts one back, so you start on a deep screen instead of tapping your way there. These are the same slots as squiggle save and squiggle load. For what a slot holds and why a load is refused, see Save and restore your app’s state. To find which saved values make a flow fail, see App state.

Take a screenshot or record the screen

In the Capture menu, Screenshot saves a PNG of the screen and Record screen records a video until you choose Stop screen recording. Both go to the Gallery (⌘ 0), newest first, beside the screenshots your agent takes. Open one to see it large; ← and → step through them and Esc goes back to the grid. Record session, in the same menu, records a session for Replay instead.

The device frame

Studio draws your simulator in its real frame, read from your Xcode install. Devices with a home button, and a rotated device, get a drawn frame instead. In the Interaction menu, turn off Real device skin for the drawn frame everywhere, or Device bezel for no frame.

To save CPU while you aren’t watching, turn off Live stream in the same menu: the screen freezes on its last frame until you turn it back on.