"想象一下,你的手机拥有JARVIS级别的智能,只需一句话就能完成任何任务"
PhoneAgent 致力于打造真正的超级AI助理,通过AI赋能提升每个人的效率,让手机成为懂你的智能伙伴。
开车途中
你:嘿小智(自定义唤醒词)
AI:在呢,有什么可以帮你?
你:给老婆发微信说晚点回家
AI:好的,已发送
跑步锻炼
你:嘿小智,播放我的运动歌单
AI:已打开网易云音乐,正在播放
工作忙碌
你:嘿小智,添加明天下午3点的会议提醒
AI:好的,已在日历中添加
日常生活
- 查天气、看新闻、订外卖
- 设置闹钟、记录待办、查快递
- 发消息、打电话、导航
- 所有操作,一句话搞定!
App自动化测试
- 100台设备同时测试,10分钟完成原本需要2天的工作
- 覆盖所有Android版本和机型
- 自动生成测试报告和截图
内容批量运营
- 50个账号自动发布内容
- 防风控机制,模拟真人操作
- 定时发布,自动互动
降本增效
- 测试效率提升100倍
- 人力成本降低90%
- 24小时不间断工作
本项目基于开源项目 Open-AutoGLM 深度重构:
| 对比项 | Open-AutoGLM(源项目) | PhoneAgent(本项目) |
|---|---|---|
| 界面 | ❌ 仅命令行 | ✅ 完整Web系统 + 实时预览 |
| 使用 | ❌ 需编写Python代码 | ✅ 自然语言 + 可视化操作 |
| 设备 | ❌ 单设备 | ✅ 多设备池管理 |
| 部署 | ❌ 手动复杂配置 | ✅ 一键部署脚本 |
| 企业 | ❌ 不支持 | ✅ 批量操作、任务调度 |
| 防风控 | ❌ 无 | ✅ 完整防检测机制 |
| 语音 | ❌ 无 | ✅ 语音输入(播报开发中) |
| 监控 | ❌ 无 | ✅ 实时状态 + 屏幕预览 |
| 连接 | ✅ FRP隧道稳定可靠 |
从实验室走向生产,从命令行走向Web,从单设备走向设备池!
前端 → 中间层 → 终端的完整闭环
- ✅ 响应式设计 - 支持桌面和移动端
- ✅ 实时预览 - Scrcpy集成,查看设备屏幕实时画面
- ✅ 可视化管理 - 任务、设备、配置一目了然
- ✅ 快捷指令 - 预设常用操作,一键执行
- ✅ 提示词卡片 - 优化AI效果,精准控制
- ✅ 暗黑模式 - 保护视力,夜间友好
- ✅ 语音输入 - 支持Web端语音录制
- ✅ STT识别 - 智谱AI语音识别
- 🚧 TTS播报 - 开发中(Android App)
- 🚧 唤醒词 - 开发中(科大讯飞)
- ✅ 设备池 - 支持多设备同时管理
- ✅ 实时状态 - 在线/离线/电量监控
- ✅ WebSocket - 实时双向通信
- ✅ FRP隧道 - 穿透NAT,稳定连接
- ✅ 时间随机化 - 模拟真人操作节奏
- ✅ 坐标随机化 - 避免固定位置点击
- ✅ 贝塞尔曲线 - 自然的滑动轨迹
- ✅ 打字模拟 - 随机速度和错误
- ✅ 探索行为 - 模拟真人浏览习惯
- ✅ 应用白名单 - 限制可操作的App
- ✅ 分类管理 - 社交、购物、工具等分类
- ✅ 快速启用/禁用 - 灵活的权限控制
┌──────────────────────────────────────────────────────────┐
│ 前端层 (Vue 3) │
│ ┌────────────────────────────────────────────────────┐ │
│ │ 任务创建与管理(支持语音输入) │ │
│ │ 设备监控与截图查看 │ │
│ │ 实时预览(Scrcpy集成) │ │
│ │ 快捷指令管理 │ │
│ │ 提示词卡片管理 │ │
│ │ App操作权限配置 │ │
│ │ 防风控策略配置 │ │
│ │ WebSocket实时通信 │ │
│ └────────────────────────────────────────────────────┘ │
└──────────────────────────────────────────────────────────┘
↕ HTTP/WebSocket
┌──────────────────────────────────────────────────────────┐
│ 服务端层 (Python FastAPI) │
│ ┌────────────────────────────────────────────────────┐ │
│ │ RESTful API(任务、设备、配置) │ │
│ │ WebSocket Server(实时通信) │ │
│ │ AI模型调用(智谱GLM-4.1V) │ │
│ │ 任务调度与执行 │ │
│ │ 设备池管理 │ │
│ │ 截图处理与压缩 │ │
│ │ 语音识别(STT) │ │
│ │ Scrcpy管理(实时预览) │ │
│ │ 数据库(SQLite) │ │
│ └────────────────────────────────────────────────────┘ │
└──────────────────────────────────────────────────────────┘
↕ WebSocket/FRP
┌──────────────────────────────────────────────────────────┐
│ Android终端层 (Termux) │
│ ┌────────────────────────────────────────────────────┐ │
│ │ WebSocket客户端(保持连接) │ │
│ │ ADB命令执行 │ │
│ │ 屏幕截图上传 │ │
│ │ 设备信息上报 │ │
│ │ FRP客户端(穿透NAT) │ │
│ │ Scrcpy Server(实时预览) │ │
│ └────────────────────────────────────────────────────┘ │
└──────────────────────────────────────────────────────────┘
1. 用户输入
├─ Web界面输入任务指令
├─ 或语音输入(STT转文字)
└─ 可选择提示词卡片优化效果
2. 任务创建
├─ 前端提交到服务端
├─ 服务端验证并入库
└─ 分配到设备池
3. 设备匹配
├─ 选择在线设备
├─ 通过WebSocket通信
└─ 检查设备状态
4. AI分析
├─ 截取设备屏幕
├─ 调用GLM-4.1V模型
├─ 视觉理解 + 推理
└─ 返回操作指令
5. 指令执行
├─ 解析AI返回的操作
├─ 转换为ADB命令
├─ 应用防风控策略
└─ 下发到设备执行
6. 实时反馈
├─ WebSocket推送执行状态
├─ 更新任务进度
├─ 实时预览展示画面
└─ Token消耗统计
7. 循环迭代
├─ 再次截图
├─ AI判断任务是否完成
└─ 未完成则继续步骤4-6
8. 任务完成
├─ 更新任务状态
├─ 记录执行步骤
└─ 通知前端
- ✅ 自然语言任务创建(支持语音输入)
- ✅ 任务列表查看和筛选
- ✅ 实时执行状态监控
- ✅ 任务中断和人工干预
- ✅ 执行步骤详情和截图
- ✅ Token消耗统计
- ✅ 多设备自动发现和注册
- ✅ 设备状态实时监控(在线/离线)
- ✅ 设备信息展示(型号/电量/分辨率)
- ✅ 设备截图查看
- ✅ WebSocket连接状态
- ✅ 实时屏幕预览(Scrcpy集成)
- ✅ Web端语音录制
- ✅ 智谱AI语音识别(STT)
- ✅ 实时识别反馈
- 🚧 语音播报(TTS,Android App开发中)
- 🚧 唤醒词(科大讯飞,App开发中)
- ✅ 系统预设常用指令
- ✅ 自定义快捷指令
- ✅ 一键执行任务
- ✅ 指令分类管理
- ✅ 使用频率统计
- ✅ 预设优化提示词
- ✅ 自定义提示词卡片
- ✅ 分类管理(通用/社交/购物等)
- ✅ 任务绑定提示词
- ✅ 动态优化AI效果
- ✅ 多级别策略(低/中/高)
- ✅ 时间随机化(操作间隔)
- ✅ 坐标随机化(点击位置)
- ✅ 贝塞尔曲线滑动
- ✅ 打字模拟(速度/错误)
- ✅ 探索行为模拟
- ✅ 应用白名单管理
- ✅ 分类管理(社交/购物/工具等)
- ✅ 快速启用/禁用
- ✅ 搜索和筛选
- ✅ Scrcpy原生集成
- ✅ 实时屏幕镜像(延迟<150ms)
- ✅ 设备选择和切换
- ✅ 可选的手动控制模式
- ✅ 任务中断人工干预
- ✅ 质量设置(分辨率/帧率/码率)
- ✅ 暗黑模式
- ✅ 响应式设计
- ✅ 实时状态推送
- ✅ 友好的错误提示
- 🚧 移动端优化(开发中)
服务器端:
- 操作系统: Ubuntu 20.04+ 或 Debian 11+
- Python: 3.10+
- 内存: 2GB+
- 磁盘: 10GB+
- 注意: 不再支持 CentOS/RHEL(Python版本问题)
Android设备:
- Android 7.0+
- 开启USB调试
- Termux已安装
# 1. 克隆项目
git clone https://github.com/tmwgsicp/PhoneAgent.git
cd PhoneAgent
# 2. 运行部署脚本(自动安装所有依赖,包括Scrcpy)
sudo bash scripts/install/install_server.sh
# 3. 配置API密钥(按脚本提示操作)
# 填入智谱AI API Key
# 4. 访问Web界面
http://YOUR_SERVER_IP:5173详细部署文档: 📖 DEPLOYMENT.md
当前支持(智谱AI):
- autoglm-phone - 专为手机控制优化(限时免费,推荐)
- glm-4.1v-thinking-flash - 视觉理解 + 推理(免费)
- glm-4.1v-thinking-flashx - 付费推理模型,支持更高并发
其他OpenAI兼容模型:
- 需要在高级选项中手动输入模型名称
- 确保模型支持视觉理解(multimodal)
智谱AI(已集成):
- STT: 智谱语音识别
- TTS: 智谱语音合成(前端暂未集成)
Fish Audio(预留接口):
- 暂未开放
- 框架: FastAPI
- AI模型: 智谱GLM-4.1V
- 数据库: SQLite
- 通信: WebSocket
- 音频: pydub + ffmpeg
- 实时预览: Scrcpy + FFmpeg
- 框架: Vue 3 + Vite
- UI: Element Plus
- 状态: Pinia
- 路由: Vue Router
- 通信: WebSocket + Axios
- 环境: Termux
- 工具: ADB + FRP Client
- 连接: WebSocket
- 完整Web管理界面
- 多设备池管理
- 任务创建与执行
- WebSocket实时通信
- 语音输入(STT)
- 快捷指令系统
- 提示词卡片系统
- 防风控机制
- App权限控制
- 暗黑模式
- 实时屏幕预览(Scrcpy)
- Android App(语音助手)
- 唤醒词(科大讯飞)
- TTS语音播报
- 对话管理
- 后台运行
- 移动端Web优化
- 底部导航栏
- 触摸手势
- 响应式布局
- 多模型支持
- 任务模板市场
- 性能监控面板
- 分布式部署
完整路线图: 🗺️ ROADMAP.md
针对个人用户的高级功能:
核心差异:
- ✨ 更高准确率 - Accessibility Tree混合定位(95%+)
- 🎯 快捷指令商店 - 海量预设模板
- 🎨 主题定制 - 个性化界面
- 📱 App独占功能 - 独家Android应用
- ⭐ 优先支持 - 专属客服
针对企业用户的批量自动化:
核心功能:
- 🚀 多设备调度 - 支持100+设备并发
- ⚖️ 负载均衡 - 智能任务分配
- 📊 数据分析 - 可视化报表
- 🔐 权限管理 - 多用户角色
- 🌐 分布式部署 - 高可用集群
- 💼 企业级支持 - SLA保障 + 定制开发
联系方式: 商务合作
由于个人精力有限,暂不接受PR,但欢迎:
- 🐛 提交Issue报告Bug
- 💡 提出新功能建议
- 📖 改进文档
- ⭐ Star支持项目
提交Issue时请包含:
- 问题描述
- 复现步骤
- 系统环境(OS、Python版本等)
- 相关日志
本项目基于 Apache 2.0 协议开源。
使用须知:
- ✅ 个人学习和研究
- ✅ 企业内部使用
⚠️ 请遵守当地法律法规⚠️ 请尊重第三方应用的服务条款- ❌ 禁止用于违法违规用途
免责声明: 本项目仅供学习研究使用,使用者应遵守法律法规,不得用于非法用途。因使用本项目造成的任何损失,开发者不承担责任。
- 微信联系: [添加二维码]
- 微信交流群: [添加二维码]
如果这个项目对你有帮助,欢迎请我喝杯咖啡 ☕️
- 微信: [二维码]
- 支付宝: [二维码]
本项目基于 Open-AutoGLM 深度重构开发,感谢原作者的开源贡献。
感谢所有开源项目和贡献者!
🌟 如果觉得项目不错,请给个Star支持一下!🌟
Made with ❤️ by PhoneAgent Team