Writing & Content✨gemini

Eta

在 ColorOS 与 HyperOS 上实现系统级 Android AI Agent。通过类似豆包手机的 GUI Agent 实现跨应用操作,同时提供结构化设备工具,让模型无需依赖 GUI 即可直达系统能力。凭借支持 Root Shell 与 Linux 环境的终端能力,进一步覆盖 Android 世界中更广泛的任务,并解锁 Gemini 与一圈即搜

Quick Start

Install this Skill

npx skills add Mangi-11/Eta
# Eta

<p><img src="https://img.shields.io/badge/Kotlin-2.4.0-7F52FF?logo=kotlin&amp;logoColor=white" alt="Kotlin 2.4.0"> <img src="https://img.shields.io/badge/AGP-9.3.1-3DDC84?logo=android&amp;logoColor=white" alt="AGP 9.3.1"> <img src="https://img.shields.io/badge/minSdk-34-3DDC84?logo=android&amp;logoColor=white" alt="minSdk 34"> <img src="https://img.shields.io/badge/Coverage-ColorOS%20%26%20HyperOS-1677FF" alt="Coverage ColorOS and HyperOS"></p>

**面向 Android 的第三方系统级 AI Agent**

设备能力直达 · GUI 跨应用操作 · Root Shell · Linux 工具环境

让模型直接调用 Android 系统、操作应用界面,并通过终端完成复杂任务。

> [!NOTE]
> Eta 支持 ColorOS 与 HyperOS,覆盖 OPPO 系(OPPO / 一加 / 真我)和小米系设备。App 本体是核心工作台并承载完整 Agent Runtime;小布与小爱只作为系统入口接入,共用 BYOK 自定义模型配置。完整功能需要 Root 和 LSPosed。

## 界面预览

|                         GUI Agent                         |                         小布助手 BYOK:电源键启动                         |
| :-------------------------------------------------------: | :-----------------------------------------------------------------------: |
| <img src="docs/Screenshots/demo_gui_agent.gif" width="320" alt="GUI Agent"> | <img src="docs/Screenshots/demo_tools.gif" width="320" alt="小布助手 BYOK:电源键启动"> |

|              App 本体聊天首页              |                      小布:执行 Shell 命令                      |                       设备直达                       |
| :-----------------------------------------: | :------------------------------------------------------------: | :--------------------------------------------------: |
| ![聊天首页](docs/Screenshots/chat_home.jpg) | ![小布:执行 Shell 命令](docs/Screenshots/chat_breeno_analysis.jpg) | ![设备直达](docs/Screenshots/chat_device_direct.jpg) |

|                  设置                  |                工具能力                |                 Skills                 |
| :------------------------------------: | :-------------------------------------: | :------------------------------------: |
| ![设置](docs/Screenshots/settings.jpg) | ![工具能力](docs/Screenshots/tools.jpg) | ![Skills](docs/Screenshots/skills.jpg) |

## 核心能力

Agent 不会问一句答一句就结束。它在一个 loop 里运转:模型发指令,系统执行,结果写回上下文,模型再决定下一步。如此往复,直到做完。

Eta 有三条可以组合使用的执行路径:有稳定系统接口时调用结构化设备工具,没有合适接口时通过 GUI 操作应用,需要完整计算环境时进入 Android Shell 或 Linux 工具环境。

### 设备直达:让 AI 调用系统,而不是学习怎么点手机

> 当普通手机 Agent 还在截图、找按钮、猜坐标时,Eta 已经把任务交给 Android 系统直接完成。

“明早 7 点叫我起床”“暂停音乐”“把媒体音量调到 30%”“开启 Wi‑Fi”“看看哪个应用最占空间”——Eta 会把这些自然语言转换成参数明确的设备工具调用。模型不需要先打开设置、等待动画、识别开关,再祈祷界面没有改版。

这不是在 System Prompt 里写几句“我可以控制手机”。Eta 为模型提供了一套真正可执行的结构化设备工具:`set_alarm`、`set_timer`、`set_device_state`、`set_volume`、`device_status`、`send_message`……每个工具都有独立的参数 Schema、权限分组、执行器和结构化结果。模型负责决定做什么,Runtime 负责可靠地在这台手机上完成。

这也不是一张做到这里就封顶的功能清单。结构化设备工具是 Eta 会持续扩展的核心能力层:后续更多系统状态、设备控制和应用动作会不断以独立 Schema 与专用执行器接入。能直达的能力就不再堆 GUI 脚本,让模型可用的手机能力随着版本持续增长。

