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](https://droidrun.ai/benchmark)
## 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
```bash
pip install 'droidrun[google,anthropic,openai,deepseek,ollama,dev]'
```
## 🚀 Quickstart
Read on how to get droidrun up and running within seconds in [our docs](https://docs.droidrun.ai/v3/quickstart)!
[](https://www.youtube.com/watch?v=4WT7FXJah2I)
## 🎬 Demo Videos
1. **Accommodation booking**: Let Droidrun search for an apartment for you
[](https://youtu.be/VUpCyq1PSXw)
2. **Trend Hunter**: Let Droidrun hunt down trending posts
[](https://youtu.be/7V8S2f8PnkQ)
3. **Streak Saver**: Let Droidrun save your streak on your favorite language learning app
[](https://youtu.be/B5q2B467HKw)
## 💡 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.
```bash
bandit -r droidrun
```
2. **Safety**: A tool to check your installed dependencies for known security vulnerabilities.
```bash
safety scan
```