Most mobile apps were never built with AI agents in mind. They use different navigation patterns, they interrupt you with permission dialogs and promotional pop ups, they hide the thing you want behind a login screen, and they each have their own way of doing what is essentially the same task. A tool that works beautifully on one app tends to fall apart on the next one.
So I wanted to find out how far a general purpose mobile agent could actually get. I gave Mobilerun a single challenge, which was to automate five completely different apps using nothing but natural language instructions.
I picked LinkedIn, Instagram, Amazon, TikTok and WhatsApp. There was no custom flow written for each app, no hardcoded screen coordinates, and no selectors. I described the outcome I wanted and let the agent work out how to get there.
Here is how each one went.
LinkedIn, where the agent has to make a judgment call
LinkedIn was the first test, and it turned out to be the most demanding one for a reason I did not expect.
The instruction was straightforward. I asked the agent to open LinkedIn, search for a specific topic, work through the posts it found, and interact with the profiles that were relevant. What makes this harder than it sounds is that the agent cannot succeed by tapping a fixed sequence of buttons. It has to open the app, locate the search field, enter the query, move into the results, and then decide which of those results actually match what I asked for before it does anything.
That decision is the interesting part. Everything up to it is navigation, which any automation tool can handle if you write enough selectors. Deciding whether a particular profile fits a description you gave in plain English is a different kind of problem, and it is the one that separates telling an agent what you want from telling a script where to click.
Instagram, where the target is never in the same place
Instagram is a different environment entirely, and it exposes a different weakness in traditional automation.
I asked the agent to search for content and interact with the relevant result. On LinkedIn, results arrive in a reasonably predictable list. On Instagram, what you get back is a grid of images with very little text to anchor to, and the thing you are looking for could be in any position depending on what the algorithm decides to show you that day.
A script that depends on selectors or a predefined path has nothing stable to hold onto here. An agent that reads the screen and reasons about what it is seeing has a much better time of it, because it is working from what is actually in front of it rather than from what somebody assumed would be there when they wrote the automation.
Amazon, where the goal is fixed and the path is not
Amazon was the clearest illustration of the whole idea.
The instruction was simple. I asked the agent to open Amazon and find a particular product. It opened the app, ran the search, moved through the results and interacted with the product page.
What makes Amazon a good test is how much of it changes between runs. Search results reorder themselves. Sponsored listings appear and disappear. Recommendation carousels shuffle. Promotional banners drop in without warning. Run the same script twice and the second run lands somewhere completely different from the first.
The goal, though, stays exactly the same throughout. You still want that product page. This is the situation where an agent earns its keep, because it is solving for the destination rather than following a route that stopped being accurate the moment the page loaded.
TikTok, where there is barely any interface to navigate
TikTok breaks most of the assumptions that the other four apps share.
There is no menu structure to speak of and no results page in the conventional sense. There is a feed, it plays automatically, and you move through it by swiping rather than tapping. The content is video, which means the information the agent needs is changing continuously rather than sitting still on a static page.
I asked the agent to navigate TikTok and complete a simple task related to the content it found. What I wanted to know was whether an approach built around reading screens and choosing actions could cope with an interface that has almost no structure to read.
This is also the point where the value of a single interaction model becomes obvious. Automating these five apps the traditional way would mean learning several different frameworks and maintaining separate flows for each one. Describing the objective and letting the agent find its own way through does not care that TikTok looks nothing like Amazon.
WhatsApp, the simplest interface and the most useful result
WhatsApp has the most straightforward interface of the five, and it is also the one where automation feels immediately practical rather than merely impressive.
I gave the agent a messaging task. Rather than opening the app myself, finding the contact, opening the conversation and typing, I described the outcome I wanted and let it handle the steps. Something along the lines of opening WhatsApp, finding a specific contact, and sending a particular message.
The reason this one matters more than the others is that it is the end of a workflow rather than a demonstration on its own. Consider what happens when you connect it to everything upstream. You find your leads, you write a message personalised to each one, the agent opens WhatsApp and sends it, and the result gets recorded so you know what went out and to whom. The mobile agent stops being a novelty at that point and becomes the execution layer for work you were already doing by hand.
What I actually took away from it
The takeaway wasn’t that an AI agent can open five apps. That’s easy, and nobody should be impressed by it.
What stood out was that the same interaction model worked across five completely different interfaces. LinkedIn doesn’t work like Amazon. Amazon doesn’t work like TikTok. Yet the approach stayed the same: I gave the agent a goal, it read the screen, figured out what to do, and executed it.
That’s a meaningful shift from traditional mobile automation, where you have to define every tap, swipe, and input—and hope the interface never changes.
The difference is simple: automating clicks vs. automating outcomes.
Mobile automation is becoming less about controlling an interface and more about giving it a goal.
A note on limits
Two things are worth saying plainly, because a post like this is easy to write as though nothing ever goes wrong.
The first is that agents fail, and they fail in ways scripts do not. A script that breaks usually breaks loudly and stops. An agent that misreads a screen will keep going and do something slightly wrong instead, which is harder to notice. Anything you automate at volume needs a way to check the result rather than assuming it worked.
The second is that several of these apps restrict automated access in their terms of service, and WhatsApp in particular enforces this aggressively against accounts that behave mechanically. This is worth understanding before you build anything that runs continuously. Keeping volumes modest and behaviour realistic matters more than squeezing out throughput.
Top comments (0)