<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Priya Negi</title>
    <description>The latest articles on DEV Community by Priya Negi (@priya_negi_9ffd29931ea408).</description>
    <link>https://dev.to/priya_negi_9ffd29931ea408</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3578296%2F3658bb76-bcd7-405c-8b2e-4b81b00c9169.jpg</url>
      <title>DEV Community: Priya Negi</title>
      <link>https://dev.to/priya_negi_9ffd29931ea408</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/priya_negi_9ffd29931ea408"/>
    <language>en</language>
    <item>
      <title>I tried automating 5 apps using mobilerun ai, here's what happened.</title>
      <dc:creator>Priya Negi</dc:creator>
      <pubDate>Wed, 09 Sep 2026 11:28:34 +0000</pubDate>
      <link>https://dev.to/priya_negi_9ffd29931ea408/i-tried-automating-5-apps-using-mobilerun-ai-heres-what-happened-2e29</link>
      <guid>https://dev.to/priya_negi_9ffd29931ea408/i-tried-automating-5-apps-using-mobilerun-ai-heres-what-happened-2e29</guid>
      <description>&lt;p&gt;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.&lt;/p&gt;

&lt;p&gt;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.&lt;/p&gt;

&lt;p&gt;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.&lt;/p&gt;

&lt;p&gt;Here is how each one went.&lt;/p&gt;

&lt;h2&gt;
  
  
  LinkedIn, where the agent has to make a judgment call
&lt;/h2&gt;

&lt;p&gt;LinkedIn was the first test, and it turned out to be the most demanding one for a reason I did not expect.&lt;/p&gt;

&lt;p&gt;The instruction was straightforward. I asked the agent to open &lt;a href="https://mobilerun.ai/blog/posts/get-clients-on-linkedin-using-ai" rel="noopener noreferrer"&gt;LinkedIn&lt;/a&gt;, 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.&lt;/p&gt;

&lt;p&gt;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.&lt;br&gt;
  &lt;iframe src="https://www.youtube.com/embed/LVx_jL8PT4o" width="710" height="399"&gt;
  &lt;/iframe&gt;
&lt;/p&gt;

&lt;h2&gt;
  
  
  Instagram, where the target is never in the same place
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://mobilerun.ai/blog/posts/automate-instagram-lead-generation" rel="noopener noreferrer"&gt;Instagram&lt;/a&gt; is a different environment entirely, and it exposes a different weakness in traditional automation.&lt;/p&gt;

&lt;p&gt;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.&lt;/p&gt;

&lt;p&gt;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.&lt;br&gt;
  &lt;iframe src="https://www.youtube.com/embed/ITgPdMhCgM8" width="710" height="399"&gt;
  &lt;/iframe&gt;
&lt;/p&gt;

&lt;h2&gt;
  
  
  Amazon, where the goal is fixed and the path is not
&lt;/h2&gt;

&lt;p&gt;Amazon was the clearest illustration of the whole idea.&lt;/p&gt;

&lt;p&gt;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.&lt;/p&gt;

&lt;p&gt;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.&lt;/p&gt;

&lt;p&gt;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.&lt;br&gt;
  &lt;iframe src="https://www.youtube.com/embed/kNJmLGZVWrQ" width="710" height="399"&gt;
  &lt;/iframe&gt;
&lt;/p&gt;

&lt;h2&gt;
  
  
  TikTok, where there is barely any interface to navigate
&lt;/h2&gt;

&lt;p&gt;TikTok breaks most of the assumptions that the other four apps share.&lt;/p&gt;

&lt;p&gt;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.&lt;/p&gt;

&lt;p&gt;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.&lt;/p&gt;

&lt;p&gt;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.&lt;br&gt;
  &lt;iframe src="https://www.youtube.com/embed/GKGoB_bdBtg" width="710" height="399"&gt;
  &lt;/iframe&gt;
&lt;/p&gt;

&lt;h2&gt;
  
  
  WhatsApp, the simplest interface and the most useful result
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://youtu.be/GKGoB_bdBtg?si=ol-pzz7zOrTcd1z8" rel="noopener noreferrer"&gt;WhatsApp&lt;/a&gt; has the most straightforward interface of the five, and it is also the one where automation feels immediately practical rather than merely impressive.&lt;/p&gt;

&lt;p&gt;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.&lt;/p&gt;

&lt;p&gt;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.&lt;br&gt;
  &lt;iframe src="https://www.youtube.com/embed/2A8D8NtNfz8" width="710" height="399"&gt;
  &lt;/iframe&gt;
&lt;/p&gt;

&lt;h2&gt;
  
  
  What I actually took away from it
&lt;/h2&gt;

&lt;p&gt;The takeaway wasn’t that an AI agent can open five apps. That’s easy, and nobody should be impressed by it.&lt;/p&gt;

&lt;p&gt;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.&lt;/p&gt;

&lt;p&gt;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.&lt;/p&gt;

&lt;p&gt;The difference is simple: &lt;strong&gt;automating clicks vs. automating outcomes.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Mobile automation is becoming less about controlling an interface and more about giving it a goal.&lt;/p&gt;

&lt;h2&gt;
  
  
  A note on limits
&lt;/h2&gt;

&lt;p&gt;Two things are worth saying plainly, because a post like this is easy to write as though nothing ever goes wrong.&lt;/p&gt;

&lt;p&gt;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.&lt;/p&gt;

&lt;p&gt;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.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>mobile</category>
      <category>automation</category>
      <category>opensource</category>
    </item>
    <item>
      <title>Best way to automate Instagram DMs for small businesses</title>
      <dc:creator>Priya Negi</dc:creator>
      <pubDate>Mon, 07 Sep 2026 09:35:44 +0000</pubDate>
      <link>https://dev.to/priya_negi_9ffd29931ea408/best-way-to-automate-instagram-dms-for-small-businesses-5g9b</link>
      <guid>https://dev.to/priya_negi_9ffd29931ea408/best-way-to-automate-instagram-dms-for-small-businesses-5g9b</guid>
      <description>&lt;p&gt;If you run a small business on Instagram, your DMs are probably where most of your money actually happens. Product questions, price checks, order follow-ups, "is this still available?" it all lands in one inbox that never stops. And unlike a big brand, you don't have a social media team. You are the social media team.&lt;/p&gt;

&lt;p&gt;So the appeal of automating Instagram DMs is obvious. The problem is that Instagram automation is a minefield, and most of the advice online skips straight past the part where accounts get restricted or banned. This post covers the honest version: what the limitations really are, what a safer approach looks like, and how tools like &lt;a href="https://mobilerun.ai/" rel="noopener noreferrer"&gt;Mobilerun&lt;/a&gt; let you automate&lt;/p&gt;

&lt;p&gt;DMs on a real phone either a cloud phone or your own personal device, with a human still in control.&lt;/p&gt;

&lt;p&gt;Why DMs Are Worth Automating in the First Place&lt;br&gt;
A few realities of small-business Instagram:&lt;/p&gt;

&lt;p&gt;Response speed directly affects sales. A customer who DMs three boutiques about the same product usually buys from the one that answers first. If you reply six hours later, that sale is often gone.&lt;/p&gt;

&lt;p&gt;Most DMs are repetitive. Pricing, shipping, availability, store hours, "do you deliver to X?" the same five to ten questions make up the bulk of any small business inbox. That's exactly the kind of work automation is good at.&lt;/p&gt;

&lt;p&gt;And the inbox never sleeps, but you do. Messages arrive at midnight, on weekends, during the school run. Without some form of automation, "fast replies" means being glued to your phone.&lt;/p&gt;

&lt;p&gt;The Limitations Nobody Tells You About&lt;/p&gt;

&lt;p&gt;Before picking any tool, you need to understand why Instagram automation is genuinely hard. This is the part most vendor blogs gloss over.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;The official API is restrictive
Meta does offer an official Messaging API for Instagram, but it comes with real constraints. You need a professional (business or creator) account, apps generally have to go through Meta's review process, and there are strict rules around when you can message people for example, businesses can typically only respond within a limited window after a customer messages first. You can't use the official API to send cold outreach at scale, and that's by design.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;For a small business without a developer, building on the official API usually means paying a monthly SaaS subscription for a chatbot platform and even then, you're limited to comment-triggered replies and inbound-message flows.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Third-party bots get accounts banned
The other end of the spectrum is the classic "Instagram bot",  browser scripts and emulator farms that are mass-DM, auto-follow, and auto-like. Instagram has spent years building detection for exactly this. Automation that runs from datacenter IPs, emulators, or unofficial API endpoints tends to trip signals like impossible activity patterns, mismatched device fingerprints, and suspicious network origins. The result is action blocks, shadow restrictions, forced password resets, or permanent bans.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;For a small business, your Instagram account often is the business. Losing it to a $20/month bot is not a trade worth making.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Rate limits and behavioral signals&lt;br&gt;
Even legitimate automation has to respect how a real person behaves. Instagram watches for message velocity, repeated identical text, and sudden spikes in activity from an account that was quiet yesterday. Any automation that ignores this official or not creates risk.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Automation can hurt your brand&lt;br&gt;
A subtler limitation: customers can smell canned bot replies. If every DM gets an instant, generic response and follow-up questions go nowhere, you've automated your way into worse customer service. Good DM automation should draft and triage, not blast.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The takeaway: the question isn't just "how do I automate DMs?" It's "how do I automate DMs in a way that looks and behaves like a human on a real phone, keeps me in the loop, and doesn't put my account at risk?"&lt;/p&gt;

&lt;p&gt;A Different Approach: Automation on a Real Phone&lt;/p&gt;

&lt;p&gt;This is where &lt;a href="https://mobilerun.ai/" rel="noopener noreferrer"&gt;Mobilerun&lt;/a&gt; takes a fundamentally different angle. Instead of hitting Instagram through browser scripts or reverse-engineered APIs, &lt;a href="https://mobilerun.ai/" rel="noopener noreferrer"&gt;Mobilerun&lt;/a&gt; gives an AI agent an actual phone real hardware, running the real Instagram app and the agent operates it the way a person would: opening the app, reading the screen, tapping, and typing.&lt;/p&gt;

&lt;p&gt;For Instagram DMs specifically, the &lt;a href="https://mobilerun.ai/" rel="noopener noreferrer"&gt;Mobilerun&lt;/a&gt; Instagram agent can:&lt;/p&gt;

&lt;p&gt;Read and triage your inbox: sorting new DMs by intent (order question, complaint, price check, spam) so you see what matters first.&lt;br&gt;
Draft replies in your voice: the agent prepares responses, and nothing is sent without your approval, so you keep control of tone and timing.&lt;br&gt;
Handle publishing and analytics too: the same agent can publish approved posts and Reels and pull reach and engagement numbers, so DM automation slots into a broader workflow.&lt;br&gt;
The key design choice is human in the loop. The agent does the reading, sorting, and drafting the tedious 80% while you do the approving. That's what separates "automation that helps" from "automation that spams."&lt;/p&gt;

&lt;p&gt;Under the hood, Mobilerun is built on an open-source framework (GitHub) that scores state-of-the-art results on public mobile-agent benchmarks, and it works with whatever LLM you prefer. But as a business owner, you don't need to touch code you can hand tasks to the hosted assistant in plain English from the Mobilerun Cloud dashboard.&lt;/p&gt;

&lt;p&gt;Two Ways to Run It: Cloud Phone or Your Own Device&lt;/p&gt;

&lt;p&gt;Mobilerun gives you two setup paths, and the right one depends on how you work.&lt;/p&gt;

&lt;p&gt;Option 1: A cloud phone&lt;br&gt;
You rent a real phone that lives in Mobilerun's infrastructure. You log in to Instagram on it once, and from then on your agent operates that device 24/7, you access everything from your browser via cloud.mobilerun.ai.&lt;/p&gt;

&lt;p&gt;This suits you if:&lt;/p&gt;

&lt;p&gt;You want the automation running around the clock without draining or occupying your own phone.&lt;br&gt;
You manage a separate business account (or several) and want each on its own clean device.&lt;br&gt;
You want to start in minutes with zero hardware setup.&lt;br&gt;
Each rented phone comes with a dedicated residential IP through Mobilerun Connect, a stable address that stays with your device, matched to its country, timezone, language, and GPS. In other words, the cloud phone looks to Instagram like exactly what it is: one consistent phone, in one place, used by one account.&lt;/p&gt;

&lt;p&gt;Option 2: Connect your personal device&lt;br&gt;
Alternatively, you can connect your own Android phone the one already logged in to your Instagram and let the agent work on it directly. Mobilerun's framework is open source and installed with a couple of commands; the docs walk through both the local-device and cloud paths.&lt;/p&gt;

&lt;p&gt;This suits you if:&lt;/p&gt;

&lt;p&gt;Your business account lives on your personal phone and you don't want to move it.&lt;br&gt;
You want to physically watch what the agent does, at least at first.&lt;br&gt;
You prefer a free, open-source starting point before paying for cloud devices.&lt;br&gt;
Many small businesses actually do both: prototype on their own phone, then move to a cloud phone once they trust the workflow.&lt;/p&gt;

