New mobilerun VA is now in beta, a hosted 24/7 agent for mobile automation
Open Source · Core

Script devices directly. No LLM.

mobilerun-core is the deterministic layer under the agents. A single, synchronous interface drives a real device from your own code, so every step runs the same way twice. Open source, Apache-2.0, one pip install away.

install pip install mobilerun-core
control no LLM, you script it
runs cloud or local
safety human-in-the-loop gate
Write the script

You write the steps. They repeat.

One synchronous interface, the same code for a cloud phone or a local one. No model deciding what happens next.

script.py
from mobilerun_core import Mobilerun

m = Mobilerun()
device = m.connect("dev_...", backend="cloud")   # or a local phone

device.start_app("com.example.shop")
device.tap_text("Sign in")
device.scroll_until(text="Checkout")
device.tap_text("Checkout")

One interface, cloud or local

  • A single, synchronous Mobilerun() object drives every device
  • Connect by cloud id, a local Android over ADB, or a Portal HTTP URL
  • The same script runs against a real device in the cloud or on your desk
  • High-level actions: tap_text, scroll_until, wait_for_app, screenshot

Deterministic, and safe

  • No model in the loop, you write the steps and they repeat exactly
  • High-level actions sit on lower-level verbs you can reach for directly
  • Destructive actions route through a callback you control, denied by default
  • Structured errors: UnsupportedOperation names the verb, the backend and an alternative
FAQ

Core, common questions.

What is mobilerun-core?+
An open-source Python library for driving real devices from code. Install it with pip install mobilerun-core. It is Apache-2.0, runs no LLM, and you write the script yourself.
How is Core different from the framework?+
The framework runs LLM agents that decide what to do. Core is the deterministic layer under it: you write the exact steps and they run the same way every time. Same real devices, no model in the loop.
Does the same code work on local and cloud devices?+
Yes. One synchronous Mobilerun() interface connects to a cloud device by id, a local Android over ADB, or a Portal HTTP URL. The same script targets a real device in the cloud or on your desk.
What stops a script from doing damage?+
A human-in-the-loop gate. Destructive actions like uninstall_app route through a callback you control and are denied by default, so nothing irreversible happens without your say.

More of the platform: the agent framework · hosted agents · Core on GitHub

Read the code. Script the phone.

mobilerun-core is open source and Apache-2.0. Install it with pip install mobilerun-core, or read the code before you commit a line.