Mangi-11/Eta

System-level Android AI Agent with direct OS access. | Android 系统级 AI Agent——越过沙盒,让模型访问底层API、屏幕、终端与你的数据

Eta – Android‑level AI Assistant

What it is

  • Eta is an Android app that turns a phone into a system‑wide AI Agent. It lets a large‑language‑model (LLM) you configure (OpenAI, Anthropic, Kimi, etc.) issue tool calls that interact with the device: set alarms, control media, read notifications, run shell commands, edit files, and even manipulate other apps through the accessibility service (a “GUI Agent”).
  • The core is an Agent Runtime that loops: the model receives the user’s prompt, decides which tool to invoke, the app executes the tool, feeds the result back to the model, and repeats until the task is finished.

Key capabilities

Category What Eta can do
System API Direct Android‑API calls: alarm, volume, media, app‑info, permissions, logs (root only).
GUI Agent Uses the accessibility tree to locate UI elements, click, scroll, type, and take full‑resolution screenshots.
Terminal Provides a Linux‑like shell (Alpine or Debian via PRoot/chroot). Models can run terminal, terminal_job, terminal_daemon commands, see output, and keep background jobs.
File tools Read/write files, search, edit with size limits, view metadata, and expose Android directories as /workspace/mounts/.
Browser Embedded WebView that can load pages, read text, manipulate the DOM and capture screenshots.
Personal context Pull recent notifications, app usage, contacts, calendar, photos, SMS, health data (some require root or OEM support).
Memory A local MEMORY.md file stores long‑term conversation context; the app can edit, clear or disable it.
Skills & MCP Install reusable “skill” packs from GitHub or ZIP files; connect to remote tools via HTTP with bearer tokens (MCP).
Roles Load character cards (PNG/JSON) to give the assistant a persona; role‑specific memory is kept separate from normal chats.

How it works

  1. Model selection – In Settings you add a provider (OpenAI, Anthropic, etc.) and supply an API key (BYOK). The app supports many providers and lets you add custom OpenAI‑compatible endpoints.
  2. Tool calling – The LLM receives a schema for each tool (e.g., set_alarm(time), read_file(path)). When it decides a tool is needed, Eta calls the corresponding Android or Linux implementation, checks permissions, runs the action, and returns a structured result.
  3. Runtime loop – The Agent Runtime manages streaming responses, steering, cancellation, and incremental transcripts. All actions are logged locally; sensitive tool parameters are not persisted unless you export the conversation.
  4. Entry points – Eta can be launched from the power‑button long‑press, or by hijacking OEM assistants (Xposed modules for “小布” / “超级小爱”). LSPosed is required for deep system integration.

Installation & usage

  • Download the APK from the Releases page, install on Android 13+.
  • Configure a model provider and enable the tools you need (accessibility service for GUI, notification permission, location, etc.).
  • Start a chat, type or speak a request (e.g., “schedule a meeting tomorrow and send the agenda to my contacts”). Eta will call the appropriate tools, show progress in a status capsule, and return the final answer.

Target audience

  • Power users who want a programmable, cross‑app assistant on their phone.
  • Developers who wish to experiment with LLM‑driven automation on Android without rooting (root adds extra capabilities).
  • Anyone comfortable providing their own API key for a language model.

Limitations

  • The AI part runs on external services; Eta does not ship a local model.
  • Certain personal data (SMS, calendar, health) needs root or OEM‑specific hooks.
  • Xposed/LSPosed integration is optional; without it you lose the system‑assistant entry points.
  • The license is non‑commercial, so the app cannot be sold or redistributed without the author’s permission.

Why it matters Eta bridges the gap between desktop‑class coding agents (which have full file‑system and shell access) and mobile assistants that are usually limited to simple Q&A. By exposing Android APIs and a Linux terminal to an LLM, it enables truly agentic workflows on a phone – e.g., automatically gathering data from multiple apps, processing it with a script, and acting on the result, all driven by natural‑language prompts.


All information above is taken directly from the repository’s README.

Related

  • Project
  • Project
  • Project
  • Project
  • Project