&lt;p&gt;Why This Is Safer: Especially the Personal-Phone Angle&lt;/p&gt;

&lt;p&gt;"Safe" in Instagram automation means two things: safe for your account, and safe for your credentials. Here's why the real-phone approach holds up on both and why the personal-device option is arguably the most conservative way to start.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Real device identity, not a fake one. Instagram's detection is largely about spotting things that aren't phone emulators, datacenter servers, headless browsers. Mobilerun's devices are genuine hardware running genuine app builds, compatible with integrity checks like Play Integrity and App Attest. Your activity reads as what it is: a person's phone.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;On your personal phone, nothing about your footprint changes. This is the part worth underlining. When the agent runs on your own device, the DM replies come from the same phone, same Instagram session, same home Wi-Fi or mobile network, and same location that Instagram has associated with your account since day one. There's no new login, no unfamiliar device alert, no IP jump to another country the classic triggers for security checks simply don't occur. From Instagram's perspective, you answered your DMs, because in a real sense, you did: from your phone, with your approval on every send.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;You never hand your password to a third-party web app. With typical DM tools, you type your Instagram credentials into someone else's website and hope for the best. Here, the login happens inside the Instagram app on a device you control your own phone, or a cloud phone only you access.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Human approval is built in, not bolted on. Because the agent drafts and you approve, message velocity stays human, replies stay personal, and you can't accidentally mass-send something regrettable at 3 a.m.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;The core is open source. The framework behind Mobilerun is public code with an active community. You (or anyone technical you trust) can see exactly what runs on your device a level of transparency closed-source bot tools can't offer.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Consistent, verifiable networking on cloud phones. If you go the cloud route, the dedicated residential IP that ships with each phone means your device isn't sharing a recycled proxy pool with a thousand spammers. Historically one of the fastest ways automation tools got accounts flagged.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;No tool can make Instagram automation entirely risk-free, and no vendor should claim otherwise. Instagram's terms still apply to what you do, not just how you do it. Blasting cold DMs to strangers is against the rules whether a human or an agent types them. The safe lane is the one Mobilerun's workflow is built around: your own accounts, inbound conversations, human-approved sends, and human-scale pacing. Start slowly, keep volumes reasonable, and treat automation as an assistant not a growth hack.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>instagram</category>
      <category>automation</category>
      <category>playwright</category>
    </item>
    <item>
      <title>How to Automate Snapchat Using Your Personal Mobile</title>
      <dc:creator>Priya Negi</dc:creator>
      <pubDate>Thu, 27 Aug 2026 06:00:12 +0000</pubDate>
      <link>https://dev.to/priya_negi_9ffd29931ea408/how-to-automate-snapchat-using-your-personal-mobile-10ch</link>
      <guid>https://dev.to/priya_negi_9ffd29931ea408/how-to-automate-snapchat-using-your-personal-mobile-10ch</guid>
      <description>&lt;p&gt;Automating Snapchat means using an AI agent to handle repetitive tasks like uploading content, posting, replying to messages, or checking your account.&lt;/p&gt;

&lt;p&gt;You can do this directly from your own Android phone using &lt;a href="https://mobilerun.ai/" rel="noopener noreferrer"&gt;mobilerun&lt;/a&gt; AI. The agent interacts with Snapchat by tapping, swiping, and typing on your phone, just like a person would.&lt;/p&gt;

&lt;p&gt;Since Snapchat does not provide a public API for many of these actions, using an agent that operates the app directly is one way to automate them.&lt;/p&gt;

&lt;p&gt;Here’s how to set it up step by step.&lt;/p&gt;

&lt;h3&gt;
  
  
  How this works (tl;dr)
&lt;/h3&gt;

&lt;p&gt;mobilerun drives a real phone. To let it drive your phone, you install a small companion app called the &lt;a href="https://mobilerun.ai/" rel="noopener noreferrer"&gt;mobilerun Portal&lt;/a&gt; on your device. The Portal is what lets mobilerun see the screen and perform taps and swipes. Once your phone is connected to your &lt;a href="https://mobilerun.ai/" rel="noopener noreferrer"&gt;mobilerun&lt;/a&gt; account in the cloud, you just chat with the agent in plain English, tell it what to do on Snapchat, and it does it. You can even schedule it to run on its own every day.&lt;/p&gt;

&lt;p&gt;No rooting, no coding, no reverse-engineering Snapchat. The agent uses the app like you would.&lt;/p&gt;

&lt;h3&gt;
  
  
  Step 1: Download the mobilerun Portal APK
&lt;/h3&gt;

&lt;p&gt;The Portal app is open source and available on GitHub. On your phone's browser, go to the &lt;a href="https://github.com/droidrun/droidrun" rel="noopener noreferrer"&gt;droidrun/mobilerun-portal &lt;/a&gt;repository:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;go to &lt;a href="https://github.com/droidrun/mobilerun" rel="noopener noreferrer"&gt;github.com/droidrun/mobilerun&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Head to the Releases section and download the latest APK file directly onto your phone.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Because this is installed outside the Play Store, Android will ask you to allow installs from your browser (or file manager). Go into the prompt or into &lt;strong&gt;Settings → Apps → Special access → Install unknown apps,&lt;/strong&gt; enable it for the app you're downloading with, then open the APK and tap Install.&lt;/p&gt;

&lt;h3&gt;
  
  
  Step 2: Grant the Portal its permissions
&lt;/h3&gt;

&lt;p&gt;When you first open the mobilerun Portal, it will ask for a couple of permissions it needs to actually operate your phone most importantly Accessibility access, and usually the ability to draw over other apps.&lt;/p&gt;

&lt;p&gt;This is the part that lets the agent "see" the screen and tap the right buttons, so it's essential. Follow the in-app prompts, flip the toggles on in Android's settings when asked, and come back to the Portal. It'll confirm once everything it needs is enabled.&lt;/p&gt;

&lt;h3&gt;
  
  
  Step 3: Connect your phone to your mobilerun cloud account
&lt;/h3&gt;

&lt;p&gt;Now link the device to your account so you can send it commands from anywhere.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Create or sign in to your mobilerun account (at &lt;a href="https://cloud.mobilerun.ai/" rel="noopener noreferrer"&gt;cloud.mobilerun.ai)&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;In the Portal app, connect/pair the device with your account typically by &lt;a href="https://cloud.mobilerun.ai/" rel="noopener noreferrer"&gt;signing in&lt;/a&gt; or entering the pairing details the dashboard gives you.&lt;/li&gt;
&lt;li&gt;Once paired, your personal phone shows up as a connected device in your mobile run dashboard.
That's it, your phone is now a device the agent can control, while it stays in your hand or on your desk.&lt;/li&gt;
&lt;/ol&gt;

&lt;h3&gt;
  
  
  Step 4: Make sure Snapchat is ready
&lt;/h3&gt;

&lt;p&gt;Since the agent uses the real app, just make sure Snapchat is installed and logged in on your phone with the account you want to automate. Whatever the agent needs to reach, the camera, your friends list, your streaks should be a normal, logged-in Snapchat session. The agent will navigate it exactly as you do.&lt;/p&gt;

&lt;h3&gt;
  
  
  Step 5: Give the agent a command in plain English
&lt;/h3&gt;

&lt;p&gt;With everything connected, you don't script anything. You open the mobilerun agent and describe what you want, the way you'd text an assistant.&lt;/p&gt;

&lt;p&gt;For example, to keep streaks alive:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;"Open Snapchat, go to my Chats, and send a snap to everyone I currently have a streak with. Use the front camera, take a quick photo, and send it to all my streak friends."&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Or to post a story:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;"Open Snapchat, take a photo with the rear camera, add the caption 'Open today till 9pm', and post it to My Story."&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The agent reads the screen, opens Snapchat, and works through the steps like opening the camera, capturing, selecting recipients, and sending, tapping and swiping like a real user.&lt;/p&gt;

&lt;p&gt;Because you're chatting with it, you can refine as you go: change the caption, tell it to only snap specific friends, or have it confirm with you before posting publicly.&lt;/p&gt;

&lt;h3&gt;
  
  
  Step 6: Put it on a schedule (the cron job)
&lt;/h3&gt;

&lt;p&gt;The real payoff is not running it manually, it's letting it run itself. Ask the agent to set up a cron job, a recurring schedule, so your Snapchat task fires automatically at the time you want. For daily streaks, you might say:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;"Every day at 9 AM, run my Snapchat streak task and send a snap to all my streak friends."&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Pick whatever cadence suits you like once a day for streaks, a few times a day for stories, whatever your goal is. From then on the agent wakes up on schedule, opens Snapchat on your phone, does the job, and stops. Your streaks stay alive even on the days you forget.&lt;/p&gt;

&lt;h3&gt;
  
  
  A note on the first run vs. later runs
&lt;/h3&gt;

&lt;p&gt;Expect the first run to be a little slower and to use more credits. The initial time, the agent is working the task out from scratch where the camera button is, how the send-to screen is laid out, which friends count as streaks.&lt;/p&gt;

&lt;p&gt;After that, it gets efficient. Once it's figured the task out, mobilerun stores the skill, so future runs just replay a routine it already knows instead of solving it fresh each time. The upfront run is the investment; the daily runs after that are quick and cheap.&lt;/p&gt;

&lt;h3&gt;
  
  
  A few practical tips
&lt;/h3&gt;

&lt;p&gt;Keep the phone charged and online if you're relying on scheduled runs, it's still a real device doing real work. Automate responsibly and within Snapchat's terms; think of this as saving yourself the repetitive taps, not spamming. And start simple: get one task (like streaks) working reliably before layering on stories, replies, or more complex flows.&lt;/p&gt;

&lt;h3&gt;
  
  
  Putting it together
&lt;/h3&gt;

&lt;p&gt;Automating Snapchat on your own phone comes down to a short setup: grab the mobilerun Portal APK from the GitHub releases page, install it and grant Accessibility permission, connect the phone to your mobilerun cloud account, make sure Snapchat is logged in, then tell the agent in plain English what to do and schedule it with a cron job. The first run teaches the agent the task; every run after that, it quietly keeps your snaps going, streaks intact, stories posted because it's using Snapchat exactly the way you would.&lt;/p&gt;

</description>
      <category>snapchat</category>
      <category>ai</category>
      <category>automation</category>
      <category>mobile</category>
    </item>
    <item>
      <title>How to setup auto reply automation on whatsapp for your business</title>
      <dc:creator>Priya Negi</dc:creator>
      <pubDate>Thu, 27 Aug 2026 05:44:24 +0000</pubDate>
      <link>https://dev.to/priya_negi_9ffd29931ea408/how-to-setup-auto-reply-automation-on-whatsapp-for-your-business-3bg9</link>
      <guid>https://dev.to/priya_negi_9ffd29931ea408/how-to-setup-auto-reply-automation-on-whatsapp-for-your-business-3bg9</guid>
      <description>&lt;p&gt;For many small businesses, WhatsApp is the sales desk, support channel, and enquiry inbox. Customers use it to ask about prices, availability, bookings, products, and delivery.&lt;/p&gt;

&lt;p&gt;The WhatsApp Business app has made this the default way millions of small shops, salons, tutors, clinics, and home businesses actually get customers.&lt;/p&gt;

&lt;p&gt;But there's a catch that quietly costs you money every day: slow replies.&lt;/p&gt;

&lt;h3&gt;
  
  
  Why slow replies lose you customers
&lt;/h3&gt;

&lt;p&gt;When someone messages a business on WhatsApp, they're usually deciding right now. They've messaged you and probably two of your competitors. Whoever replies first, with the answer they need, tends to win the sale. A gap of even 15–20 minutes is often enough for the customer to have already booked elsewhere, gotten distracted, or cooled off.&lt;/p&gt;

&lt;p&gt;The problem is you can't sit on WhatsApp all day. You're serving walk-ins, on a call, cooking, driving, or asleep. So enquiries pile up, and by the time you reply, some of them are already gone. If your business genuinely runs on WhatsApp, this isn't a small leak, it's your biggest one.&lt;/p&gt;

&lt;p&gt;If that sounds like you, it's time to automate the replying. Here's how to set it up with mobilerun AI.&lt;/p&gt;

&lt;h3&gt;
  
  
  1. Get a phone for the automation
&lt;/h3&gt;

&lt;p&gt;You can use either:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;An old or spare Android phone&lt;/li&gt;
&lt;li&gt;A &lt;a href="https://cloud.mobilerun.ai/" rel="noopener noreferrer"&gt;mobilerun cloud&lt;/a&gt; phone&lt;/li&gt;
&lt;li&gt;We'll use a &lt;a href="https://cloud.mobilerun.ai/" rel="noopener noreferrer"&gt;cloud phone&lt;/a&gt; here.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Go to mobilerun Cloud and set up a device. Think of it as a new Android phone: sign in with a Google account, open the Play Store, and install WhatsApp or WhatsApp Business. Then set up WhatsApp with your business number as you normally would.&lt;/p&gt;

