Skip to content

droidrun

AI Agents & Assistants

An open‑source framework that lets LLM agents control Android and iOS devices via CLI or Python

Python Latest v0.6.2 · 6h ago Security brief →

Features

  • Control Android & iOS devices with natural‑language commands
  • CLI, TUI, Docker, and Python API for automation workflows
  • Integrates major LLM providers (OpenAI, Anthropic, Gemini, Ollama, etc.)
  • Reasoning mode for multi‑step complex automations
  • Capture UI state via accessibility trees and screenshots

Recent releases

View all 42 releases →
No immediate action
v0.6.1 Bug fix

Anthropic OAuth fixes

v0.5.7 Bugfix

Bug fix release. - restore Android full portal state fetching - bump version to 0.5.7

v0.5.6 Breaking risk
⚠ Upgrade required
  • iOS portal is expected to honor the caller-provided /state timeout budget
  • Android state fetching behavior is unchanged
Breaking changes
  • Removed automatic client-side retry logic for iOS state fetching; Droidrun now makes a single 4-second request attempt
Notable features
  • iOS state requests now use single 4-second timeout via GET /state?timeout=4 parameter
Full changelog

v0.5.6 tightens iOS state fetching by switching Droidrun to a single 4-second /state request with no client-side retry.

Highlights

  • Droidrun now requests iOS state with GET /state?timeout=4
  • iOS state fetches use a single 4-second budget instead of retrying
  • Reduced long-tail delays when the iOS UI is loading or transitioning
  • Updated iOS driver documentation to reflect the new timeout behavior

Behavior Changes

  • iOS state retrieval is now one attempt only; Droidrun no longer retries on the client side
  • The iOS portal is expected to honor the caller-provided /state timeout budget
  • Android state fetching behavior is unchanged
v0.5.5 Breaking risk
⚠ Upgrade required
  • iOS portal state: use `/state` endpoint instead of removed `/state_full`
Breaking changes
  • iOS `open_app` now requires exact bundle identifiers
  • iOS `/state_full` endpoint removed
Notable features
  • Improved iOS accessibility tree parsing and screen-state normalization
  • iOS text input now supports `clear=True` parameter
  • Localhost auto-discovery for iOS portal connections
Full changelog

v0.5.5 improves iOS support across the stack, including better portal discovery, more reliable UI state parsing, and cleaner platform-aware agent behavior.

Highlights

  • Improved iOS portal connection flow with localhost auto-discovery
  • Switched iOS to the unified /state endpoint
  • Better iOS accessibility tree parsing and screen-state normalization
  • iOS text input now supports clear=True
  • Platform-aware prompts and tool registration for Android and iOS
  • Cleaner phone state display when app/package information is missing

Behavior Changes

  • On iOS, open_app now opens apps by exact bundle identifier
  • CLI iOS commands can auto-discover the portal when --device is omitted
  • Portal state retrieval now uses /state instead of /state_full

Documentation

  • Updated iOS setup instructions to reflect the real Xcode UI test workflow
  • Refreshed iOS driver documentation and supported feature list

Internal Improvements

  • Consolidated standard tool registration into a single registry builder
  • Improved state retry logging and telemetry accuracy
  • Propagated platform information through shared agent state and prompts

Weekly OSS security release digest.

The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.

No spam, unsubscribe anytime.

About

Stars
8,462
Forks
892
Languages
Python Jinja Dockerfile

Install & Platforms

Platforms
linux macos windows

Community & Support

Beta — feedback welcome: [email protected]