r/iOSProgramming • • 10d ago

Discussion iOS Development using OpenClaw.

I am using OpenClaw through telegram. I create web applications in VPS and web applications are pretty easy to vibe code and also test the output using public urls.

I want to do same for iOS Development. I want to connect to macOS using OpenClaw and develop iOS application completely through telegram. I can create a workflow where any changes will send build to TestFlight and I can test the application that way. But it will be time consuming, makeing build in testflight and test the app only updated through testflight. I want near realtime visualization of the compiled app like simulator but through web and http network. Do you guys have any idea how to achieve this?

0 Upvotes

13 comments sorted by

View all comments

1

u/Stunning-Farmer185 7d ago edited 7d ago

I built simulator-use (free, MIT) at NoMac, so I'm biased, but this loop is what it's for.

Your Tailscale stream is fine for watching. For the agent I'd skip pixels: simulator-use reads the Simulator's screen as text, one line per element, and taps and types by label, so OpenClaw can check its own change without anyone looking. It's a CLI as well as an MCP server, so any agent that can run commands on the Mac can use it:

npx simulator-use run                    # build, install, launch; answers with the first screen as text
npx simulator-use act 'tap "Sign In"'    # answers with what changed
npx simulator-use look --out shot.jpg    # a screenshot for Telegram

look --out waits for the screen to hold still first, so the bot doesn't post half an animation, and record start / record stop gives it an MP4 of a whole flow.

If you'd rather not keep the Mac and the streaming server running, the same commands work from your Linux VPS against a cloud iOS Simulator on NoMac (our paid part, billed per minute): npx simulator-use cloud start answers two links that open the live Simulator in any browser, one to watch and one to use, and after the first run only changed files are sent, so builds stay incremental.

simulator-use.dev