Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

23 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

AutomaPhoneAI (Agent Phone)

AutomaPhoneAI 是一个基于 Golang 和 React 构建的 Android 设备群控与投屏管理系统。它利用 ADB 和 Scrcpy 技术,实现了对 Android 设备的远程控制、屏幕镜像、文件管理等功能。

🚀 功能特性

  • 多设备管理:同时连接和管理多台 Android 设备。
  • 实时投屏:基于 WebCodecs 和 WebSocket 的低延迟屏幕镜像(H.264/HEVC)。
  • 远程控制:支持通过网页进行点击、滑动、输入等操作。
  • 无线连接:支持通过 TCP/IP (ADB connect) 无线连接设备。
  • 应用管理:快速启动、停止应用。
  • 文件管理:(规划中) 文件上传与下载。

🧠 核心架构:多模型协同与动作拦截 (Action Interception)

本项目不仅仅是一个远程控制工具,其核心在于结合了多个大语言/视觉模型(如 AutoGLM-Phone 和 GLM-4.7/DeepSeek),实现像真人一样智能操作手机:

  • 视觉与基础操作 (AutoGLM-Phone): 负责解析屏幕(SoM)、查找UI元素、执行点击/滑动,并识别应用内的上下文(如“这是一个AI视频”)。
  • 文本大脑 (高阶LLM): 当 AutoGLM-Phone 判断需要进阶文本交互时,会自动产生 smart_replysmart_comment 操作。后端(Go Server)会拦截此操作,带着上下文向高阶文本大模型(如 GLM-4.7 等)请求具有人设和温度的具体文案,最后代为敲码发送。
  • 这种主从解耦的**“动作拦截”架构**保证了快速的操作响应速度,又丝滑接入了最强的文本生成能力,从而胜任微信聊天、抖音评论等需要“高情商”和长上下文记忆的业务场景。

🛠 技术栈

  • 后端: Golang, Fiber, GORM, ADB (gadb), Go-Redis
  • 前端: React, TypeScript, Vite, TailwindCSS, Radix UI
  • 大语言模型驱动 (Agent): CloudWeGo/Eino 框架
  • 视频流: FFmpeg, WebCodecs, MSE
  • 底层: ADB (Android Debug Bridge), Scrcpy Server

📋 前置要求

在运行本项目之前,请确保您的环境已安装以下依赖:

  1. Golang (1.24+)
  2. Node.js (20+) & pnpm
  3. ADB Tools: 确保 adb 命令在您的系统 PATH 中。
  4. FFmpeg:
    • 请参考 bin/README.md 下载对应系统的 FFmpeg 二进制文件并放入 bin/ 目录。
  5. Scrcpy Server:
    • 项目依赖 scrcpy-server。请确保 scrcpy-server-v3.3.4 文件存在于项目根目录或配置指定的路径下(通常与 main 同级或在 bin 中,具体视配置而定)。

🔧 安装与运行

1. 克隆项目

git clone https://github.com/chenxi2015/AutomaPhoneAI.git
cd AutomaPhoneAI

2. 后端设置 (Backend)

下载依赖:

go mod download

运行服务:

# 默认运行在 dev 环境,端口 8080
go run cmd/server/main.go

# 指定环境和端口
go run cmd/server/main.go -e prod -p 8088

3. 前端设置 (Frontend)

进入 web 目录:

cd web

安装依赖:

pnpm install

启动开发服务器:

pnpm dev

前端服务通常运行在 http://localhost:5173

⚙️ 配置说明

配置文件位于 configs/ 目录下:

  • config.dev.yaml: 开发环境配置
  • config.test.yaml: 测试环境配置
  • config.prod.yaml: 生产环境配置

您可以根据需要在对应的配置文件中修改数据库连接、端口、第三方服务密钥等信息。

📂 目录结构

  • cmd/: 项目入口文件。
  • configs/: 配置文件。
  • internal/: 内部业务逻辑代码。
  • pkg/: 通用工具包和库封装。
  • web/: 前端 React 项目代码。
  • bin/: 存放外部二进制文件(如 FFmpeg)。

About

使用Ai自动操作手机

Topics

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages