首款无需电脑的开源 AI 手机自动化助手 | AI Phone Automation Assistant
基于视觉语言模型 (VLM) · 原生 Android Kotlin · 多 Agent 协作架构
English | 简体中文
2025 年 12 月,字节跳动联合中兴发布了「豆包手机助手」,一款能够自动操作手机完成复杂任务的 AI 助手。它能帮你比价下单、批量投简历、刷视频,甚至代打游戏。
首批 3 万台工程机定价 3499 元,上线当天即告售罄,二手市场一度炒到 5000+。
买不到?那就自己做一个。
于是有了肉包——一个完全开源的 AI 手机自动化助手。
为什么叫「肉包」?因为作者不爱吃素。🥟
| 特性 | 肉包 | 豆包手机 | 其他开源方案 |
|---|---|---|---|
| 需要电脑 | ❌ 不需要 | ❌ 不需要 | ✅ 大多需要 |
| 需要购买硬件 | ❌ 不需要 | ✅ 需要 3499+ | ❌ 不需要 |
| 原生 Android 实现 | ✅ Kotlin | ✅ 原生 | ❌ Python |
| 开源 | ✅ MIT | ❌ 闭源 | ✅ 开源 |
| Skills/Tools 架构 | ✅ 完整 | ❓ 未知 | ❌ 无 |
| UI 设计 | ⭐⭐⭐½ | ⭐⭐⭐⭐ | ⭐⭐ |
| 自定义模型 | ✅ 支持 | ❌ 仅豆包 | ✅ 部分支持 |
传统的手机自动化方案痛点:
肉包的解决方案:
一个 App,装上就能用。无需电脑、无需数据线、无需任何技术背景。
打开 App → 配置 API Key → 说出你想做的事 → 完成。
市面上几乎所有手机自动化开源项目(包括阿里的 MobileAgent)都是 Python 实现,需要:
肉包完全不同。
我们用 Kotlin 重写了整个 MobileAgent 框架,原生运行在 Android 设备上:
Android 系统出于安全考虑,普通 App 无法:
input tap、screencap 等系统命令传统方案需要连接电脑执行 ADB 命令。而 Shizuku 是一个优雅的解决方案:
这让肉包可以直接在手机上执行截图、点击、输入等操作,真正实现「一个 App 搞定一切」。
受 Claude Code 架构启发,肉包实现了 Tools + Skills 双层 Agent 框架:
用户: "帮我点份外卖" │ ▼ ┌─────────────┐ │ SkillManager │ ← 意图识别 └─────────────┘ │ ┌────┴────┐ │ │ ▼ ▼ 🚀 快速路径 🤖 标准路径 (Delegation) (GUI 自动化) │ │ ▼ ▼ 直接 DeepLink Agent 循环 打开小美 AI 操作美团 App
Tools 层(原子能力)
底层工具集,每个 Tool 完成一个独立操作:
| Tool | 功能 |
|---|---|
search_apps | 智能搜索已安装应用(支持拼音、语义) |
open_app | 打开应用 |
deep_link | 通过 DeepLink 跳转到 App 特定页面 |
clipboard | 读写剪贴板 |
shell | 执行 Shell 命令 |
http | HTTP 请求(调用外部 API) |
Skills 层(用户意图)
面向用户的任务层,将自然语言映射到具体操作:
| Skill | 类型 | 描述 |
|---|---|---|
| 点外卖(小美) | Delegation | 直接打开小美 AI 让它帮你点 |
| 点外卖(美团) | GUI 自动化 | 在美团 App 上一步步操作 |
| 导航(高德) | Delegation | DeepLink 直达高德搜索 |
| 生成图片(即梦) | Delegation | 打开即梦 AI 生成图片 |
| 发微信 | GUI 自动化 | 自动操作微信发消息 |
两种执行模式:
Delegation(委托):高置信度匹配时,直接通过 DeepLink 打开有 AI 能力的 App(如小美、豆包、即梦),让它们完成任务。快速、一步到位。
GUI 自动化:没有 AI 能力的 App(如美团、微信),通过传统的截图-分析-操作循环完成。Skill 会提供操作步骤指导,提高成功率。
这可能是所有手机自动化开源项目中 UI 做得最好看的。
当 Shizuku 以 Root 权限运行时,肉包可以启用 Root 模式:
su -c 命令(需谨慎使用)Shizuku 是一个开源工具,可以让普通应用获得 ADB 权限,无需 Root。
启动方式(二选一):
无线调试(推荐,需 Android 11+)
设置 > 开发者选项 > 无线调试电脑 ADB
adb shell sh /storage/emulated/0/Android/data/moe.shizuku.privileged.api/start.sh从 Releases 页面下载最新 APK 安装。
阿里云通义千问(推荐国内用户)
OpenAI(需要代理)
帮我点个附近好吃的汉堡 打开网易云音乐播放每日推荐 帮我把最后一张照片发送到微博 帮我在美团点一份猪脚饭 打开B站看热门视频
┌──────────────────────────────────────────────────────────────┐ │ 肉包 App │ ├──────────────────────────────────────────────────────────────┤ │ │ │ ┌─────────────────────────────────────────────────────┐ │ │ │ UI 层 (Compose) │ │ │ │ HomeScreen / Settings / History │ │ │ └─────────────────────────────────────────────────────┘ │ │ │ │ │ ┌────────────────────────▼────────────────────────────┐ │ │ │ Skills 层 │ │ │ │ SkillManager → 意图识别 → 快速路径/标准路径 │ │ │ │ ┌─────────────────────────────────────────────┐ │ │ │ │ │ 点外卖 │ 导航 │ 打车 │ 发微信 │ AI画图 │ ... │ │ │ │ │ └─────────────────────────────────────────────┘ │ │ │ └─────────────────────────────────────────────────────┘ │ │ │ │ │ ┌────────────────────────▼────────────────────────────┐ │ │ │ Tools 层 │ │ │ │ ToolManager → 原子能力封装 │ │ │ │ ┌─────────────────────────────────────────────┐ │ │ │ │ │ search_apps │ open_app │ deep_link │ clipboard │ │ │ │ │ shell │ http │ screenshot │ tap │ swipe │ type │ │ │ │ └─────────────────────────────────────────────┘ │ │ │ └─────────────────────────────────────────────────────┘ │ │ │ │ │ ┌────────────────────────▼────────────────────────────┐ │ │ │ Agent 层 │ │ │ │ MobileAgent (移植自 MobileAgent-v3) │ │ │ │ ┌───────────┬───────────┬───────────┬──────────┐ │ │ │ │ │ Manager │ Executor │ Reflector │ Notetaker│ │ │ │ │ │ (规划) │ (执行) │ (反思) │ (记录) │ │ │ │ │ └───────────┴───────────┴───────────┴──────────┘ │ │ │ └─────────────────────────────────────────────────────┘ │ │ │ │ │ ┌────────────────────────▼────────────────────────────┐ │ │ │ VLM Client │ │ │ │ Qwen-VL / GPT-4V / Claude │ │ │ └─────────────────────────────────────────────────────┘ │ │ │ │ ├────────────────────────────┼────────────────────────────────┤ │ ▼ │ │ ┌─────────────────────────────────────────────────────┐ │ │ │ Shizuku │ │ │ │ System-level Control │ │ │ │ screencap │ input tap │ input swipe │ am start │ │ │ └─────────────────────────────────────────────────────┘ │ └──────────────────────────────────────────────────────────────┘
用户输入指令 │ ▼ ┌─────────────────┐ │ Skills 匹配 │ ← 检查是否有对应的 Skill └─────────────────┘ │ ├── 高置信度 Delegation Skill ──▶ 直接 DeepLink 跳转 ──▶ 完成 │ ▼ ┌─────────────────┐ │ 标准 Agent 循环 │ └─────────────────┘ │ ▼ ┌──────────────────────────────────────────────┐ │ 1. 截图 - Shizuku screencap │ │ 2. Manager 规划 - VLM 分析当前状态 │ │ 3. Executor 决策 - 确定下一步操作 │ │ 4. 执行动作 - tap/swipe/type/open_app │ │ 5. Reflector 反思 - 评估操作效果 │ │ 6. 循环直到完成或安全限制 │ └──────────────────────────────────────────────┘
app/src/main/java/com/roubao/autopilot/ ├── agent/ # AI Agent 核心 (移植自 MobileAgent-v3) │ ├── MobileAgent.kt # Agent 主循环 │ ├── Manager.kt # 规划 Agent │ ├── Executor.kt # 执行 Agent │ ├── ActionReflector.kt # 反思 Agent │ ├── Notetaker.kt # 笔记 Agent │ └── InfoPool.kt # 状态池 │ ├── tools/ # Tools 层 - 原子能力 │ ├── Tool.kt # Tool 接口定义 │ ├── ToolManager.kt # 工具管理器 │ ├── SearchAppsTool.kt # 应用搜索 │ ├── OpenAppTool.kt # 打开应用 │ ├── DeepLinkTool.kt # DeepLink 跳转 │ ├── ClipboardTool.kt # 剪贴板操作 │ ├── ShellTool.kt # Shell 命令 │ └── HttpTool.kt # HTTP 请求 │ ├── skills/ # Skills 层 - 用户意图 │ ├── Skill.kt # Skill 接口定义 │ ├── SkillRegistry.kt # Skill 注册表 │ └── SkillManager.kt # Skill 管理器 │ ├── controller/ # 设备控制 │ ├── DeviceController.kt # Shizuku 控制器 │ └── AppScanner.kt # 应用扫描 (拼音/语义搜索) │ ├── vlm/ # VLM 客户端 │ └── VLMClient.kt # API 调用封装 │ ├── ui/ # 用户界面 │ ├── screens/ # 各个页面 │ ├── theme/ # 主题定义 │ └── OverlayService.kt # 悬浮窗服务 │ ├── data/ # 数据层 │ └── SettingsManager.kt # 设置管理 │ └── App.kt # Application 入口 app/src/main/assets/ └── skills.json # Skills 配置文件
正在开发的重大更新,目前在
roubao2.0+AccessibilityService分支
无障碍服务混合模式 - 集成 AccessibilityService,实现更精准的 UI 操作
UI 树感知 - Agent 能够获取完整的 UI 结构
宏脚本系统 - 录制、存储、回放操作序列
设置增强
# 克隆仓库
git clone https://github.com/yourusername/roubao.git
cd roubao
# 构建 Debug 版本
./gradlew assembleDebug
# 安装到设备
./gradlew installDebug
遇到崩溃或 Bug?请通过以下方式反馈:
💡 日志文件不包含您的 API Key 或个人隐私信息
请在 GitHub Issues 提交问题,附上:
欢迎提交 Issue 和 Pull Request!
git checkout -b feature/amazing-feature)git commit -m 'Add some amazing feature')git push origin feature/amazing-feature)本项目基于 MIT 许可证开源。详见 LICENSE 文件。
Made with ❤️ by Roubao Team