&lt;h3&gt;
  
  
  2. Tell the agent what to do
&lt;/h3&gt;

&lt;p&gt;Once WhatsApp is ready, open &lt;a href="https://cloud.mobilerun.ai/" rel="noopener noreferrer"&gt;mobilerun VA&lt;/a&gt; and describe the workflow in plain English.&lt;/p&gt;

&lt;p&gt;For example:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;"Check WhatsApp for new customer messages. Answer questions about pricing, availability and business hours using the information provided. If you don't know the answer, tell the customer that a team member will get back to them."&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;You can make the instructions as specific as your business requires. For example, you can tell the agent to collect a customer's preferred booking date, answer FAQs, share product information, or escalate conversations that require a human. The agent operates WhatsApp directly on the device, navigating chats, reading messages and sending replies.&lt;/p&gt;

&lt;h3&gt;
  
  
  3. Schedule automatic checks
&lt;/h3&gt;

&lt;p&gt;You don't need to manually start the agent every time. Ask it to create a recurring task:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;"Check WhatsApp every 10 minutes for new customer messages and respond according to the workflow."&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;You can choose whatever interval works for your business. The workflow becomes:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;Check WhatsApp → Read new messages → Understand the enquiry → Reply → Repeat&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  What happens after the first run?
&lt;/h3&gt;

&lt;p&gt;The initial run can take more time and credits because the agent has to work through the task and establish the workflow. Once the required skill has been stored, subsequent runs can be much more straightforward because the agent can reuse that skill instead of figuring out the workflow from scratch each time&lt;/p&gt;

&lt;h3&gt;
  
  
  What about the WhatsApp Business API?
&lt;/h3&gt;

&lt;p&gt;The WhatsApp Business API is still a good option for businesses that need high-volume messaging, backend integrations, CRM workflows, and structured notifications. But it works differently from mobile automation.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;WhatsApp Business API&lt;/th&gt;
&lt;th&gt;Mobilerun + WhatsApp&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Communicates through an API&lt;/td&gt;
&lt;td&gt;Operates the WhatsApp app&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Built for programmatic messaging&lt;/td&gt;
&lt;td&gt;Works through the mobile UI&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Requires API/integration setup&lt;/td&gt;
&lt;td&gt;Runs on a cloud or Android device&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Best suited to structured workflows&lt;/td&gt;
&lt;td&gt;Useful for flexible app-based workflows&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Complex workflows may require backend development&lt;/td&gt;
&lt;td&gt;Workflows can be described in plain English&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;mobilerun takes the opposite approach: it uses WhatsApp as a real person would. There's no template approval, no 24-hour rule to design around, and no separate messaging pipe, the agent is literally operating the app on a real phone. It reads chats, types replies, sends media, checks statuses, and navigates the interface the same way your thumb does. Because of that, pretty much anything a human can do inside WhatsApp, the agent can do too, which is a much bigger surface than "send and receive text through an API."&lt;/p&gt;

&lt;p&gt;The trade-off is honest: the API is built for massive, high-volume programmatic sending, and at that scale it shines. But for a small business that just wants fast, natural, human-like replies to real customer enquiries without template gatekeeping or messaging-window rules, driving the actual app is often the simpler and more flexible fit.&lt;/p&gt;

&lt;h3&gt;
  
  
  Keep humans in the loop
&lt;/h3&gt;

&lt;p&gt;Automation doesn't have to handle every conversation. A practical setup is:&lt;/p&gt;

&lt;p&gt;Agent: FAQs, pricing, availability, basic enquiries, information collection.&lt;/p&gt;

&lt;p&gt;Human: Complaints, negotiations, complex questions, sensitive issues, and final decisions.&lt;/p&gt;

&lt;p&gt;This lets the agent handle repetitive enquiries while your team focuses on conversations that actually need human input.&lt;/p&gt;

&lt;h3&gt;
  
  
  Putting it together
&lt;/h3&gt;

&lt;p&gt;If WhatsApp is where your business gets its customers, you shouldn't have to constantly watch the inbox to respond quickly. With a cloud phone, WhatsApp, and mobilerun, you can create an auto-reply workflow in plain English and schedule it to run automatically.&lt;/p&gt;

</description>
      <category>whatsapp</category>
      <category>automation</category>
      <category>ai</category>
      <category>mobile</category>
    </item>
    <item>
      <title>How to scrape data from an app without getting banned</title>
      <dc:creator>Priya Negi</dc:creator>
      <pubDate>Tue, 28 Jul 2026 12:14:07 +0000</pubDate>
      <link>https://dev.to/priya_negi_9ffd29931ea408/how-to-scrape-data-from-an-app-without-getting-banned-2f57</link>
      <guid>https://dev.to/priya_negi_9ffd29931ea408/how-to-scrape-data-from-an-app-without-getting-banned-2f57</guid>
      <description>&lt;h1&gt;
  
  
  Best Practices for Scraping
&lt;/h1&gt;

&lt;p&gt;We wrote a few lines of Python, sent some requests, and our scraping pipeline seemed to work flawlessly. But once we started scraping at scale, things changed quickly. Suddenly we were getting errors, running into CAPTCHAs, or receiving empty pages instead of the data we needed. That's when we realised scraping is a lot harder than it looks. So, after loads of hardship and failures, we want to share our playbook on the best practices for scraping.&lt;/p&gt;

&lt;h2&gt;
  
  
  Essential fundamentals
&lt;/h2&gt;

&lt;p&gt;Most bans happen because people ignore the basics. Before reaching for exotic tools, get these right.&lt;/p&gt;

&lt;h3&gt;
  
  
  Check robots.txt and the Terms of Service
&lt;/h3&gt;

&lt;p&gt;Nearly every site publishes a robots.txt at its root (e.g. example.com/robots.txt) telling automated clients which paths are off-limits. Ignoring it won't just get you blocked faster; depending on the jurisdiction and the data, it can carry legal risk. If a site offers an official API, use it. An API is a sanctioned, structured door into the data, and it will always be more stable than scraping the HTML that surrounds it.&lt;/p&gt;

&lt;h3&gt;
  
  
  Slow down
&lt;/h3&gt;

&lt;p&gt;The single most common reason people get flagged is hammering a server with requests far faster than any human could browse. Add delays between requests, and make them variable rather than a fixed one-second tick, since perfectly regular timing is itself a bot signal. Something in the range of a few seconds, randomized, is a reasonable starting point for polite scraping.&lt;/p&gt;

&lt;h3&gt;
  
  
  Handle errors gracefully
&lt;/h3&gt;

&lt;p&gt;When you get a &lt;code&gt;429 Too Many Requests&lt;/code&gt; or a &lt;code&gt;403&lt;/code&gt;, do not immediately retry in a tight loop. That's the fastest way to escalate a soft throttle into a hard ban. Back off, wait, and reduce your rate. Respect the signal the server is sending you.&lt;/p&gt;

&lt;h3&gt;
  
  
  Rotate your identity where appropriate
&lt;/h3&gt;

&lt;p&gt;This means rotating IP addresses (via proxies) and varying your User-Agent and headers so you don't look like a single machine making thousands of identical requests. Residential and mobile proxies are harder to flag than datacenter IPs, which most anti-bot systems keep on known blocklists.&lt;/p&gt;

&lt;p&gt;These fundamentals will carry you a long way on lightly-defended sites. The trouble is that a growing share of the web is not lightly defended.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why browser-based scrapers get blocked
&lt;/h2&gt;

&lt;p&gt;Here's the part that trips up most people. You can follow every rule above, rotate perfect residential proxies, set a flawless Chrome User-Agent, and still get blocked before your scraper receives a single line of HTML. To understand why, you have to understand that modern anti-bot systems (Cloudflare, DataDome, Akamai, Kasada, PerimeterX/HUMAN) don't rely on any one signal. They combine several layers, and a scraper has to pass all of them simultaneously.&lt;/p&gt;

&lt;h3&gt;
  
  
  Layer 1: TLS and network fingerprinting
&lt;/h3&gt;

&lt;p&gt;Before a website even sees your request, it can already learn a lot about the software making it. When your scraper connects, it goes through a security step called a TLS handshake. During this process, it sends technical details that act like a fingerprint.&lt;/p&gt;

&lt;p&gt;The problem is that common scraping tools like Python's &lt;code&gt;requests&lt;/code&gt; or Node's &lt;code&gt;axios&lt;/code&gt; have fingerprints that don't look like real browsers. Websites compare this fingerprint with the browser you're claiming to be. So if your request says it's coming from Chrome, but the fingerprint clearly looks like a Python script, that's a strong sign you're a bot and your request may be blocked before the page even loads.&lt;/p&gt;

&lt;h3&gt;
  
  
  Layer 2: Browser and device fingerprinting
&lt;/h3&gt;

&lt;p&gt;Even if your request gets past the first checks, websites have another way to detect bots. They run JavaScript in your browser to collect information about your device and browser. This includes things like your screen size, graphics card, installed fonts, browser settings, and many other small details that together create a unique browser fingerprint.&lt;/p&gt;

&lt;p&gt;Headless browsers, which are commonly used for scraping, often stand out because they don't behave exactly like a real browser. For example, they may reveal that they're running in headless mode or expose properties that websites use to identify automation. While there are tools that try to hide these signs, modern anti-bot systems look at dozens of signals together. Fixing one or two isn't usually enough, because real browsers have consistent, natural-looking fingerprints that are hard to fake completely.&lt;/p&gt;

&lt;h3&gt;
  
  
  Layer 3: Behavioral analysis
&lt;/h3&gt;

&lt;p&gt;Even if your browser looks real, it also has to behave like a real person. Websites don't just look at what browser you're using, they also watch how you interact with the page. They can track things like how you move your mouse, how you scroll, how fast you type, where you click, and how long you stay on a page.&lt;/p&gt;

&lt;p&gt;Bots often behave differently from people. They move the mouse in perfectly straight lines, click almost instantly, and type at a perfectly consistent speed. Real users are much less predictable, they pause, make mistakes, scroll at different speeds, and interact naturally. Modern anti-bot systems use machine learning to spot these patterns, so even if one signal looks normal, several suspicious signals together can reveal that it's a bot.&lt;/p&gt;

&lt;p&gt;This is why building a reliable browser-based scraper is so difficult. You have to make your browser look real, behave like a real person, and constantly keep up with new detection techniques. That means managing browser fingerprints, proxies, and human-like behaviour all while websites keep improving their defences. It quickly becomes an ongoing battle that's both complex and expensive.&lt;/p&gt;

&lt;h2&gt;
  
  
  The alternative: scraping through the mobile app layer
&lt;/h2&gt;

&lt;p&gt;Here's a shift in perspective that a lot of scrapers miss. Almost all the detection machinery above was built to catch browser automation on the web. But an enormous amount of the world's data now lives in mobile apps, often data that isn't even exposed on the website. And the detection story on mobile is very different.&lt;/p&gt;

&lt;p&gt;This is where Mobilerun comes into the picture. Instead of driving a headless browser, Mobilerun runs an AI agent on real Android and iOS devices in the cloud. The agent sees the screen, reads the app's UI accessibility tree, and interacts the way a person would: tapping, swiping, scrolling, and typing. It extracts structured data directly from the app.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why this avoids so much of the detection problem
&lt;/h2&gt;

&lt;p&gt;The reason browser scrapers get caught is that they present a synthetic environment and detection systems are purpose-built to spot exactly those artifacts. Mobilerun changes the situation on several fronts:&lt;/p&gt;

&lt;h3&gt;
  
  
  It's a real device, not an emulator or headless browser.
&lt;/h3&gt;

&lt;p&gt;Real phones don't have many of the giveaways that browser-based bots do. There's no &lt;code&gt;navigator.webdriver&lt;/code&gt; flag, no headless browser identifier, and no browser fingerprint that doesn't match the device. Everything from the hardware and operating system to the sensors and installed apps is exactly what you'd expect from a real person's phone.&lt;/p&gt;

&lt;p&gt;That's a big advantage because anti-bot systems are looking for consistency. Real devices naturally provide it, while emulators and virtual devices often expose artificial hardware details or other subtle signs that they're not genuine. A physical phone simply behaves like a normal phone, making it much harder to distinguish from a real user.&lt;/p&gt;

&lt;h3&gt;
  
  
  Real sensor and network characteristics.
&lt;/h3&gt;

&lt;p&gt;Physical phones produce noisy accelerometer and gyroscope data, and carrier-network and latency patterns that are genuinely hard to fake. Some platforms cross-check sensor telemetry against UI gestures specifically to catch synthetic control; on a real device driven through the OS, that telemetry is authentic.&lt;/p&gt;

&lt;h3&gt;
  
  
  Human-like interaction by construction.
