Open-AutoGLM 是一个强大的手机自动化控制工具,支持通过自然语言指令控制安卓和iOS设备。基于大语言模型,能够理解用户意图并执行相应的手机操作。
- 双平台支持:同时支持安卓和iOS设备
- 自然语言控制:使用自然语言指令控制手机操作
- 多应用支持:支持微信、淘宝、京东、美团等50+款应用
- 智能对话:支持多轮对话模式
- 自动化安装:提供自动化的设备配置和应用安装
- Python 3.10+
- 大语言模型API密钥(智谱AI、魔塔ModelScope或自定义API)
- Android 5.0+
- 已启用USB调试
- 已安装ADB工具
- macOS系统
- Xcode 14+
- Apple开发者账号
- 已配置WebDriverAgent
git clone https://github.com/your-username/Open-AutoGLM-Setup.git
cd Open-AutoGLM-Setup# 自动初始化子模块和下载ADBKeyboard
./init_project.sh
# 或者手动初始化
git submodule update --init --recursive
./download_adbkeyboard.shcd Open-AutoGLM
pip install -r requirements.txt
cd ..cp ../.env.example ../.env
# 编辑.env文件,配置API密钥和设备信息-
启用USB调试
- 设置 → 关于手机 → 连续点击版本号7次启用开发者选项
- 设置 → 开发者选项 → 启用USB调试
-
安装ADB Keyboard
# 下载并安装ADB Keyboard wget https://github.com/senzhk/ADBKeyBoard/releases/download/v2.4-dev/keyboardservice-debug.apk adb install keyboardservice-debug.apk # 启用ADB Keyboard adb shell ime enable com.github.senzhk.ime/.ADBKeyboard adb shell ime set com.github.senzhk.ime/.ADBKeyboard
-
连接设备
# USB连接 adb devices # WiFi连接(可选) adb tcpip 5555 adb connect <设备IP>:5555
-
自动化配置(推荐)
# 首次使用 - 完整配置 ./setup_ios.sh # 后续使用 - 快速启动 ./quick_start_ios.sh
-
手动配置
- 克隆WebDriverAgent:
git clone https://github.com/appium/WebDriverAgent.git - 在Xcode中打开WebDriverAgent.xcodeproj
- 配置开发者账号签名
- 修改Bundle ID为唯一标识符
- 部署到iOS设备
- 克隆WebDriverAgent:
./autoglm_chat.sh支持的交互命令:
platform android/ios- 切换设备平台switch zhipu/modelscope/custom- 切换API服务status- 查看设备状态help- 查看帮助信息
安卓设备:
python3 main.py --device-id <设备ID> \
--base-url <API地址> \
--model <模型名称> \
--apikey <API密钥> \
"您的指令"iOS设备:
python3 ios.py --device-id <设备UDID> \
--base-url <API地址> \
--model <模型名称> \
--api-key <API密钥> \
--wda-url http://localhost:8100 \
"您的指令"创建.env文件并配置以下参数:
# 平台选择
PHONE_AGENT_PLATFORM=android # 或 ios
# 安卓设备配置
PHONE_AGENT_DEVICE_ID=192.168.20.33:5555
# iOS设备配置
# PHONE_AGENT_PLATFORM=ios
# PHONE_AGENT_DEVICE_ID=<设备UDID>
# PHONE_AGENT_WDA_URL=http://localhost:8100
# API配置
API_PROVIDER=zhipu # zhipu, modelscope, custom
ZHIPU_API_KEY=<您的智谱API密钥>
ZHIPU_BASE_URL=https://open.bigmodel.cn/api/paas/v4
ZHIPU_MODEL=autoglm-phoneAPI_PROVIDER=zhipu
ZHIPU_API_KEY=<您的API密钥>
ZHIPU_MODEL=autoglm-phoneAPI_PROVIDER=modelscope
MODELSCOPE_API_KEY=<您的API密钥>
MODELSCOPE_MODEL=ZhipuAI/AutoGLM-Phone-9BAPI_PROVIDER=custom
CUSTOM_API_KEY=<您的API密钥>
CUSTOM_BASE_URL=<您的API地址>
CUSTOM_MODEL=<您的模型名称>打开微信
发送消息给张三:你好
搜索"北京天气"
打开淘宝
搜索"手机"
打开美团,搜索附近的餐厅
在京东上搜索"iPhone 15"
打开网易云音乐,播放周杰伦的歌
帮我在淘宝上搜索"运动鞋",筛选价格在200-500之间的,然后收藏前3个商品
打开微信,给工作群发送消息:"今天下午3点开会"
-
设备未连接
- 检查USB调试是否启用
- 确认设备已授权此电脑
- 尝试重新连接USB线
-
ADB Keyboard未工作
- 确认已安装并启用ADB Keyboard
- 检查输入法设置
-
WebDriverAgent未运行
- 运行
./quick_start_ios.sh重新部署 - 检查设备是否信任开发者应用
- 运行
-
端口映射失败
- 确认设备已通过USB连接
- 检查iproxy是否正常运行
-
API密钥无效
- 检查API密钥是否正确
- 确认API服务是否可用
-
请求失败
- 检查网络连接
- 确认API地址是否正确
Open-AutoGLM-Setup/
├── Open-AutoGLM/ # 主要代码库(Git子模块)
│ ├── main.py # 安卓设备控制主程序
│ ├── ios.py # iOS设备控制主程序
│ ├── phone_agent/ # 设备代理模块
│ └── requirements.txt # Python依赖
├── WebDriverAgent/ # iOS WebDriverAgent(Git子模块)
├── autoglm_chat.sh # 多轮对话脚本
├── setup_ios.sh # iOS完整配置脚本
├── quick_start_ios.sh # iOS快速启动脚本
├── init_project.sh # 项目初始化脚本
├── download_adbkeyboard.sh # ADBKeyboard下载脚本
├── .env.example # 环境变量示例
├── .gitignore # Git忽略文件
└── .gitmodules # Git子模块配置
本项目使用Git子模块来管理外部依赖:
- Open-AutoGLM: 核心代码库,包含安卓和iOS控制逻辑
- WebDriverAgent: iOS设备自动化测试框架
更新子模块:
git submodule update --remote --merge欢迎提交Issue和Pull Request!
- Fork 本项目
- 创建特性分支 (
git checkout -b feature/AmazingFeature) - 提交更改 (
git commit -m 'Add some AmazingFeature') - 推送到分支 (
git push origin feature/AmazingFeature) - 开启 Pull Request
本项目采用 MIT 许可证 - 查看 LICENSE 文件了解详情
如果您遇到问题或有建议,请: