OpenCyvis 2.0:不用刷机也能用的开源 AI 手机
原创 flanker 2026-05-24 23:05 上海

OpenCyvis 2.0 发布:新增标准安装模式,不需要刷机,下载 APK 配对即用。支持 IM 远程控制、定时例行任务、多模型切换。
OpenCyvis 是一个开源的 AI 手机方案。用户可以自由选择 LLM 后端(云端或本地),AI 在后台虚拟显示器上操作,不占用前台屏幕。2.0 新增标准模式,不用刷机就能在任何 Android 手机上使用。
回顾
上次发了一篇文章介绍 OpenCyvis,收到了不少反馈——有在自己的场景用起来的,也有讨论技术实现的,有问本地模型配置的,也有直接来 GitHub 提 issue 的。
刷机模式权限最稳定,但为了支持很多情况下非刷机使用的场景,2.0 加了标准模式:下载 APK,按设置向导完成配对就能使用,不需要刷机。系统 App 模式同时保留。
两种模式,同一个 App,同一套 AI 引擎。区别只在底层权限的获取方式。

先看效果——输入一句"微信里发去吃寿司郎",AI 自动打开微信、找到对话、输入消息并发送:

两种安装模式
标准模式
适合大多数用户。
1. 下载 APK,正常安装
2. 打开 App,设置向导引导完成 ADB 无线配对
3. 选择 LLM 后端(云端或本地),开始使用
不需要刷机,不需要 Root,不需要连接电脑。整个配对过程在手机上独立完成,设置向导会一步步引导。支持 Android 11 及以上版本。
系统 App 模式
适合极客用户和开发者,及追求稳定权限体验的。
刷入 AOSP 系统镜像,App 以系统应用身份运行,拥有最完整的平台签名权限。截屏使用 SurfaceControl 直接调用,速度最快;FLAG_SECURE 保护的窗口也能正常截取;VD 任务管理走系统内部 API,稳定性最高。代价是需要一台专门的设备来刷机。
两种模式的关系
核心 AI 引擎、LLM 后端、UI 界面、操作能力——两种模式完全一样。差异仅在底层:系统 App 直接调用系统 API,标准模式通过 ADB shell 权限获得同等能力。绝大多数日常场景下,用户感受不到区别,但后者在便捷性上和稳定性可能会受到各个手机品牌定制的影响。
2.0 新增功能
IM 远程控制
在 IM 里给 Bot 发消息,远程控制手机上的 AI。目前支持飞书和 Telegram。
典型场景:给父母手机装上 OpenCyvis,妈妈说"字太小了看不清"——你在 IM 里发条"把字体调到最大",AI 操作完截图发回来确认。不需要双方同时盯屏幕,不需要电话里教点哪里。
支持完整的交互:下发指令、接收进度、查看截图、回答 AI 的追问、停止任务。

例行任务(Routines)
把常用操作保存下来,定时自动执行或一键触发。
比如设置"每天早上 8 点查日程",AI 到点自动查日历、查天气、查未读邮件,汇总推送到聊天里。也支持地理围栏——到了公司自动打卡。用户可以从对话历史中直接保存为 routine。
深色模式
完整的日夜主题支持。跟随系统设置自动切换,也可以在 App 内手动指定。所有界面——主页、聊天、设置、Watch 模式——都有对应的深色配色。
多 ROM 适配
标准模式现在支持 MIUI、ColorOS、OriginOS 等主流国产 ROM。不同厂商的 ADB 无线调试入口差异较大,我们通过 OemHelper 做了兼容处理。
Provider Profiles
可以保存多个 AI 配置方案(比如一个云端 Qwen、一个本地 Gemma 4、一个 Claude),在设置里一键切换,不需要每次重新填写 API 地址和密钥。
核心设计
• 开源 + 模型可选:Apache 2.0,LLM 后端用户自配
• 虚拟显示器:AI 在后台 VD 操作,不占前台屏幕
• 截图 + UI 树双通道感知:视觉定位 + 结构化坐标
• 14 种 Tool Calling:模型通过 function calling 返回结构化指令
详见上一篇文章。
技术:两种 Backend 架构
两种安装模式共享全部上层代码,差异仅在权限层。通过 PrivilegeBackend 接口隔离:
SystemBackend | RemoteBackend | |
|---|---|---|
权限来源 | 平台签名(uid system) | ADB shell(uid 2000) |
输入注入 | InputManager 直接反射 | AIDL 代理到 PrivilegedService |
截屏 | SurfaceControl.screenshot() | ImageReader 从 VD Surface 读取 |
VD 任务管理 | 反射 ActivityTaskManager | PrivilegedService 代理 |
运行时自动选择 Backend。
这个架构的另一个好处是可扩展——PrivilegeBackend 是一个接口,未来可以接入更多权限来源。目前已支持 Shizuku;后续还可以对接更多定制 API,或者结合如笔者曾提出并被 XDA 社区做成工具的 TTS Engine 获取系统权限的类似能力(在用户主动授权的前提下)。上层 Agent 引擎不需要任何改动。

标准模式的关键技术
ADB 无线调试自连接 — 借鉴 Shizuku 的思路。App 通过 ADB 配对协议在设备上启动一个 shell 身份的 PrivilegedService 进程,拥有输入注入等权限。App 本体仍为普通应用,高权限操作走 AIDL 代理,权限提升有边界。
Mirror VD 截屏 — 创建 VirtualDisplay 时关联 ImageReader,直接从 VD Surface 读帧。不需要 READ_FRAME_BUFFER 权限,性能损失对 agent 循环影响有限。
多 ROM 适配 — 不同厂商的无线调试入口差异大。OemHelper 封装了 MIUI、ColorOS、OriginOS 等的差异,其他 ROM 走通用流程。
模型支持
云端和本地均可。用户自行配置 LLM 后端,App 不绑定任何模型服务商。以下为部分云端多模态模型评测结果:
模型 | 每步延迟 | 通过率 | 备注 |
|---|---|---|---|
Qwen 3.5 Plus | 4-6s | 4/4 | 稳定,推荐 |
Claude Opus 4.6 | 4-8s | 4/4 | 推理质量最高 |
MiMo v2.5 | 2.3-4.5s | 4/4 | 速度最快 |
Kimi K2.6 | 5-15s | 2/4 | tool calling 不稳定,延迟波动大 |
本地模型通过 Ollama 运行,Gemma 4 E2B(1.8GB)即可通过全部测试。详见上一篇文章。
接下来
• 探索更便捷的权限支持方式
• 进一步优化本地模型支持
Website: https://opencyvis.ai | GitHub: opencyvis/opencyvis-phone | Apache 2.0