&lt;/h3&gt;

&lt;p&gt;Because the agent acts through the device's normal input layer, its behavior sits much closer to a real user's than a script firing thousands of identical HTTP requests ever could.&lt;/p&gt;

&lt;p&gt;By starting from a genuine device and a genuine interaction model, you're no longer fighting the entire browser-detection stack, you've largely stepped around it.&lt;/p&gt;

&lt;p&gt;Essentially, the mobile approach shines anywhere the valuable data lives inside an app, or where the mobile app is simply less defended than the hardened website. Common examples:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Pricing and availability from travel, food-delivery, ride-hailing, or grocery apps whose sites are heavily protected but whose apps are the primary interface.&lt;/li&gt;
&lt;li&gt;Listings data from marketplaces and real-estate apps.&lt;/li&gt;
&lt;li&gt;Social and review data from platforms where much of the activity is mobile-first.&lt;/li&gt;
&lt;li&gt;Any app with no public API at all, which is the majority of them, where the UI is the only way in.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Putting it together
&lt;/h2&gt;

&lt;p&gt;If you're scraping a simple website, keep it simple: respect robots.txt, use the official API if one exists, limit how fast you send requests, vary your timing, and handle errors gracefully. That's enough for many websites.&lt;/p&gt;

&lt;p&gt;If you're scraping a site with strong anti-bot protection, it's much harder. Modern websites check your network fingerprint, browser fingerprint, and behaviour to detect bots. Getting past all of that with headless browsers takes constant effort.&lt;/p&gt;

&lt;p&gt;If the data is available in a mobile app, using a real phone can be a much easier approach. Platforms like Mobilerun let you automate real Android or iOS devices, so you avoid many of the browser-specific detection techniques. You're not pretending to be a real user, you're using a real device.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>brightdatachallenge</category>
      <category>webscraping</category>
      <category>database</category>
    </item>
    <item>
      <title>Doubao vs Mobilerun: Which is better?</title>
      <dc:creator>Priya Negi</dc:creator>
      <pubDate>Mon, 20 Jul 2026 06:02:11 +0000</pubDate>
      <link>https://dev.to/priya_negi_9ffd29931ea408/doubao-vs-mobilerun-which-is-better-2f21</link>
      <guid>https://dev.to/priya_negi_9ffd29931ea408/doubao-vs-mobilerun-which-is-better-2f21</guid>
      <description>&lt;p&gt;The race to build AI agents that can operate smartphones is accelerating. Instead of relying on APIs or app integrations, these agents interact with mobile apps the same way humans do like reading the screen, tapping buttons, typing text, and navigating multi-step workflows.&lt;/p&gt;

&lt;p&gt;Two products taking very different approaches are ByteDance's&lt;a href="https://www.nubia.com/en/news/as-an-ai-native-phone-pioneer-nubia-reshapes-the-paradigm-of-human-device-interaction-at-mwc-barcelona-2026.html" rel="noopener noreferrer"&gt; Doubao&lt;/a&gt; AI Phone and &lt;a href="https://mobilerun.ai/" rel="noopener noreferrer"&gt;Mobilerun&lt;/a&gt;, the mobile AI agent infrastructure developed by Droidrun.&lt;br&gt;
While both aim to solve the same problem, they are designed for different audiences.&lt;/p&gt;

&lt;p&gt;Doubao packages AI into a dedicated smartphone with a tightly integrated experience. Mobilerun provides the infrastructure that lets developers connect AI models to Android or iOS devices, whether those devices are physical phones or cloud phones.&lt;/p&gt;

&lt;p&gt;We spent time testing both approaches across a series of real-world tasks to understand where each performs well and where each still struggles.&lt;/p&gt;

&lt;h2&gt;
  
  
  Two Different Answers to the Same Problem
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Doubao and Mobilerun&lt;/strong&gt; are both trying to answer a simple question: can an AI agent operate the apps on a phone the way a person does like reading the screen, tapping, typing, moving through multi-step tasks instead of relying on api endpoints which are not always available.&lt;br&gt;
The difference lies in how they approach the problem:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Doubao&lt;/strong&gt; solves it through the operating system. The AI is deeply integrated into a dedicated smartphone designed around an agent-first experience. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Mobilerun&lt;/strong&gt; solves it through infrastructure. Rather than shipping a phone, it provides a platform that allows developers to connect AI models like Claude, Hermes, or OpenClaw to Android or iOS devices and automate mobile workflows.&lt;/p&gt;

&lt;h3&gt;
  
  
  Quick Feature Comparison
&lt;/h3&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Feature&lt;/th&gt;
&lt;th&gt;Doubao AI Phone&lt;/th&gt;
&lt;th&gt;Mobilerun&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Product Type&lt;/td&gt;
&lt;td&gt;AI-powered smartphone&lt;/td&gt;
&lt;td&gt;Mobile AI agent infrastructure&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Hardware Required&lt;/td&gt;
&lt;td&gt;Dedicated Doubao phone&lt;/td&gt;
&lt;td&gt;Existing Android, iPhone, or cloud phone&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Cloud Phone Support&lt;/td&gt;
&lt;td&gt;No&lt;/td&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Agent Support&lt;/td&gt;
&lt;td&gt;Doubao ecosystem&lt;/td&gt;
&lt;td&gt;OpenAI, Anthropic, Gemini, Ollama, DeepSeek, Hermes, OpenClaw, and others&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Target Audience&lt;/td&gt;
&lt;td&gt;Consumers&lt;/td&gt;
&lt;td&gt;Developers &amp;amp; businesses&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Human-in-the-loop&lt;/td&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Cross-application Workflow&lt;/td&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Setup Complexity&lt;/td&gt;
&lt;td&gt;Easy&lt;/td&gt;
&lt;td&gt;Medium&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Scalable to Multiple Devices&lt;/td&gt;
&lt;td&gt;No&lt;/td&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Hardware&lt;/td&gt;
&lt;td&gt;Nubia M153&lt;/td&gt;
&lt;td&gt;Can operate most mobile devices&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Background Task Execution&lt;/td&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;td&gt;Limited to cloud phones&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h3&gt;
  
  
  How Doubao Works
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F1qcvpk9854n9936d32dp.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F1qcvpk9854n9936d32dp.png" alt=" " width="799" height="343"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The first thing you notice on the Doubao AI Phone is its dedicated AI button. Press it and the assistant appears immediately, ready to execute the task. It opens apps, navigates interfaces, types text, and moves through multiple screens autonomously. The experience feels much closer to delegating work to an assistant. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F6bb9rsm3toiemxp5jowk.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F6bb9rsm3toiemxp5jowk.png" alt=" " width="670" height="562"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  How Mobilerun Works
&lt;/h3&gt;

&lt;p&gt;Instead of requiring dedicated hardware, it connects AI models to existing mobile devices. Users can either:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;connect their own Android or iPhone or Cloud phones for remote scalable automation, or&lt;/li&gt;
&lt;li&gt;launch cloud phones for remote automation.
The AI interacts with the device by observing the interface and performing actions on behalf of the user. Unlike consumer-focused assistants,Mobilerun is a infrastructure layer for mobile agents.
  &lt;iframe src="https://www.youtube.com/embed/HVHXkkxzbTI"&gt;
  &lt;/iframe&gt;
 &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Ftfq8rly5f3w128ztxe88.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Ftfq8rly5f3w128ztxe88.png" alt=" " width="799" height="706"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Let’s compare both Doubao and Mobilerun for a few tasks:&lt;/p&gt;

&lt;h3&gt;
  
  
  Ordering an Iced Americano: Doubao vs Mobilerun
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;On Doubao:&lt;/strong&gt; We asked Doubao to order an iced Americano. The assistant opened the food delivery app, searched for coffee, compared prices, selected the lowest-priced option, and attempted to complete the order. During the process, it paused appropriately when clarification was needed.&lt;/p&gt;

&lt;p&gt;The workflow completed successfully, although the entire process took close to three minutes. Overall, the experience felt similar to delegating the task to a junior assistant that occasionally asks follow-up questions before proceeding.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;On Mobilerun:&lt;/strong&gt; We repeated the same task using Mobilerun. The agent opened the delivery application, searched for an iced Americano, compared available options, selected one, and added it to the cart. Rather than automatically completing the purchase, it paused and asked whether the order should be placed or left in the cart.&lt;/p&gt;

&lt;p&gt;This human-in-the-loop workflow provides an additional confirmation step before performing actions with financial consequences.&lt;/p&gt;

&lt;h3&gt;
  
  
  Task 2: Comment on a post
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;On Doubao:&lt;/strong&gt; We asked the agent to post a comment under Instagram post, Doubao repeatedly typed and deleted text, then gave up, and simply couldn't identify the comment button. It's a small, telling failure: the agent handles familiar surfaces well, but a control it can't confidently locate stops it. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;On Mobilerun.&lt;/strong&gt; We then repeated the same task using Mobilerun. During our testing, the agent successfully navigated to the post, entered the requested comment, and submitted it.&lt;/p&gt;

&lt;p&gt;One factor that likely contributed to this result is Mobilerun's ability to combine a11y tree information with computer vision when interpreting the interface, allowing it to identify actionable UI elements more reliably in many situations.&lt;/p&gt;

&lt;h3&gt;
  
  
  Task 3: Chat with a friend on Wechat
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;On Doubao:&lt;/strong&gt; For our final test, we asked Doubao to open WeChat and send a message to a friend. During testing, the workflow did not complete successfully. &lt;/p&gt;

&lt;p&gt;Public reports have noted compatibility challenges between the Doubao AI Phone and certain major Chinese applications, including WeChat, although the exact causes have not been fully disclosed publicly. Some applications reportedly blocked Doubao from automating tasks (due to security issues)&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;On Mobilerun:&lt;/strong&gt; We repeated the same task using Mobilerun. This time, the agent understood the context, opened WeChat, and chatted with the friend. Again for this task, Mobilerun agent successfully executed the task, while Doubao struggled. &lt;/p&gt;

&lt;h3&gt;
  
  
  What these tasks reveal
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;Doubao is a genuine milestone:&lt;/strong&gt; the first agent-led smartphone that is integrated into a user's device.&lt;/p&gt;

&lt;p&gt;Unlike earlier swings such as the Rabbit R1, which stumbled on even its promised basics, Doubao completes real end-to-end workflows like ordering food, playing podcasts, navigating apps entirely through the agent, on a device you can buy today. But it runs those tasks as a self-contained device experience, and when it can't parse a UI element or hits an app's defenses, it stops. It works just well enough to prove an agent-first phone is possible, and fails just often enough to show how far the idea has to go. It is still a testing ground.&lt;/p&gt;

&lt;p&gt;Mobilerun treats the same problem as a layer rather than a device. Because it's model-agnostic (OpenAI, Anthropic, Gemini, Ollama, DeepSeek) and runs on both Android and iOS, on personal phones or cloud phones, it isn't tied to one handset or one vendor's reasoning. The human-in-the-loop chat model means you stay in control of consequential actions like placing an order, making a payment etc. And the a11y + vision mode + better architecture is what lets it push through the exact UI moments, like finding a "Send" button, where Doubao agent gives up. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Flhug4a0jqdjo0l85y941.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Flhug4a0jqdjo0l85y941.png" alt=" " width="799" height="703"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Doubao is a product you hold, Mobilerun is a infrastructure layer you operate with. But on the same tasks, they draw the two roads to the same destination: the phone as something you delegate to rather than operate. &lt;/p&gt;

&lt;h3&gt;
  
  
  Which one to choose?
&lt;/h3&gt;

&lt;p&gt;If you're looking for a consumer-friendly AI phone that works out of the box, Doubao offers one of the most compelling implementations currently available.&lt;/p&gt;

&lt;p&gt;If you're building AI agents, automating mobile workflows, or integrating smartphones into larger AI systems, Mobilerun provides considerably more flexibility and infrastructure.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>mobile</category>
      <category>automation</category>
      <category>reviews</category>
    </item>
    <item>
      <title>Mobilerun vs DuoPlus: Which one to choose?</title>
      <dc:creator>Priya Negi</dc:creator>
      <pubDate>Thu, 16 Jul 2026 07:44:42 +0000</pubDate>
      <link>https://dev.to/priya_negi_9ffd29931ea408/mobilerun-vs-duoplus-which-one-to-choose-3eb6</link>
      <guid>https://dev.to/priya_negi_9ffd29931ea408/mobilerun-vs-duoplus-which-one-to-choose-3eb6</guid>
      <description>&lt;p&gt;Both &lt;a href="https://mobilerun.ai/" rel="noopener noreferrer"&gt;Mobilerun&lt;/a&gt; and &lt;a href="https://www.duoplus.net/" rel="noopener noreferrer"&gt;DuoPlus&lt;/a&gt; put mobile devices in the cloud and let you automate them and both can run many social media accounts at scale with automation. Let’s compare these two on different parameters. &lt;/p&gt;

