droidrun
AI Agents & AssistantsAn open‑source framework that lets LLM agents control Android and iOS devices via CLI or Python
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 →Bug fix release. - restore Android full portal state fetching - bump version to 0.5.7
- iOS portal is expected to honor the caller-provided /state timeout budget
- Android state fetching behavior is unchanged
- Removed automatic client-side retry logic for iOS state fetching; Droidrun now makes a single 4-second request attempt
- 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
/statetimeout budget - Android state fetching behavior is unchanged
- iOS portal state: use `/state` endpoint instead of removed `/state_full`
- iOS `open_app` now requires exact bundle identifiers
- iOS `/state_full` endpoint removed
- 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
/stateendpoint - 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_appnow opens apps by exact bundle identifier - CLI iOS commands can auto-discover the portal when
--deviceis omitted - Portal state retrieval now uses
/stateinstead 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.