Codex adds Build iOS Apps plugin with SwiftUI previews
OpenAI expanded the Build iOS Apps plugin so Codex can test apps in an in-app browser, open SwiftUI previews, and hot-reload edits without leaving Codex. It matters because more of the iOS iteration loop stays inside the coding agent instead of bouncing through external simulators and manual preview steps.

TL;DR
- OpenAI expanded Codex's Build iOS Apps plugin so it can test an app in an in-app browser, open SwiftUI previews, and hot reload edits, according to OpenAIDevs' feature clip.
- The new loop keeps more iOS iteration inside Codex itself, a point WesRoth's recap and dkundel's reaction both framed as a meaningful upgrade to the existing plugin.
- OpenAIDevs' follow-up says the update leans on two open source projects, serve-sim for simulator streaming and SnapshotPreviews for extracting SwiftUI previews.
- The mechanics line up with the source docs: serve-sim's repo describes an MJPEG browser stream plus WebSocket controls for a booted iOS Simulator, while Sentry's SnapshotPreviews docs describe automatic snapshots from
#PreviewandPreviewProvider.
You can watch OpenAIDevs' demo jump between the app, previews, and live edits without leaving Codex. The plumbing is unusually concrete for a product clip: OpenAIDevs' follow-up names the exact open source projects, serve-sim's README spells out the simulator streaming stack, and the public plugins repo shows Build iOS Apps sitting alongside other curated Codex plugins.
In-app loop
The visible change is simple: Codex now handles three steps that normally bounce out to other tools, app viewing, SwiftUI preview inspection, and edit-test-reload cycles. OpenAIDevs' post describes all three in one loop, and dkundel's post suggests the plugin already existed before this upgrade.
That makes this more of a workflow expansion than a new plugin launch. The upgrade lands inside Codex's own UI, not as a separate simulator product or Xcode extension.
Open source plumbing
OpenAI named the underlying pieces instead of leaving the demo as a black box.
- serve-sim captures the simulator framebuffer with
simctl io, exposes it as an MJPEG stream, and adds a WebSocket control channel plus browser UI. - serve-sim's README says it works with any booted iOS Simulator and does not require an Xcode plugin or app instrumentation.
- Sentry's SnapshotPreviews docs say SnapshotPreviews turns every
#PreviewandPreviewProviderinto a snapshot automatically. - OpenAIDevs' credits post ties those pieces directly to the new Codex workflow, with serve-sim powering the streaming simulator and SnapshotPreviews extracting SwiftUI previews.
That source list explains why the demo can stay inside Codex. One tool exposes the running simulator to a browser-like surface, the other turns preview definitions into something the agent can open.
Plugin catalog
The Build iOS Apps plugin is part of OpenAI's public plugins repository, which presents it as one item in a broader curated catalog that also includes web, macOS, Expo, Figma, and Notion workflows. The repo structure requires a .codex-plugin/plugin.json manifest for each plugin, which makes this look like a reusable plugin surface rather than a one-off internal demo.
OpenAI's nearby Codex 0.137.0 release notes also mention plugin workflow work, including codex plugin list --json, remote catalog suggestions, and app-server remote-control RPC updates. Those notes do not announce the iOS preview feature directly, but they show the surrounding plugin and app-server stack was still moving the same day.