&lt;h3&gt;
  
  
  Quick take
&lt;/h3&gt;

&lt;p&gt;Mobilerun is an open-source, LLM-agnostic framework plus a managed cloud that lets AI agents drive real Android and iOS devices with natural language. It also provides cloud devices and real mobile devices in the cloud. &lt;br&gt;
DuoPlus runs real ARM-based Android devices in the cloud, each in an isolated environment, so one person can operate many social media, e-commerce, or gaming accounts from a single computer without buying physical phones.&lt;/p&gt;

&lt;h2&gt;
  
  
  Side-by-Side Comparison: Mobilerun vs DuoPlus
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Parameter&lt;/th&gt;
&lt;th&gt;Mobilerun&lt;/th&gt;
&lt;th&gt;DuoPlus&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Core purpose&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Give AI agents a phone; developer automation, social media automation, RPA, QA&lt;/td&gt;
&lt;td&gt;Anti-detect cloud phone for multi-account social/e-commerce operations&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;OS support&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Android and iOS&lt;/td&gt;
&lt;td&gt;Android only&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Automation approach&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Natural-language LLM agent; deterministic replay scripts&lt;/td&gt;
&lt;td&gt;RPA templates, custom workflows, Operation Sync, DUO+ AI Agent&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;LLM support&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;LLM-agnostic (OpenAI, Anthropic, Gemini, Ollama, DeepSeek, OpenRouter)&lt;/td&gt;
&lt;td&gt;Proprietary AI templates / DUO+ AI Agent&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Device technology&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Cloud-hosted virtual phones + real physical hardware; residential proxy&lt;/td&gt;
&lt;td&gt;Real ARM-chip Android devices in the cloud&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Identity / stealth&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Real-device identity, carrier-grade residential IPs, eSIM&lt;/td&gt;
&lt;td&gt;Independent fingerprints, GPS + SIM data across 150+ countries&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Scale model&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Fleets from 1 to 10,000+ phones&lt;/td&gt;
&lt;td&gt;Unlimited multiplicity&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Developer tooling&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Open-source framework, CLI, Python SDK, Docker, REST API, webhooks&lt;/td&gt;
&lt;td&gt;REST API, ADB access, proxy management&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Open source&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Yes (MIT licensed)&lt;/td&gt;
&lt;td&gt;No&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;SMS / numbers&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Receives SMS on real devices and eSIM&lt;/td&gt;
&lt;td&gt;No real SIM; uses "Cloud Number" add-on for SMS&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Entry pricing&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;From &lt;strong&gt;$5/month&lt;/strong&gt; (bring your own phone); &lt;strong&gt;$0.03/min&lt;/strong&gt; pay-as-you-go&lt;/td&gt;
&lt;td&gt;Cloud phone from &lt;strong&gt;~$2/month&lt;/strong&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h3&gt;
  
  
  Platform support
&lt;/h3&gt;

&lt;p&gt;Mobilerun controls both Android and iOS, and its cloud even offers real physical iPhones on custom hardware built for iOS stealth.&lt;br&gt;
DuoPlus is Android-only. If iOS matters to you, DuoPlus is off the table today; if you specifically want the newest Android on real ARM silicon, DuoPlus is the stronger claim.&lt;/p&gt;

&lt;h3&gt;
  
  
  Automation approach
&lt;/h3&gt;

&lt;p&gt;Mobilerun is built around LLM agents that read the screen (a11y trees plus screenshots), then tap, swipe, and type from a natural-language instruction. It's LLM-agnostic and supports a reasoning mode for complex multi-step tasks. Usefully, you can build a workflow with the agent and then replay it as a fast, deterministic script with no model in the loop.&lt;/p&gt;

&lt;p&gt;DuoPlus approaches automation through RPA: pre-built templates and custom workflows, plus an Operation Sync feature that mirrors one action across many devices at once (like posting to dozens of accounts simultaneously).&lt;/p&gt;

&lt;h3&gt;
  
  
  Device technology and identity
&lt;/h3&gt;

&lt;p&gt;Both Mobilerun and DuoPlus stress that their devices look like real phones to detection systems, but they get there differently.&lt;br&gt;
DuoPlus runs virtual Android on authentic ARM chips deployed globally, and gives each instance an independent environment which means its own device parameters, GPS, and simulated SIM/base-station data across 150+ countries to reduce account association risk. There is basically no cap on how many devices you create or run. &lt;/p&gt;

&lt;p&gt;Two constraints DuoPlus states plainly: each cloud phone requires a dedicated proxy IP, and there's no real SIM, so calls/SMS need the separate Cloud Number product. &lt;/p&gt;

&lt;p&gt;Mobilerun offers a mix: cloud-hosted virtual phones, plus real physical hardware (including iPhones) for workflows that need the strongest device authenticity. It bundles carrier-grade residential proxies and real-device identity, and its real devices can receive SMS directly.&lt;/p&gt;

&lt;h3&gt;
  
  
  Access and developer tooling
&lt;/h3&gt;

&lt;p&gt;DuoPlus is built for reach without setup friction: no client download is required, and you control your fleet from any PC or mobile browser. Under the hood it's a proprietary, closed platform, but it exposes a REST API, Android ADB access, and proxy management, with extensive API docs for phone control, automation, and team management.&lt;/p&gt;

&lt;p&gt;Mobilerun’s core framework is open source under the MIT license. You can run it locally on your own machine and devices, then scale to the managed cloud with a config change. &lt;br&gt;
The difference is: Mobilerun is code-first and inspectable; DuoPlus is a managed, browser-based dashboard product with an API attached.&lt;/p&gt;

&lt;h3&gt;
  
  
  Pricing
&lt;/h3&gt;

&lt;p&gt;Mobilerun (per its pricing page): a dedicated cloud Android phone is $80/month ($768 billed yearly); a real physical iPhone is $200/month ($1,920 yearly); bring-your-own-phone is $5/month ($48 yearly). There's also pay-as-you-go cloud Android at $0.03/min with no commitment. Usage add-ons: cloud Android time $0.03/min, mobile premium proxy $10/GB, and agent step $0.01. Enterprise pricing (10,000+ concurrent phones, SOC2/SSO) is custom.&lt;/p&gt;

&lt;p&gt;DuoPlus (per its help center and product pages): the cloud phone itself is around $2/month (cheaper in bulk), billed separately from "startup" time. You then pick a startup mode — Temporary Startup billed by the minute (its help center lists $0.06 per 10 minutes per device, capped at $1.2/day per device) or a flat-fee monthly Subscription Startup that allows unlimited startup during its validity. New users get 1 month of cloud phone plus 30 minutes of free startup time. (DuoPlus lists slightly different per-minute figures across pages, so check its live pricing page before buying.)&lt;/p&gt;

&lt;p&gt;The main difference: DuoPlus is optimized for cheap, large fleets of Android instances you spin up and down; Mobilerun's per-device plans cost more but include the AI agent, stealth identity, proxy, and  iOS.&lt;/p&gt;

&lt;h3&gt;
  
  
  Which should you choose?
&lt;/h3&gt;

&lt;p&gt;Choose Mobilerun if you're building AI agents, want an open-source and LLM-agnostic framework, need iOS as well as Android, or want to prototype locally and scale to a managed cloud with the same code.&lt;br&gt;
Choose DuoPlus if your job is running many Android social media or e-commerce accounts safely and cheaply at scale, you want a no-download browser dashboard with bulk operations, one-click reskin/sharing, and RPA templates, and you don't need iOS.&lt;/p&gt;

&lt;p&gt;Both can run large fleets of social media accounts with automation, so this isn't an either/or on capability - it's a fit decision. Pick Mobilerun if you want AI-agent-driven automation, open-source flexibility, and cross-platform (iOS + Android) reach. Pick DuoPlus if you want a no-code, browser-based dashboard tuned specifically for scaling Android account operations.&lt;/p&gt;

</description>
      <category>mobile</category>
      <category>ai</category>
      <category>opensource</category>
      <category>automation</category>
    </item>
    <item>
      <title>Browseruse vs Mobilerun: Automation Model, Scaling and More</title>
      <dc:creator>Priya Negi</dc:creator>
      <pubDate>Fri, 10 Jul 2026 04:57:02 +0000</pubDate>
      <link>https://dev.to/priya_negi_9ffd29931ea408/browseruse-vs-mobilerun-automation-model-scaling-and-more-3pme</link>
      <guid>https://dev.to/priya_negi_9ffd29931ea408/browseruse-vs-mobilerun-automation-model-scaling-and-more-3pme</guid>
      <description>&lt;p&gt;At first glance, &lt;a href="https://browser-use.com/" rel="noopener noreferrer"&gt;Browser Use&lt;/a&gt; and &lt;a href="https://mobilerun.ai/" rel="noopener noreferrer"&gt;Mobilerun&lt;/a&gt; might seem like they solve the same problem. But they don't. Browser use gives your AI agent access to a browser, while Mobilerun gives it access to a mobile device. That distinction determines what your agent can actually automate.&lt;/p&gt;




&lt;h3&gt;
  
  
  What is Browser Use?
&lt;/h3&gt;

&lt;p&gt;Browser Use is AI browser automation: you give an agent a natural-language task and it drives a real web browser to complete it. It comes in two forms. There's the open-source Python library (browser-use), which you run on your own machine and point at your own LLM provider, and there's Browser Use Cloud, a managed API that runs the same idea on hosted, stealth browser infrastructure so you don't manage anything yourself.&lt;br&gt;
The pitch is that you send a task like "List the top 20 posts on Hacker News today with their points" and get structured results back. Under the hood the agent looks at the page, decides the next action, clicks, types, scrolls, and repeats until the task is done.&lt;/p&gt;

&lt;h3&gt;
  
  
  What Browser Use provides
&lt;/h3&gt;

&lt;p&gt;Two modes: Agent and Browser. The Agent runs your natural-language task end to end and hands back a result. The Browser mode gives you a raw cloud browser over the Chrome DevTools Protocol (CDP) so your own code drives it. The infrastructure is the same infrastructure, but the control level is different. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Stealth browsers:&lt;/strong&gt; The Cloud runs a forked Chromium built to get agents past bot detection and access sites that block ordinary automation.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;CAPTCHA solving and residential proxies:&lt;/strong&gt; You get proxies that span 195+ countries and are on by default, which helps sessions look like real regional users.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Framework compatibility:&lt;/strong&gt; You can connect Playwright, Puppeteer, or Selenium to the hosted browsers over CDP, so existing scripts keep working.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Profiles and authentication:&lt;/strong&gt; Persistent browser state lets an agent log in once and reuse that session. There's tooling for 2FA and for syncing local cookies up to the cloud.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Structured output:&lt;/strong&gt; Get validated structured data back from a task instead of loose text.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Live preview, recording, and human-in-the-loop:&lt;/strong&gt; Watch the agent's browser in real time, embed it in your own app, replay sessions, and hand control to a human mid-task for approvals, payments, or tricky auth.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Deterministic rerun:&lt;/strong&gt; Run a task once, then re-execute the cached script for effectively $0 in LLM cost.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Integrations:&lt;/strong&gt;An MCP server, n8n node, and webhooks make it easy to wire into agent stacks and existing workflows.&lt;/p&gt;

&lt;h3&gt;
  
  
  Why AI agents use it
&lt;/h3&gt;

&lt;p&gt;For a browser-based agent, the browser is the "hands." An assistant researching a topic might be told "Go to Hacker News and pull today's top posts," let Browser Use launch a stealth Chromium, observe the page, decide the next action, click, and continue. The loop repeats until the task is done, and because it's real Chromium with real proxies, it can reach sites that reject naive scrapers.&lt;/p&gt;

&lt;h3&gt;
  
  
  How Browser Use differs from Mobilerun
&lt;/h3&gt;

&lt;p&gt;The biggest distinction is the environment each one automates. Browser Use only ever sees what's inside a web browser. Mobilerun controls the whole mobile device.&lt;/p&gt;

&lt;h4&gt;
  
  
  Browser Use's view of the world
&lt;/h4&gt;

&lt;p&gt;Browser Use runs Chromium locally or in the cloud which means it operates entirely within the browser. Browseruse agent can navigate, click buttons, fill forms, read page content, execute JavaScript, take screenshots, and upload or download files. What it cannot do is leave the browser: it can't install a native Android or iOS app, open WhatsApp, receive an SMS or push notification, grant OS-level permissions, toggle Wi-Fi, or open device Settings. All of that happens at the device/OS level, outside Chromium. For SMS- or app-based 2FA, the practical answer is a human in the loop or a stored credential/OTP, not the browser reading a text message itself.&lt;/p&gt;

&lt;h4&gt;
  
  
  Mobilerun's view of the world
&lt;/h4&gt;

