一周狂揽1.3k星!火爆全网能控制安卓机器的 Agent 开源了,什么 RPA 、什么小红书,统统拿下!
大家好,我是每天给推荐优秀开源项目的小G,今天推荐的是一款能控制安卓机器的 Agent。
可以用LLM通过自然语言命令控制你的Android手机你可以用它帮你社交媒体自动化,比如,打开X,并发布“Hello World”;或者“打开微信,给张三发消息说晚上一起吃饭”;或做自动化测试等
废话不多说,先看下视频,来直观感受它的强大!
下面开始正式介绍该项目
项目简介
DroidRun 是一个强大的框架,通过LLM代理控制 Android 设备。它允许您使用自然语言命令自动化 Android 设备交互。其主要有以下特点
- 使用自然语言命令控制 Android 设备
- 支持多个LLM提供商(OpenAI、Anthropic、Gemini)
- 使用简单
- 可扩展的 Python API,用于自定义自动化
- 屏幕截图分析,以视觉理解设备
下面看下如何安装使用起来!
在安装前,我们需要做一些准备工作
📋 前提条件
- 通过 USB 或 ADB over TCP/IP 连接的 Android 设备
- ADB(Android 调试桥接)已安装并配置
- DroidRun Portal 应用已安装到您的 Android 设备上
- 至少一个支持的服务提供商的 API 密钥:
- OpenAI
- Anthropic
- Google Gemini
🔧 设置 ADB
ADB(Android 调试桥)是 DroidRun 与您的 Android 设备通信所必需的:
- Install ADB: 安装 ADB:
- Windows:下载 Android SDK 平台工具并解压 ZIP 文件
- macOS:
brew install android-platform-tools - Linux: sudo apt install adb (Ubuntu/Debian) 或
sudo pacman -S android-tools(Arch)
- Add ADB to your PATH:
将 ADB 添加到您的 PATH:- Windows: 将提取的平台-tools 文件夹路径添加到系统 PATH 环境变量中
- macOS/Linux:将以下内容添加到您的 \~/.bashrc 或 \~/.zshrc 文件中:
export PATH=$PATH:/path/to/platform-tools
验证 ADB 安装:
adb version
- 在您的 Android 设备上启用 USB 调试:
- 前往 设置 → 关于手机
- 连续点击 7 次“构建号”以启用开发者选项
- 前往设置 → 系统→ 开发者选项(位置可能因设备而异)
- Enable USB debugging 启用 USB 调试
有了上述准备,我们就可以很轻松的安装部署了!
📦 安装
🚀 选项 1:从 PyPI 安装(推荐)
pip install droidrun
🔧 选项 2:从源代码安装
git clone https://github.com/droidrun/droidrun.git cd droidrun pip install -e .
🛠️ 设置
📱 1. 安装 DroidRun 门户应用
DroidRun 需要您在 Android 设备上安装 DroidRun 门户应用:
- 从 DroidRun 门户仓库下载 DroidRun 门户 APK
- 使用 DroidRun 安装门户应用:
droidrun setup --path=/path/to/droidrun-portal.apk
另外,您也可以使用 ADB 手动安装:
adb install -r /path/to/droidrun-portal.apk
🔑 2. 设置 API 密钥
在您的当前工作目录中创建一个 .env 文件或设置环境变量:
# Choose at least one of these based on your preferred provider export OPENAI_API_KEY="your_openai_api_key_here" export ANTHROPIC_API_KEY="your_anthropic_api_key_here" export GEMINI_API_KEY="your_gemini_api_key_here"
从文件 .env 中加载环境变量:
source .env
手机 3. 连接到安卓设备
通过 USB 连接您的设备或设置无线 ADB:
# List connected devices droidrun devices # Connect to a device over Wi-Fi droidrun connect 192.168.1.100
🔄 4. 验证设置
验证一切设置是否正确:
# Should list your connected device and show portal status droidrun status
💻 使用命令行界面
DroidRun 的命令行界面设计得简单直观。您可以使用两种方式:
🚀 基本用法
# Format: droidrun "task description" [options] droidrun "Open the settings app"
🔌 使用提供者选项
# Using OpenAI droidrun "Open the calculator app" --provider openai --model gpt-4o-mini # Using Anthropic droidrun "Check the battery level" --provider anthropic --model claude-3-sonnet-20240229 # Using Gemini droidrun "Install and open Instagram" --provider gemini --model gemini-2.0-flash
⚙️ 其他选项
# Specify a particular device droidrun "Open Chrome and search for weather" --device abc123 # Set maximum number of steps droidrun "Open settings and enable dark mode" --steps 20
📝 创建一个最小测试脚本
如果您想在 Python 代码中使用 DroidRun 而不是通过 CLI,您可以创建一个最小测试脚本:
#!/usr/bin/env python3 import asyncio import os from droidrun.agent.react_agent import ReActAgent from droidrun.agent.llm_reasoning import LLMReasoner from dotenv import load_dotenv # Load environment variables from .env file load_dotenv() async def main(): # Create an LLM instance (choose your preferred provider) llm = LLMReasoner( llm_provider="gemini", # Can be "openai", "anthropic", or "gemini" model_name="gemini-2.0-flash", # Choose appropriate model for your provider api_key=os.environ.get("GEMINI_API_KEY"), # Get API key from environment temperature=0.2 ) # Create and run the agent agent = ReActAgent( task="Open the Settings app and check the Android version", llm=llm ) steps = await agent.run() print(f"Execution completed with {len(steps)} steps") if __name__ == "__main__": asyncio.run(main())
保存为 test_droidrun.py ,确保你的 .env 文件有适当的 API 密钥,然后运行:
python test_droidrun.py
项目链接
扫码加入技术交流群,备注「开发语言-城市-昵称」
(文:GitHubStore)
一周狂揽1.3k星!火爆全网能控制安卓机器的 Agent 开源了,什么 RPA 、什么小红书,统统拿下!最先出现在每时AI。