大家好,我是每天给推荐优秀开源项目的小G,今天推荐的是一款能控制安卓机器的 Agent。
废话不多说,先看下视频,来直观感受它的强大!
下面开始正式介绍该项目
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
项目链接
github:https://github.com/droidrun/droidrun
文档:https://docs.droidrun.ai/introduction
扫码加入技术交流群,备注「开发语言-城市-昵称」
(文:GitHubStore)