- **时间与媒体**:直接创建闹钟和计时器,控制播放、暂停、切歌,并按媒体、铃声、通知和闹钟通道精确调整音量
- **设备状态**:读取电池、充电、内存、存储、系统版本、运行时间和当前网络,直接开启或关闭 Wi‑Fi、蓝牙
- **应用洞察**:找出最占内存的进程和最占存储的应用,不必打开系统管家逐页查找
- **深度系统能力**:读取通知和短信验证码,查询已保存的 Wi‑Fi 凭据与 Android Settings,获取有界系统日志
- **设备管理**:修改非安全关键 Settings,停止、冻结或恢复指定应用;核心系统包和安全关键设置始终受保护
- **真实发送微信消息**:精确搜索联系人并填写或发送消息。它不是打开微信后把任务丢给用户,而是真的完成输入、点击发送并验证结果

有稳定系统接口的任务优先直达;只有 Android 或目标应用没有提供合适接口时,才退回无障碍 GUI。GUI 仍然是 Eta 跨应用操作的通用能力,但不再是每件事都必须经过的笨重中间层。

| 普通 GUI Agent                     | Eta 设备直达                       |
| ---------------------------------- | ---------------------------------- |
| 截图、识别按钮、模拟点击           | 调用职责明确的结构化工具           |
| 依赖坐标、文案和当前页面布局       | 优先依赖 Android 系统接口          |
| 页面改版、弹窗或动画都可能打断流程 | 多数操作不受设置页面变化影响       |
| 只能观察界面是否“看起来成功”     | 执行器返回可供模型继续判断的结果   |
| 所有能力都挤在同一套 GUI 操作里    | 不同能力拥有独立 Schema 和执行边界 |

Eta 不要求用户背固定口令,也不会拿一份关键词表审核一句话“够不够明确”。相应能力开启后,模型可以根据任务直接调用。安全也不是靠每一步都反问用户,而是落在真正执行动作的地方:

- 设备能力分为“设备直达、敏感信息读取、敏感设备操作”三组开关,当前均默认开启;Runtime 每次执行前都会重新读取,用户可随时关闭
- 工具参数必须通过 Schema 和执行器校验;核心包、安全关键设置和越界参数不会因为模型坚持要求就被放行
- 短信验证码、Wi‑Fi 密码、通知正文、日志和消息参数只在当前回合提供给模型,原始参数与结果不会写入持久会话
- 微信联系人出现同名时立即停止;发送按钮最多点击一次,结果未知时绝不盲目重试,避免发错人或重复发送

### GUI 操作

- **屏幕与控件**:截图、读取带快照标识的无障碍节点、按节点或坐标点击,以及带位移验证的四向滚动
- **应用与系统**:启动 App、把链接显式交给外部应用、模拟按键、下拉通知栏、搜索应用
- **文本与剪贴板**:输入文字、设置剪贴板、粘贴、等待特定文本出现
- **运行可视化**:前台操作时显示浮层与手势反馈,让你知道它正在点哪里、怎么滑

### 网页浏览

`browser_use` 是运行在 Eta 内的 Agent 浏览器,不是简单调用系统 `ACTION_VIEW`。它可以在不抢占前台的情况下加载 JavaScript 网页、提取保留标题/段落/列表/链接等结构的正文、查找并操作页面元素、提交表单、滚动和截图;用户想查看过程时,可在 App 中挂载同一个 WebView 直接接管。外部打开链接仍由独立的 `open_uri` 工具负责,两种能力不会混淆。

Eta 不对浏览器请求执行额外的 URL、DNS、IP、主机数量、请求方法、重定向或 Service Worker 拦截,页面直接交给系统 WebView 加载。浏览器允许本地内容、混合内容、第三方 Cookie、自动媒体播放和表单提交;系统 WebView 与 Android 平台自身的协议支持、TLS 校验和权限行为保持不变。网页工具可在设置中关闭。

### 终端与文件

在用户授权下执行 `user` 或 `root` shell 命令,读写文件、列目录、跑脚本、查日志、改配置。会话式 shell 保持 cwd 和环境变量,异步任务后台执行并分段读取输出。终端/文件工具当前默认开启,用户可在设置中关闭。

终端按用途分为两个环境:

- `android` 是原生 Android Shell,负责系统、应用、日志、Magisk 和设备文件操作。Root 会话会自动发现 Magisk、KernelSU 或 APatch 提供的 BusyBox,并以 standalone `ash` 补齐不在系统 PATH 中的 applet。
- `linux` 是可选安装的 Alpine 工具环境,负责 Python、Git、Bash、jq、zip、OpenSSL、SQLite 等通用任务。Eta 下载固定版本的官方 minirootfs 并校验 SHA-256,在 App 私有目录中解压,通过独立 mount namespace + Root chroot 运行;它不是安全沙箱,也不会取代 Android 环境。

### Skills

- **AI 安装**:Eta 可以浏览公开 G

... (truncated)
Repository
620stars
51forks
View on GitHub
Details
DiscoveredJul 29, 2026
Last UpdatedJul 29, 2026
Author@Mangi-11
Quality Score
68/100

Related Skills

More writing & content skills you might like