&lt;p&gt;Mobilerun runs AI agents that control real Android and iOS devices in its cloud or on your own hardware. The agent gets a natural-language goal like "open Settings and turn on dark mode" and taps, swipes, and types its way there. It controls the entire device: the home screen, Chrome, the Play Store, WhatsApp, Settings, Files, notifications, native apps, and system UI. It can install and uninstall apps, grant or revoke Android runtime permissions, read the accessibility UI tree, set GPS location, timezone, and locale, manage eSIMs and proxies, and even drive the device's own Chrome over CDP when a task does need the browser. An agent moves freely across all of it as part of a single workflow.&lt;/p&gt;

&lt;h4&gt;
  
  
  A concrete example
&lt;/h4&gt;

&lt;p&gt;A workflow that crosses app boundaries shows the gap clearly:&lt;br&gt;
_&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Open Play Store → install an app → grant permissions → open Gmail → retrieve an OTP → switch back to the app → verify the account → enable notifications → parse the screen data.&lt;br&gt;
_&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Browser Use can't run this end to end, because most of it happens outside the browser. Mobilerun is designed exactly for it.&lt;br&gt;
By contrast, a typical Browser Use agent stays entirely on the web: open LinkedIn, search for a company, extract employee names, and download a CSV.&lt;/p&gt;

&lt;p&gt;A Mobilerun agent is device-first: install TikTok, create an account, receive an OTP, complete onboarding, upload a video, return to TikTok, and publish.&lt;/p&gt;

&lt;h4&gt;
  
  
  Underlying automation model
&lt;/h4&gt;

&lt;p&gt;Browser Use operates through the browser. In Browser mode it exposes a raw browser over the Chrome DevTools Protocol (CDP), the same protocol Playwright, Puppeteer, and Selenium speak, giving access to the DOM, network events, and console logs. In Agent mode it wraps that in an AI loop.&lt;/p&gt;

&lt;p&gt;Mobilerun operates at the mobile device level. Rather than being limited to a browser's DOM, it works from the device's a11y UI tree and screenshots across native apps, web views, and system screens, executing real taps with stealth mode that emulates human-like typing speed, jitter, and curved swipe paths.&lt;/p&gt;

&lt;h4&gt;
  
  
  Scaling
&lt;/h4&gt;

&lt;p&gt;Both platforms are built for concurrency, but they scale different resources. Browser Use scales stealth browser sessions on managed cloud infrastructure. Mobilerun scales fleets of real or cloud-hosted mobile devices.&lt;/p&gt;

&lt;h4&gt;
  
  
  Open source and self-hosting
&lt;/h4&gt;

&lt;p&gt;Both have an open-source core. Browser Use's library runs locally against your own LLM key, with the Cloud as the managed path to production. Mobilerun's framework runs the open-source mobilerun package on your own machine against your own Android device over adb, again with your own LLM key, while its Cloud offers hosted devices billed through credits. In both cases: run it yourself for control, or use the cloud to skip the infrastructure.&lt;/p&gt;

&lt;h3&gt;
  
  
  When to use which
&lt;/h3&gt;

&lt;p&gt;Choose Browser Use when your workflow lives entirely on the web: large-scale scraping, browser-based AI agents, end-to-end web testing, form automation, data extraction, or any task that needs to reach protected sites and scale across many concurrent browser sessions.&lt;br&gt;
Choose Mobilerun when you need to automate Android or iOS apps, your workflow crosses multiple apps, you need device features like notifications, permissions, GPS, SIM/eSIM, or file storage, or you're testing and operating mobile apps end to end.&lt;/p&gt;




&lt;h3&gt;
  
  
  Can they complement each other?
&lt;/h3&gt;

