Skip to content

mobile-jev

Standalone Android agent on Mobilerun where Jev picks every operation and target, with a live React studio, CLI and traces.

CLIprototypeMIT

Overview

Mobile Jev is a standalone mobile agent from Droidrun that controls a real Android phone through the Mobilerun device cloud, with TypeSafe's Jev making each decision. It includes a live React studio that streams the device and decision telemetry, a CLI, execution traces and request-level latency measurements. No ADB connection is needed.

In the published demo, Jev opens Uber, enters a route from San Francisco Airport to the Golden Gate Bridge and reaches payment selection in about 21 seconds over 9 actions; a completed booking is not shown. A reproducible dark-theme demo has the runner re-read the screen to verify the switch is actually on rather than trusting a DONE answer, and keeps every attempt including failures. It is for developers exploring fast, bounded action selection for phone agents.

What the decision model decides

TypeQuestionAnswers
ChoiceWhich operation to perform next(inferred)—
ChoiceWhich on-screen target to act on(inferred)—

How it works

  1. Observe the device screen through the Mobilerun API.
  2. Ask Jev to choose the next operation and target from bounded options.
  3. Execute the action on the device.
  4. Re-observe and verify the goal state in code before reporting success.

Strengths

  • No ADB or USB connection required.
  • Verification by re-reading the screen instead of trusting the model.
  • Request-level latency and full traces for every run.

Caveats

  • Needs both Mobilerun and TypeSafe API keys; device charges are separate.
  • The Uber demo stops before booking.
  • Tested locally on macOS only.

Getting started

git clone https://github.com/droidrun/mobile-jev.git && cd mobile-jev && corepack enable && pnpm install --frozen-lockfile; add MOBILERUN_API_KEY and TYPESAFE_API_KEY to .env.local, then pnpm dev and open http://127.0.0.1:3040.

At a glance

Type
CLI
Status
prototype
Language
TypeScript
Runtime
Node, React web studio, CLI
Has code
yes
Has tests
yes
License
MIT

Use cases and integrations

How curated lists describe it

  • Mobile agents: puts Jev into on-device screen-aware action selection for the Droidrun loop, with a Jev Studio web app streaming live device and decision telemetry.

    yibie/awesome-jev
  • Android agent on [Mobilerun](https://mobilerun.ai): Jev decides each tap. Opens Uber, SFO → Golden Gate, payment screen in ~21s / 9 actions. Live studio, CLI, and traces. No ADB.

    AnotiaWang/awesome-decision-models
  • Controls an Android phone through Mobilerun, with a web studio and CLI showing Jev decisions.

    logicrw/awesome-jev-projects
  • Android agent using Mobilerun observations and bounded Jev actions; execute mode controls a real device, while the published Uber demo stops before booking.

    cobanov/awesome-jev
  • Standalone Android agent for Mobilerun where Jev makes every decision, with a live React studio and an Uber demo.

    hellogumbo/awesome-jev
  • Android phone automation from DroidRun on its Mobilerun device cloud, with Jev choosing every operation and target. The author reports reaching Uber's payment selection in about 21 seconds.

    MrJev/awesome-jev

Frequently asked questions

What does Jev decide?

Each operation and target the agent uses on the phone.

Do I need a physical phone?

You need an Android device available through Mobilerun, either connected or provisioned there.

How fast is it?

The recorded Uber demo reached payment selection in about 21 seconds for 9 actions.

Related projects

  • Slack-like playground for watching computer-use agents work, with replays, comparable runs and Jev choosing from a menu of visible actions.

    ProjectbetaTypeScript
  • Rust MCP server for desktop control via accessibility trees, with an optional decision model (Jev or compatible) for small choices.

    MCP serverproductionRust
  • macOS menu-bar Swift app that turns on-device transcribed speech into Jev typed decisions and macOS actions, confirming hard-to-undo steps.

    AppbetaSwift
  • Rust CLI for desktop computer use via accessibility trees, with optional jev-desktop scripts letting Jev pick the control and action.

    Agent skillbetaRust
  • macOS computer-use package: a background app driver for any agent, plus a loop where Jev picks each UI action for a bounded subtask.

    ProjectbetaPython
  • Cognitive control layer for OpenCode that uses Jev to compute GO, DELIBERATE, VERIFY or BLOCK for agent actions, observing by default.

    ProjectbetaTypeScript