September 21, 2026
AI agent took a mobile layout bug all the way to a fix: spun up a preview deployment for an iPhone simulator
The agent went from a layout complaint to testing it in an iPhone Simulator on its own, spinning up a separate preview deployment for the job.

Guillermo Rauch
@rauchg
The thoroughness with which agents test software and run QA is unlike anything else. I pointed out that something was rendering badly in a mobile browser (inside the app). And this thing goes into the deepest depths of Mordor: reproduce, simulate, fix, deploy, verify. It spun up an ephemeral deployment on Vercel to throw it into an iPhone Simulator! These things have astonishing persistence. A person simply cannot sustain that level of intensity. We run out of energy, start making assumptions, hope it will somehow work out. The software of the future will have a level of quality and speed we have not seen before. Watching this shift is a pleasure.

· 50.7K views
The complaint sounded mundane: the layout was broken in a mobile app's built-in browser.
From there, the agent handled the case itself. It reproduced the bug, fixed it, deployed a separate preview, and opened it in an iPhone Simulator to verify the result on the very screen where the problem had been noticed.
This loop used to be closed by a person: start a build, pick up a phone, spot the bug, return to the editor. Now the loop closes within a single run, and mobile testing stops being a separate task.
What enables it. The tool is called agent-browser, and it is made by Vercel Labs. Installation takes two commands: `npm install -g agent-browser`, then `agent-browser install`. There are brew and cargo options too.
iOS mode. `agent-browser -p ios --device "iPhone 16 Pro" open https://example.com`, followed by the familiar `snapshot -i`, `click @e1`, `swipe up`. It requires macOS with Xcode, plus `npm install -g appium` and `appium driver install xcuitest`.
The agent gets the preview address from stdout. With `vercel deploy`, it is always the deployment URL, so the command writes it to a file (`vercel > deployment-url.txt`) and passes it along, while the `--yes` and `--no-wait` flags remove interactivity. Your own preview may return 401. In that case, `vercel curl` works: it adds the `x-vercel-protection-bypass` header itself (from 15.05.2026).
These runs are billed through Vercel Sandbox: Hobby includes 5 free Active CPU hours and 5 000 creations per month, sessions can last up to 45 minutes, and 10 sandboxes can run simultaneously (Vercel docs, 10.09.2026).
For native apps, there is agent-device from Callstack. Install it with `npm install -g agent-device@latest`, check the environment with `agent-device doctor`, and launch its MCP server through `agent-device mcp`; it covers iOS Simulator, Android Emulator, and physical devices. Callstack uses it to run a QA agent in EAS Workflows on every pull request: the test plan is derived from PR metadata, and the result with screenshots arrives as a GitHub comment (19.06.2026).
Next, this leads to a world where no one schedules mobile testing by hand: it runs on every pull request.
Source
