Quick Answer: Mika is an open-source Android AI agent that takes a one-sentence request and carries it out on your phone. It drives apps on a separate background screen so you can keep using your device, browses the web in a built-in browser, and runs scripts in a local Linux sandbox. You supply your own model API key, and requests go only to the provider you configure.
Most phone assistants stop at voice commands. Ask one to "summarize today's group chat" and you get a polite refusal or a web search. Mika takes a different route: it looks at the screen, finds the button, taps, types, and scrolls, the way a person would. The project is in public beta, so it's worth knowing exactly what it does, what it asks you first, and where it breaks before you hand it your accounts.
How Mika Works on a Hidden Background Screen
The key design choice is the background screen. Mika runs apps on a separate display that you can't see, so you can keep scrolling your own home screen while it works. The chat page shows a small live preview of what it's doing.
This matters because most automation tools either take over your screen or need a computer on the other end. Mika does neither. It reads the UI tree, and when an app draws its own interface without accessible labels, it falls back to on-device text recognition bundled in the APK. If you configure a vision-capable model, it can also locate buttons and input fields from screenshots.
Here's the cause-and-effect chain that makes this work in practice. Mika launches its built-in phone helper, which relies on Android's own wireless debugging to start. Once that helper is running, Mika can open apps and interact with them on the hidden screen. If wireless debugging gets switched off, for example after a reboot or a Wi-Fi change, the helper can't start, and tasks stall until you re-enable it.
The Setup Path: What You Actually Need
Here are the requirements as the project documents them:
- Install: Android 11 or later.
- Run tasks: Android 13 or later, because the background screen and built-in helper need it.
- Recommended: Android 14 or later. The background screen gets its own focus there, so typing on your main screen isn't disrupted, and parallel tasks in different conversations need it.
- Sandbox: arm64 devices only. Other devices install normally and show "not supported" for the sandbox.
- Model: an API key for a model that supports tool calling.
The one-time wireless debugging pairing uses a 6-digit code entered on the phone itself. No computer or USB cable is needed. The project's setup guide walks through each step. If you only want web browsing, file handling, or chat, you can skip pairing entirely.
Models are configured by provider. Presets include DeepSeek, Qwen, Kimi, Zhipu, OpenRouter, Anthropic, Gemini, OpenAI, and local runners like Ollama and LM Studio. Any OpenAI-compatible endpoint works. You can also sign in with a ChatGPT Plus or Pro subscription instead of an API key.
Ask Mode vs. Autonomous Mode
This is where most people's assumptions go wrong. You might expect the default "ask" mode to confirm anything risky. It doesn't. Ask mode confirms only steps that spend money: placing orders, submitting payments, or confirming a displayed amount due. Messaging, posting, submitting forms, deleting items, and changing settings all run without a prompt.
That's a deliberate trade-off. The most expensive mistake is a charge you didn't approve, so that's the one gate. But a wrong message sent to the wrong contact is also hard to undo, and Ask mode won't stop it.
| Mode | Spending steps | Messages, forms, deletes | Login, CAPTCHA, payment password |
|---|---|---|---|
| Ask (default) | Paused for a one-time yes or no, showing the store, item, and amount | Done directly | Handed to you to complete |
| Autonomous | Done directly | Done directly | Handed to you to complete |
The table shows one thing both modes share. Logins, verification codes, and payment passwords always go to you. Mika posts a notification, you move the app to the main screen, complete the step, and hand control back. Mika then re-checks the state before continuing.
Two cautions follow. First, switching modes mid-task affects only the steps after the switch. Second, when a task runs while you're away, such as a scheduled reminder, Ask mode won't wait for you at a spending step. It skips that step and reports which one didn't happen.
Where It Breaks: Failure Modes Worth Knowing
Any honest review should cover where automation fails. Three failure modes show up repeatedly in agent tools like this one.
Secure screens. Some pages, like payments and password entry, block screenshots at the OS level. Mika can't see that content, so it can't read or recognize text there. Those pages need your hands. The project's FAQ makes this explicit.
Unlabeled UIs. Apps that draw everything themselves, with no accessible control names, depend on OCR and vision. OCR can misread small or stylized text. Vision helps only if you've configured a model that handles images. Without one, a custom-drawn button may simply be invisible to the agent.
Cross-app handoffs. When a task moves from one app to another, for example a checkout page opened by a food delivery app, Mika has to recognize the handoff. Where it can't, it stops and asks you to act on the screen.
There's also a platform risk the project states plainly: automating third-party apps and websites may violate their terms and can lead to restricted features or account bans. Use it with accounts you can afford to lose, and keep important actions in Ask mode.
Privacy and Your Data
Mika has no server of its own. The project's README says your messages, screen content, and screenshots go only to the model provider you configure. API keys and memory are encrypted with the Android Keystore and stored on the device. Conversations, run logs, and token usage stay local. Update checks contact GitHub only.
That design is the main reason to choose a self-hosted agent over a cloud one, but it puts the security burden on you. Pick a provider whose data terms you accept. If you point Mika at a local model running on your own machine, traffic stays on your network. Note that Mika warns when an unencrypted endpoint outside your local network is configured, because your API key and conversation could be visible to others on that network.
Frequently Asked Questions
What is an Android AI agent?
An Android AI agent is software that reads your phone's screen and operates apps for you, such as tapping buttons, typing, and scrolling, to complete a task from a plain-language request. Unlike a voice assistant, it works inside third-party apps. Mika is one example, and it runs on a hidden background screen so you can keep using the phone.
How do I set up Mika to control my phone apps?
Install the APK from the GitHub Releases page, then pair wireless debugging once through the in-app setup wizard using the 6-digit code. Add a model provider with your API key, run the connection test, and try a sample request. You can skip pairing if you only need web browsing, files, or chat.
Why does Mika ask before paying but not before sending a message?
In the default Ask mode, Mika confirms only steps that spend money, because a charge is the costliest mistake to reverse. Messages, form submissions, and deletions run directly. If you want confirmation for those, you can't get it in Ask mode, so review important tasks and keep sensitive accounts out of automated flows.
Can I run Mika with a local model instead of a cloud API?
Yes. Choose the custom provider option and enter your local endpoint, such as an Ollama or LM Studio address on your home network. Keep in mind that the main model must support tool calling, and that a model without image support can't locate buttons from screenshots. Local models often need to be checked against a real task before you rely on them.
Final Takeaway
If you want an Android AI agent that acts instead of just answering, Mika is worth testing, with clear expectations. Start in Ask mode, use a non-critical app for a first run, and read the notification whenever it hands you a login or payment. Try one everyday task this week, such as summarizing a group chat, and note how many steps it needed and where it paused. Pass this to someone who keeps wrestling with manual phone chores.