&lt;p&gt;Yes. They're more complementary than competitive, unless the task is strictly browser automation. In some architectures they handle different parts of the same workflow. A core AI agent might use Browser Use to gather information from websites while Mobilerun handles the mobile portion: installing an app, signing in with an OTP, validating push notifications.&lt;br&gt;
The takeaway is the one we started with. Browser Use gives your agent a browser; Mobilerun gives it a phone. Pick based on where the work actually happens.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>webscraping</category>
      <category>selenium</category>
      <category>automation</category>
    </item>
    <item>
      <title>How to Automate Apps With No API?</title>
      <dc:creator>Priya Negi</dc:creator>
      <pubDate>Thu, 09 Jul 2026 09:01:18 +0000</pubDate>
      <link>https://dev.to/priya_negi_9ffd29931ea408/how-to-automate-apps-with-no-api-2m6d</link>
      <guid>https://dev.to/priya_negi_9ffd29931ea408/how-to-automate-apps-with-no-api-2m6d</guid>
      <description>&lt;p&gt;I've hit this wall more times than I can count. I need to post to a creator account, verify an SMS code on a virtual phone, or stitch a mobile workflow into a backend pipeline. Then I go looking for the API and find one of three things: there isn't one, there is one but it's locked behind a partnership form, or there is one but it's missing the exact thing I need :(&lt;/p&gt;

&lt;p&gt;For a long time, the answer was "tough luck, scrape the UI." I think that answer is finally changing, because I think now the AI agents have gotten good enough to drive a phone the same way I would. This post is about how that actually works in practice.&lt;/p&gt;




&lt;h2&gt;
  
  
  Why so many apps don't have APIs
&lt;/h2&gt;

&lt;p&gt;Let's talk about why this gap exists. Most consumer apps—banking, social, messaging, dating don't ship public APIs because their business model wants you to use the app not the web.&lt;/p&gt;

&lt;p&gt;APIs introduce things they don't want like scraping, abuse, churn from third-party clients, and it creates regulatory headaches. Even when an API exists (eg. Instagram Graph, WhatsApp Business, the various fintech sandboxes), it's almost always a narrow slice of what the app itself can do.&lt;/p&gt;

&lt;p&gt;So if I wanted to automate real-world consumer mobile flows, an API usually wouldn't work. I needed a different abstraction.&lt;/p&gt;

&lt;h3&gt;
  
  
  My old workaround, and why it kept breaking
&lt;/h3&gt;

&lt;p&gt;In the past, I used UI automation frameworks like Appium, Espresso, XCUITest, and Selenium-for-mobile. The problem was they're brittle in exactly the way that matters. I'd write a script that taps a button at specific coordinates, and when the app ships a redesign, the selector moves, and my automation dies.&lt;/p&gt;

&lt;p&gt;I spent a lot of time fixing selectors than actually shipping something. I added retries, then sleeps, then "wait for element," then a custom DOM diff tool, and eventually realized I'd built a small, sad browser inside my test harness.&lt;/p&gt;

&lt;p&gt;The deeper issue is that these tools require me to describe the UI structurally, but apps don't actually have stable structure (iykyk). They have intent. When I look at a banking app, I don't think tap the third button in the second tab, I think open Payouts.&lt;/p&gt;




&lt;h3&gt;
  
  
  What changed now?
&lt;/h3&gt;

&lt;p&gt;LLMs with vision finally made it cheap to do what I do naturally: look at a screen, decide what to tap, do it, look at the result, and repeat. Combine vision with the a11y tree the OS already exposes, and you have a model that can both see the pixels and read the semantic structure, which is much more robust imo. Add a planner that breaks post this clip to an app and respond to comments into the dozen taps and swipes it actually requires, and you have a real mobile agent. That's the category Mobilerun works in.&lt;/p&gt;

&lt;h3&gt;
  
  
  But what is Mobilerun?
&lt;/h3&gt;

&lt;p&gt;Mobilerun is an open-source framework that lets you point an LLM at a real Android or iOS device and tell it what to do.&lt;/p&gt;

&lt;p&gt;It reads the screen via a11y plus a vision model, plans multi-step workflows, and drives the device with taps, swipes, and text input. There's a CLI for one-off tasks, a Python SDK for embedding it into my own code, and a hosted cloud if I don't want to babysit physical phones.&lt;/p&gt;

&lt;p&gt;A few things make Mobilerun interesting if you're a developer evaluating this space:&lt;/p&gt;

&lt;p&gt;Mobilerun is LLM-agnostic which means you can choose whichever LLM best fits your needs. The interesting part imo is that it works not only on emulators but also on real devices. That matters more than it sounds. Many apps like banking, dating, healthcare, anything with high security can sniff for emulator signals, missing SIMs, or suspicious network properties and quietly degrade.&lt;/p&gt;

&lt;p&gt;Running on a real device with a real SIM and a real residential network means the app behaves the way it would in a user's hand. Mobilerun provides exactly that: persistent, dedicated mobile devices with eSIMs and locality, so the automation runs reliably.&lt;/p&gt;




&lt;h3&gt;
  
  
  Where this actually paid off
&lt;/h3&gt;

&lt;p&gt;A few workflows where this approach has beaten either an API integration or traditional UI tests for me:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;End-to-end testing of my own app where flows change weekly and I'm tired of fixing selectors. I describe the test in English, and let the agent figure out the taps.&lt;/li&gt;
&lt;li&gt;Account workflow automation at scale: scheduling posts, replying in DMs, managing creator inboxes across dozens of accounts. Long-lived, multi-profile sessions on real devices.&lt;/li&gt;
&lt;li&gt;Turning a native app into a structured data pipeline. If the data lives only inside an app I don't own, an agent that reads the screen and returns JSON is a perfectly reasonable adapter and often the only one available.&lt;/li&gt;
&lt;li&gt;Customer support: WhatsApp Business, Telegram, SMS. I drive them from a SIM that won't get blocked the way a third-party API gateway might.&lt;/li&gt;
&lt;/ul&gt;




&lt;h3&gt;
  
  
  What's the conclusion?
&lt;/h3&gt;

&lt;p&gt;I don't think the no API problem is going away. If anything, it's getting worse as more value moves inside walled mobile apps. What's changed is that I no longer have to choose between a brittle XPath script and giving up.&lt;/p&gt;

&lt;p&gt;Vision capable LLMs plus a properly engineered runtime (a stable a11y tree, a real device, structured output, and a planner that recovers from failure) make UI-driven automation actually production-grade for the first time.&lt;/p&gt;

&lt;p&gt;If you want to try it, pip install mobilerun is the fastest path. The framework is open source, and the cloud is there when you outgrow your laptop.&lt;/p&gt;

</description>
      <category>opensource</category>
      <category>mobile</category>
      <category>ai</category>
      <category>automation</category>
    </item>
    <item>
      <title>I automated my iPhone using this AI agent</title>
      <dc:creator>Priya Negi</dc:creator>
      <pubDate>Thu, 02 Jul 2026 12:31:26 +0000</pubDate>
      <link>https://dev.to/priya_negi_9ffd29931ea408/i-automated-my-iphone-using-this-ai-agent-56pp</link>
      <guid>https://dev.to/priya_negi_9ffd29931ea408/i-automated-my-iphone-using-this-ai-agent-56pp</guid>
      <description>&lt;h1&gt;
  
  
  I automated my iPhone using this AI
&lt;/h1&gt;

&lt;p&gt;I've always envied Android people. Plug in a phone, run a couple of ADB commands, and you've got a bot tapping around your device in minutes. iOS never let me have that. Apple's sandboxing means there's no official way to remotely drive a physical iPhone — so for a long time, "automate my iPhone" just wasn't a sentence I could act on.&lt;/p&gt;

&lt;p&gt;That changed when I found Mobilerun. It lets you connect your own iPhone to the cloud and hand it over to AI agents that tap, type, and navigate apps like a real person would, end to end. I decided to set it up on my own phone and see how far I could get. Here's how it went.&lt;/p&gt;

&lt;h2&gt;
  
  
  What I needed before starting
&lt;/h2&gt;

&lt;p&gt;Before touching any code, I made sure I had:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;A Mobilerun account with a Personal Phone subscription&lt;/li&gt;
&lt;li&gt;A Mac with Xcode installed&lt;/li&gt;
&lt;li&gt;My iPhone, connected via USB&lt;/li&gt;
&lt;li&gt;An Apple ID with signing capability (a free personal team works fine)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;One thing worth knowing upfront: with a free Apple ID, builds expire after 7 days, so you'll need to rebuild and re-trust periodically, and you can only sign for 3 devices at a time. A paid Apple Developer account ($99/year) removes both limits. I started with my free Apple ID just to test the waters.&lt;/p&gt;

&lt;h2&gt;
  
  
  How this actually works under the hood
&lt;/h2&gt;

&lt;p&gt;Mobilerun controls the iPhone through WebDriverAgent (WDA), an open-source project that exposes input injection and screenshots on iOS. Mobilerun maintains its own fork of it, tuned for higher-quality streaming, lower-latency accessibility tree fetching, and faster touch input. The idea is simple: I build WDA onto my iPhone once with Xcode, and then a CLI tool called mobilerun-ios opens a WebSocket connection to Mobilerun's cloud and keeps my device online.&lt;/p&gt;

&lt;p&gt;Once I understood that, the rest of the setup made a lot more sense. Here's exactly what I did.&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 1: Turning on Developer Mode
&lt;/h2&gt;

&lt;p&gt;Developer Mode is what lets Xcode install and launch development builds on the iPhone. I went to Settings → Privacy &amp;amp; Security → Developer Mode, toggled it on, and restarted the phone when prompted. After reboot, I confirmed the change and I was set.&lt;/p&gt;

&lt;p&gt;One gotcha: if you don't see the Developer Mode entry at all, it's because your iPhone hasn't been connected to a Mac running Xcode yet. Plug it in, open Xcode once, and the option should appear.&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 2: Configuring the iPhone to stay connected
&lt;/h2&gt;

&lt;p&gt;A Personal Phone is meant to stay online for hours or even days, so I had to change three settings that make the difference between a connection that survives and one that needs constant babysitting.&lt;/p&gt;

&lt;p&gt;First, I disabled Auto-Lock. If the iPhone locks, the screen goes black and the session drops offline — so I set Settings → Display &amp;amp; Brightness → Auto-Lock to Never.&lt;/p&gt;

&lt;p&gt;Second, I turned on automatic time zone under Settings → General → Date &amp;amp; Time → Set Automatically. This keeps the device's time zone in sync with its simulated location; setting it manually just doesn't work on non-jailbroken devices.&lt;/p&gt;

&lt;p&gt;Third — and this one I thought hard about — I removed the passcode. WDA's host session occasionally crashes or expires, and Mobilerun restarts it automatically, but only if there's no passcode in the way. Otherwise the relaunched session lands on the lock screen and just sits there until someone manually unlocks it. Since I wanted this phone to run unattended, I turned off the passcode under Settings → Face ID &amp;amp; Passcode → Turn Passcode Off.&lt;/p&gt;

&lt;p&gt;I want to flag this clearly: removing the passcode disables Face ID, Apple Pay, and some iCloud features. I used a dedicated automation phone for this, not my daily driver, and I'd recommend the same to anyone trying this.&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 3: Building and installing WebDriverAgent
&lt;/h2&gt;

&lt;p&gt;This was, by far, the trickiest part of the whole process — and most connection problems I hit later traced straight back to signing or trust issues here. I took it slow.&lt;/p&gt;

&lt;p&gt;I cloned Mobilerun's WDA fork:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;git clone &lt;span class="nt"&gt;--branch&lt;/span&gt; v1.1.0 https://github.com/droidrun/WebDriverAgent
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;(The upstream Appium WebDriverAgent also works, but with higher latency and lower streaming FPS, so I stuck with Mobilerun's fork.)&lt;/p&gt;

&lt;p&gt;Then I:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Opened WebDriverAgent.xcodeproj in Xcode&lt;/li&gt;
&lt;li&gt;Selected my connected iPhone as the run destination&lt;/li&gt;
&lt;li&gt;Chose the WebDriverAgentRunner scheme&lt;/li&gt;
&lt;li&gt;For both the WebDriverAgentRunner and WebDriverAgentBroadcast targets, opened Signing &amp;amp; Capabilities, ticked Automatically manage signing, and picked my Apple ID / Team (WebDriverAgentBroadcast is the extension that enables high-FPS screen streaming — skipping it fails the build, so don't skip it)&lt;/li&gt;
&lt;li&gt;Pressed Cmd+U to build-for-testing&lt;/li&gt;
&lt;li&gt;On the iPhone, trusted the certificate under Settings → General → VPN &amp;amp; Device Management → tapped my team → Trust&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;I ran into both of the classic snags here. First, "Failed to register bundle identifier" — bundle IDs have to be unique per Apple ID, so I appended a suffix to the runner's ID (like com.facebook.WebDriverAgentRunner.) and mirrored it in the extension as com.facebook.WebDriverAgentRunner..xctrunner.broadcast. Second, "Could not launch WebDriverAgentRunner" on my first Cmd+U — this just meant the certificate wasn't trusted yet. I trusted it on the device and pressed Cmd+U again, and it went through.&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 4: Installing the mobilerun-ios CLI
&lt;/h2&gt;

&lt;p&gt;With WDA built, I installed the CLI. Homebrew was the easiest route for me:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;brew &lt;span class="nb"&gt;install &lt;/span&gt;droidrun/tap/mobilerun-ios
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;There's also a curl install if you'd rather skip Homebrew:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;curl &lt;span class="nt"&gt;-fsSL&lt;/span&gt; https://media.mobilerun.ai/releases/mobilerun-ios/install.sh | sh
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;I confirmed it installed correctly with:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;mobilerun-ios &lt;span class="nt"&gt;--version&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Step 5: Logging in
&lt;/h2&gt;

&lt;p&gt;Next:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;mobilerun-ios login
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The CLI printed a short code and opened a verification page in my browser. I approved it there, then confirmed everything worked with mobilerun-ios whoami.&lt;/p&gt;

&lt;p&gt;If you're setting this up in CI or a headless environment, you can skip the browser flow entirely and use an API key instead:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;export &lt;/span&gt;&lt;span class="nv"&gt;MOBILERUN_IOS_TOKEN&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;dr_sk_your_api_key
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Step 6: Connecting the iPhone
&lt;/h2&gt;

&lt;p&gt;With my iPhone plugged in and unlocked, I listed available devices:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;mobilerun-ios list
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Which showed something like:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;UDID                                      NAME             TYPE    OS     STATE    PORTAL
00008020-001A2B3C4D5E6F70                 My iPhone        real    18.2   ready    —
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;I copied the UDID and started the connection:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;mobilerun-ios 00008020-001A2B3C4D5E6F70
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Leaving the UDID off would connect every attached iPhone instead. The command keeps the device online for as long as it keeps running — Ctrl+C ends the session. For a setup I wanted to leave running in the background, I used the detach flag instead:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;mobilerun-ios &lt;span class="nt"&gt;-d&lt;/span&gt; 00008020-001A2B3C4D5E6F70
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This printed a PID and a log path, then exited cleanly. I could stop it later with mobilerun-ios stop.&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 7: Running my first task
&lt;/h2&gt;

&lt;p&gt;I opened the Devices page in the Mobilerun dashboard, and there it was — my iPhone, showing up as a connected Personal Phone. From there I went into the Playground, selected my device, and kicked off a task to confirm everything worked end to end. It did. My iPhone was now something an AI agent could actually drive, from anywhere.&lt;/p&gt;

&lt;h2&gt;
  
  
  Problems I hit (and how I fixed them)
&lt;/h2&gt;

&lt;p&gt;A few things tripped me up along the way, so I'm listing them here in case they help:&lt;/p&gt;

&lt;p&gt;WebDriverAgentRunner crashing on launch usually meant I needed to re-sign the runner target in Xcode and confirm the certificate was trusted before hitting Cmd+U again.&lt;/p&gt;

&lt;p&gt;When mobilerun-ios list showed no devices, it was almost always one of three things: the cable was charge-only instead of a proper data cable, the iPhone was locked, or I hadn't accepted the "Trust This Computer" prompt.&lt;/p&gt;

&lt;p&gt;Auth failures were solved by re-running mobilerun-ios login, or, for API keys, double-checking that MOBILERUN_IOS_TOKEN was actually exported in the same shell I was working in.&lt;/p&gt;

&lt;p&gt;If the screen went black mid-session, it was Auto-Lock creeping back on — setting it back to Never fixed it every time.&lt;/p&gt;

&lt;p&gt;And if the connection dropped after several hours and the device just sat on the lock screen, it meant the WDA session had restarted but a passcode was blocking it. Unlocking manually solved it in the moment; removing the passcode solved it for good on an unattended setup.&lt;/p&gt;

&lt;p&gt;One more thing worth knowing: dumping TikTok's accessibility tree times out and crashes the automation session, so I've been avoiding TikTok tasks for now.&lt;/p&gt;

&lt;h2&gt;
  
  
  What I took away from this
&lt;/h2&gt;

&lt;p&gt;Going from a stock iPhone to a cloud-connected automation device took Developer Mode, one Xcode build of WebDriverAgent, and a single CLI command. The Xcode signing step ate up the most time and patience, but it's a one-time cost — or a once-a-week one, if you're running on a free Apple ID like I was.&lt;/p&gt;

&lt;p&gt;If you want to go deeper, Mobilerun's full documentation on connecting an iPhone is here: &lt;a href="https://docs.mobilerun.ai/guides/connect-iphone" rel="noopener noreferrer"&gt;docs.mobilerun.ai/guides/connect-iphone&lt;/a&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>ios</category>
      <category>mobile</category>
      <category>automation</category>
    </item>
    <item>
      <title>Browserbase vs Mobilerun :Detailed comparison</title>
      <dc:creator>Priya Negi</dc:creator>
      <pubDate>Thu, 02 Jul 2026 11:43:04 +0000</pubDate>
      <link>https://dev.to/priya_negi_9ffd29931ea408/browserbase-vs-mobilerundetailed-comparison-530k</link>
      <guid>https://dev.to/priya_negi_9ffd29931ea408/browserbase-vs-mobilerundetailed-comparison-530k</guid>
      <description>&lt;p&gt;If you're building AI agents or automation pipelines, you'll eventually hit a fork in the road: do you need to automate a browser, or do you need to automate a device? Browserbase and Mobilerun sit on opposite sides of that fork. The simplest way to hold the difference in your head is this: Browserbase gives an AI agent a browser. Mobilerun gives an AI agent an entire phone. That sounds like a small distinction, but architecturally the two are solving very different problems.&lt;/p&gt;

&lt;p&gt;Here's how each works, where they shine, and how to choose.&lt;/p&gt;

&lt;h2&gt;
  
  
  What is Browserbase?
&lt;/h2&gt;

&lt;p&gt;Browserbase is a complete platform for building and deploying agents that browse and interact with the web like humans. A single API key gives your agent six capabilities: cloud Browsers, Search, Fetch (page retrieval as clean markdown), Functions (deploy agents next to the browser), a Model Gateway (access major LLMs through one endpoint), and Agent Identity (getting past bot detection, CAPTCHAs, and auth walls). It's positioned as one platform replacing 5+ vendors, with one bill and one debugger.&lt;/p&gt;

&lt;h2&gt;
  
  
  What Browserbase provides
&lt;/h2&gt;

&lt;p&gt;Cloud browsers. Every POST /session launches an isolated Chrome with a fresh profile and a remote debugging endpoint your automation connects to.&lt;/p&gt;

&lt;p&gt;Session management. Each session has its own cookies, local storage, and IP. State can be reused across sessions via Contexts, or discarded.&lt;/p&gt;

&lt;p&gt;Framework compatibility. Works with Playwright, Puppeteer, and Selenium with minimal code changes. Browserbase also makes its own AI-native SDK, Stagehand (natural-language selectors, self-healing actions), which it recommends as the default for agent workflows.&lt;/p&gt;

&lt;p&gt;Recordings. Every session is automatically recorded (via rrweb) - clicks, navigation, console logs - invaluable for debugging agents.&lt;/p&gt;

&lt;p&gt;Screenshots and artifacts. Stores screenshots, page HTML, and network logs to diagnose failures.&lt;/p&gt;

&lt;p&gt;Proxy support. Configure residential or datacenter proxies per session without managing them yourself.&lt;/p&gt;

&lt;p&gt;Parallel browsers. Need hundreds of Chrome instances? Create that many sessions through the API; Browserbase handles scheduling, infrastructure, cleanup, and lifecycle.&lt;/p&gt;

&lt;p&gt;Observability. A Session Inspector / Live View layer lets you watch sessions in real time and replay them.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why AI agents use it
&lt;/h2&gt;

&lt;p&gt;For a browser-based agent, the browser is the "hands." An assistant booking a flight might prompt "Go to Expedia," let Browserbase launch Chrome, have Playwright execute actions, observe the page, decide the next action, click Search, and continue. The loop repeats until the task is done.&lt;/p&gt;

&lt;h2&gt;
  
  
  How Browserbase differs from Mobilerun
&lt;/h2&gt;

&lt;p&gt;The biggest distinction is the environment each one automates. Browserbase only ever sees what's inside Chrome. Mobilerun controls the whole mobile device.&lt;/p&gt;

&lt;h2&gt;
  
  
  Browserbase's view of the world
&lt;/h2&gt;

&lt;p&gt;Browserbase runs Chrome in the cloud, so it operates entirely within the browser: HTML, CSS, JavaScript, and the DOM. An agent can click buttons, fill forms, read page content, execute JavaScript, take screenshots, and upload or download files. It cannot install native apps, open WhatsApp, receive an SMS, grant Android permissions, toggle Wi-Fi, open device Settings, or test push notifications - all of that happens at the device/OS level, outside the browser. (For SMS-based 2FA, the workaround is a human in the loop via Session Live View, not Browserbase reading the text itself.)&lt;/p&gt;

&lt;h2&gt;
  
  
  Mobilerun’s view of the world
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://blog.mobilerun.ai/posts/browserbase-vs-mobilerun" rel="noopener noreferrer"&gt;Mobilerun&lt;/a&gt; controls the entire device including the home screen, Chrome, the Play Store, WhatsApp, Settings, Camera, Files, notifications, native apps, and system UI. An agent can move freely between all of them as part of a single workflow.&lt;/p&gt;

&lt;h2&gt;
  
  
  A concrete example
&lt;/h2&gt;

&lt;p&gt;A workflow that crosses app boundaries shows the gap clearly:&lt;/p&gt;

&lt;p&gt;Open Play Store → Install an app → Grant permissions → Open Gmail → Retrieve OTP → Switch back to the app →Verify account → Enable notifications → Parse the screen data&lt;/p&gt;

&lt;p&gt;Browserbase can't run this end to end, because much of it happens outside Chrome. Mobilerun is designed exactly for it.&lt;/p&gt;

&lt;p&gt;By contrast, a typical Browserbase agent stays entirely inside Chrome, opens LinkedIn, searches for a company, extracts employee names, and downloads a CSV. &lt;/p&gt;

&lt;p&gt;Mobilerun agent is device-first, installing TikTok, creating an account, receiving an OTP, complete onboarding, upload a video, switch to Photos, edit media, return to TikTok, and publish, spanning multiple apps.&lt;/p&gt;

&lt;h2&gt;
  
  
  Underlying automation model
&lt;/h2&gt;

&lt;p&gt;Browserbase typically relies on browser automation protocols such as the Chrome DevTools Protocol (CDP), which expose the browser's internal structure i.e. DOM, network events, console logs. &lt;/p&gt;

&lt;p&gt;Mobilerun operates at the mobile device level. Rather than being limited to a browser's DOM, it interacts with the rendered UI across native apps, web views, and system screens, letting an agent automate complete mobile experiences.&lt;/p&gt;

&lt;h2&gt;
  
  
  Scaling
&lt;/h2&gt;

&lt;p&gt;Both platforms are built for many concurrent sessions, but they scale different resources. Browserbase scales hundreds or thousands of browser instances. Mobilerun scales fleets of real mobile devices or cloud-connected phones.&lt;/p&gt;

&lt;h2&gt;
  
  
  When to use which
&lt;/h2&gt;

&lt;p&gt;Choose Browserbase when your workflow lives entirely in a web browser: large-scale web scraping, browser-based AI agents, end-to-end web testing, form automation, data extraction, or browser workflows that need to scale across many concurrent sessions.&lt;/p&gt;

&lt;p&gt;Choose Mobilerun when you need to automate Android or iPhone apps, your workflow crosses multiple apps, you need device features like notifications, permissions, camera, or file storage, or you're testing and operating mobile apps end to end.&lt;/p&gt;

&lt;p&gt;If your automation needs to touch native mobile apps, device settings, notifications, cameras, GPS, or other operating-system features, a mobile automation platform is the better fit.&lt;/p&gt;

&lt;h2&gt;
  
  
  Can they complement each other?
&lt;/h2&gt;

&lt;p&gt;Yes. They're more complementary than competitive, unless the task is strictly browser automation. In some architectures they handle different parts of the same workflow. A backend AI agent might use Browserbase to gather information from websites while Mobilerun handles the mobile portion: installing an app, signing in with an OTP, validating push notifications, or completing an in-app purchase flow.&lt;/p&gt;

&lt;p&gt;The takeaway is the one we started with. Browserbase gives your agent a browser; Mobilerun gives it a phone. Pick based on where the work actually happens.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>BrowserStack vs Mobilerun</title>
      <dc:creator>Priya Negi</dc:creator>
      <pubDate>Thu, 25 Jun 2026 06:29:08 +0000</pubDate>
      <link>https://dev.to/priya_negi_9ffd29931ea408/browserstack-vs-mobilerun-4a74</link>
      <guid>https://dev.to/priya_negi_9ffd29931ea408/browserstack-vs-mobilerun-4a74</guid>
      <description>&lt;p&gt;At first glance, BrowserStack and Mobilerun can look like similar tools. Both run on real or virtual devices in the cloud, both interact with apps, and both promise to save time wasted on tedious manual work. But put them side by side and you can see they are quite different. One is built to test software. The other is built to operate it.&lt;/p&gt;

&lt;p&gt;Here's a clear breakdown of what each does and when to reach for it.&lt;/p&gt;

&lt;h3&gt;
  
  
  What is BrowserStack?
&lt;/h3&gt;

&lt;p&gt;BrowserStack is a cloud-based software testing platform that lets developers and QA teams test websites and mobile apps across thousands of real devices, browsers, and operating systems. Its core promise is simple: you no longer need to buy and maintain expensive in-house devices.&lt;/p&gt;

&lt;p&gt;The platform's strengths lie mostly in quality assurance. Teams can instantly access a large cloud of real Android and iOS devices, along with desktop browsers, to verify that their applications behave correctly across different environments. &lt;/p&gt;

&lt;p&gt;Developers can manually interact with apps to validate user experiences, while automated test suites built with tools such as Selenium, Playwright, Cypress, and Appium can be executed at scale. BrowserStack also provides visual testing, accessibility testing, performance testing, and integrations with CI/CD pipelines so issues can be caught before software reaches production.&lt;/p&gt;

&lt;p&gt;In short, BrowserStack exists to find bugs, compatibility issues, performance bottlenecks, and accessibility problems before real users ever see them.&lt;/p&gt;

&lt;h3&gt;
  
  
  What is Mobilerun?
&lt;/h3&gt;

&lt;p&gt;Mobilerun is built for AI-driven task execution and automation. Instead of testing an app's code, it gives an AI agent a virtual phone that it can use to open apps, understand what is happening on the screen, and carry out tasks the way a human would.&lt;/p&gt;

&lt;p&gt;The key difference is how the work gets done. With Mobilerun, instead of writing scripts that define every action in advance, you describe the goal in plain English, invoke it through an API, or integrate it into a larger agent workflow. The AI then interprets the interface and determines what actions it needs to take in order to accomplish the objective.&lt;/p&gt;

&lt;p&gt;This makes it suitable for operational workflows such as collecting data from mobile-only apps, managing social media accounts, monitoring marketplace listings, completing forms, onboarding customers, or carrying out repetitive tasks that span multiple applications. The goal is not to verify that software behaves correctly. The goal is to get useful work done.&lt;/p&gt;

&lt;h3&gt;
  
  
  Why not just automate the website?
&lt;/h3&gt;

&lt;p&gt;A common question is why mobile automation is necessary when browser automation tools already exist.&lt;/p&gt;

&lt;p&gt;The answer is that many modern businesses are increasingly mobile-first. Platforms such as Instagram, TikTok, ride-sharing apps, delivery apps, banking apps, and various marketplaces often release features in their mobile apps before making them available elsewhere. In some cases, the web version offers limited functionality, while in others there may be no public API available at all.&lt;/p&gt;

&lt;p&gt;As a result, important workflows often exist exclusively inside mobile applications. Traditional browser automation excels when a workflow is available on a website, but it cannot always access mobile-only experiences. Mobilerun addresses this gap by allowing AI agents to operate directly inside mobile environments.&lt;/p&gt;

&lt;h3&gt;
  
  
  API Automation vs UI Automation
&lt;/h3&gt;

&lt;p&gt;Traditional automation works best when software exposes APIs. APIs provide structured access to data and actions, making them highly reliable and efficient for developers.&lt;/p&gt;

&lt;p&gt;The challenge is that many real-world workflows involve systems with incomplete APIs, restricted APIs, or no APIs at all. Sometimes the only way to perform a task is through the user interface itself.&lt;/p&gt;

&lt;p&gt;Mobilerun approaches automation from the UI layer. Instead of requiring backend access, an AI agent can observe the screen, interpret the current state of the application, and interact with buttons, forms, menus, and other interface elements much like a human user would. This allows automation to be applied even in environments where traditional integrations are unavailable.&lt;/p&gt;

&lt;h2&gt;
  
  
  How the Two Differ
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Core Purpose
&lt;/h3&gt;

&lt;p&gt;BrowserStack is fundamentally a QA platform. Its purpose is to help engineering teams verify that software behaves correctly before release. Teams use it to identify bugs, validate compatibility across devices and browsers, test accessibility requirements, and ensure new code changes do not introduce regressions.&lt;/p&gt;

&lt;p&gt;Mobilerun serves a different purpose. Rather than validating software, it uses the software as a real human would. It gives AI agents the ability to perform tasks within applications and complete workflows that would otherwise require human interaction.&lt;/p&gt;

&lt;h3&gt;
  
  
  How Automation is Driven
&lt;/h3&gt;

&lt;p&gt;BrowserStack automation relies on predefined test scripts and element locators. Engineers explicitly define what actions should occur and what outcomes should be verified. While this approach is highly reliable for testing, changes to an application's structure, identifiers, or workflow often require updates to the automation scripts.&lt;/p&gt;

&lt;p&gt;Mobilerun uses AI agents that combine vision, reasoning, and tool use. Instead of following a rigid sequence of instructions, the agent evaluates what it sees on the screen and decides what action should happen next. This allows it to adapt more naturally when interfaces evolve or workflows change.&lt;/p&gt;

&lt;h3&gt;
  
  
  Cross-App Capabilities
&lt;/h3&gt;

&lt;p&gt;BrowserStack is designed to validate application behavior. While test automation can involve multiple browsers, devices, or applications, the objective remains verification and testing.&lt;/p&gt;

&lt;p&gt;Mobilerun is designed around completing operational workflows. An agent can move between applications when necessary, carrying information from one app to another. For example, it could open a banking application, retrieve an OTP from a messaging app, return to the banking app, and complete the transaction. These types of workflows mirror how people actually use mobile devices in everyday operations.&lt;/p&gt;

&lt;h3&gt;
  
  
  Example: Booking a Hotel
&lt;/h3&gt;

&lt;p&gt;A simple hotel-booking scenario highlights the distinction.&lt;/p&gt;

&lt;p&gt;If you were using BrowserStack, the goal would be to verify that the hotel application works correctly. A QA engineer might test whether search results load properly, whether room listings appear as expected, whether forms accept input correctly, and whether checkout completes without errors. Success is measured by whether the application behaves as intended.&lt;/p&gt;

&lt;p&gt;With Mobilerun, the QA engineer can do the same but in an automated way. Instead of testing the booking flow, an AI agent would use the application to accomplish a real outcome. It might search for hotels in Goa, compare available options, choose one based on specified criteria, and complete the booking process. Success is measured by whether the task gets completed.&lt;/p&gt;

&lt;p&gt;The same application is involved in both scenarios, but the objective is fundamentally different.&lt;/p&gt;

&lt;h2&gt;
  
  
  Side-by-Side Comparison
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fo9dg54u7ln7s228a3cfz.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fo9dg54u7ln7s228a3cfz.png" alt=" " width="800" height="533"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Where Each Shines
&lt;/h2&gt;

&lt;p&gt;BrowserStack is strongest when QA is the main direction. It provides broad device coverage, mature testing frameworks, visual regression testing, accessibility validation, and performance testing capabilities. For teams preparing software releases, these capabilities make it an essential part of the development lifecycle.&lt;/p&gt;

&lt;p&gt;Mobilerun shines when the objective is automation rather than manual validation. It is particularly useful for mobile-first workflows, cross-app operations, app-based data collection, and AI agents that need to interact with applications as part of larger business processes. It enables automation in environments where traditional APIs or browser-based approaches are insufficient.&lt;/p&gt;

&lt;p&gt;Neither platform is intended to replace the other. BrowserStack is not designed to run business operations, and Mobilerun is not designed to replace comprehensive and deterministic QA testing frameworks.&lt;/p&gt;

&lt;h2&gt;
  
  
  Can They Be Used Together?
&lt;/h2&gt;

&lt;p&gt;In many organizations, the two tools could be complementary rather than competitive.&lt;/p&gt;

&lt;p&gt;A development team might use BrowserStack before release to ensure an application works correctly across devices and operating systems. After the application is live, the same organization could use Mobilerun to automate workflows inside that application, allowing AI agents to perform operational tasks on behalf of users or internal teams. The same organisation can use automated AI workflows to test the app before every minor release or update assisting QA engineers.&lt;/p&gt;

&lt;p&gt;One helps ensure the software is reliable. The other helps put the software to work.&lt;/p&gt;

&lt;h2&gt;
  
  
  Which One Do You Need?
&lt;/h2&gt;

&lt;p&gt;Reach for BrowserStack when your goal is a traditional QA. If you are shipping a release and need to verify that your application behaves correctly across browsers, devices, and operating systems, BrowserStack is built for that purpose.&lt;/p&gt;

&lt;p&gt;Reach for Mobilerun when your goal is getting work done inside applications or to create automatic QA flow that will assist your QA engineers in their work. If you want an AI agent to complete tasks, automate workflows, move across multiple apps, and operate within mobile-first environments, Mobilerun is the better fit.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>webdev</category>
      <category>programming</category>
      <category>automaton</category>
    </item>
  </channel>
</rss>
