Skip to main content

A framework for controlling Android devices through LLM agents

Project description

DroidRun is not affiliated with, endorsed by, or sponsored by Google LLC or the Android Open Source Project. Android™ is a trademark of Google LLC.

DroidRun is a powerful framework for controlling Android and iOS devices through LLM agents. It allows you to automate device interactions using natural language commands. Checkout our benchmark results

⚖️ Disclaimer

Droidrun is an independent, open-source project and is not affiliated with, endorsed by, or sponsored by Google LLC or the Android Open Source Project. "Android" is a trademark of Google LLC. All other trademarks and brand names mentioned are the property of their respective owners. DroidRun is a third-party tool that interacts with the Android platform but is not part of the Android ecosystem.

Why Droidrun?

  • 🤖 Control Android and iOS devices with natural language commands
  • 🔀 Supports multiple LLM providers (OpenAI, Anthropic, Gemini, Ollama, DeepSeek)
  • 🧠 Planning capabilities for complex multi-step tasks
  • 💻 Easy to use CLI with enhanced debugging features
  • 🐍 Extendable Python API for custom automations
  • 📸 Screenshot analysis for visual understanding of the device
  • 🫆 Execution tracing with Arize Phoenix

📦 Installation

Note: Python 3.14 is not currently supported. Please use Python 3.11 – 3.13.

pip install droidrun

🚀 Quickstart

Read on how to get droidrun up and running within seconds in our docs!

Quickstart Video

🎬 Demo Videos

  1. Accommodation booking: Let Droidrun search for an apartment for you

    Droidrun Accommodation Booking Demo


  1. Trend Hunter: Let Droidrun hunt down trending posts

    Droidrun Trend Hunter Demo


  1. Streak Saver: Let Droidrun save your streak on your favorite language learning app

    Droidrun Streak Saver Demo

💡 Example Use Cases

  • Automated UI testing of mobile applications
  • Creating guided workflows for non-technical users
  • Automating repetitive tasks on mobile devices
  • Remote assistance for less technical users
  • Exploring mobile UI with natural language commands

👥 Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

📄 License

This project is licensed under the MIT License - see the LICENSE file for details.

Security Checks

To ensure the security of the codebase, we have integrated security checks using bandit and safety. These tools help identify potential security issues in the code and dependencies.

Running Security Checks

Before submitting any code, please run the following security checks:

  1. Bandit: A tool to find common security issues in Python code.

    bandit -r droidrun
    
  2. Safety: A tool to check your installed dependencies for known security vulnerabilities.

    safety scan
    

Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

droidrun-0.5.1.dev1.tar.gz (708.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

droidrun-0.5.1.dev1-py3-none-any.whl (273.1 kB view details)

Uploaded Python 3

File details

Details for the file droidrun-0.5.1.dev1.tar.gz.

File metadata

  • Download URL: droidrun-0.5.1.dev1.tar.gz
  • Upload date:
  • Size: 708.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for droidrun-0.5.1.dev1.tar.gz
Algorithm Hash digest
SHA256 737d1558dd5f1e3ba4a6ef5976c6a1dce8d54142409df29076eb13e4a3ad90c4
MD5 15a406d2dea6e9dba3e4e2e10e76ee71
BLAKE2b-256 5e92c99617ca69da55fce77aabdd420a40dbb8d9020970b9f06c5754dce3ede3

See more details on using hashes here.

Provenance

The following attestation bundles were made for droidrun-0.5.1.dev1.tar.gz:

Publisher: publish.yml on droidrun/droidrun

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file droidrun-0.5.1.dev1-py3-none-any.whl.

File metadata

  • Download URL: droidrun-0.5.1.dev1-py3-none-any.whl
  • Upload date:
  • Size: 273.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for droidrun-0.5.1.dev1-py3-none-any.whl
Algorithm Hash digest
SHA256 4fe8d6f1f0a6925df6162969dfef2854c6ab3d5360ac8ec7700a15ba8f297346
MD5 2e72af95e765151e05e3c8a0dc4e6e10
BLAKE2b-256 2eb538e471a0f9be5dc69bb82316753dce5694f73c4d68da87fc5ee4dc9567ca

See more details on using hashes here.

Provenance

The following attestation bundles were made for droidrun-0.5.1.dev1-py3-none-any.whl:

Publisher: publish.yml on droidrun/droidrun

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page