Open source · Built for Android

Tell it once.
Walk away.

A fork of RikkaHub that turns the native Android LLM chat client into a real on-device agent.
70+ device tools, an in-app browser the AI drives, AI-authored workflows, scheduled jobs, SSH, music, file manager, and a remote Telegram bot.
All opt-in. Tell it what to do in plain language; it runs in the background, on your phone, on your terms.

Android 8+ / ARM64 · x86_64 / AGPLv3 / No telemetry
70+
device tools
5+
LLM providers
3
approval layers
100%
on your phone

One sentence. Your phone takes it from there.

Each of these is a one-line setup. The phone runs them in the background while you live your life.

"Every weekday at 9am, summarize my unread WhatsApp into one Telegram message.
"If my home server's disk fills up, ping me.
"Watch my notifications. If anything from my boss comes in, forward it to Telegram. Quietly ignore the rest.
"Find the PDF on my phone that mentions 'invoice' and read me the first paragraph.
"Take a screenshot every 30 minutes for the next 4 hours so I can see what I actually did all afternoon.
"Use Termux to build me a webpage listing everything you can do, then open it in my browser.
"When I plug in headphones at home WiFi after 7pm, start my evening playlist.
"Open my router's admin page, sign in with the saved password, and tell me which devices are eating the most bandwidth right now.
"Spin up two researches in parallel: one finds the cheapest one-way flight to Tokyo this month, the other lists hotels in Shibuya under $100. Tell me when both finish.

Everything an agent should have.

Twelve pillars, every one of them off by default until you turn it on.

Control your phone

Tap, swipe, scroll, screenshots, open apps, torch, brightness, volume, notifications, vibrate, share. Plus read battery, WiFi, signal, location, sensors, contacts, and SMS. 70+ tools, all built into Android, no extra apps required.

In-app browser

A real WebView the AI drives end-to-end. Watch it open URLs, click cookie banners, fill in forms, scroll, read the page back to you. Or send it on errands from Telegram and it streams a screenshot to your chat after every step. Built-in article extraction keeps token cost low.

Workflows

Tasker-class automation, but the AI writes the rules from natural language. 19 trigger types (WiFi, Bluetooth, headphones, geofence, app launch, notification, screen, charging, time, more) and 14 conditions (battery, sunset, foreground app, day-of-week). Receivers register only when needed.

Schedule anything

"Every Monday at 8", "every two hours", "next Friday at 3pm". Jobs survive reboots and battery saver. Choose AI-at-runtime decisions, or pre-bake a fixed action that runs without using AI tokens.

SSH from your pocket

Save your servers once and the AI can SSH into any of them on demand. Run a command, upload a file, pull down a backup, tail a log. Key-based auth, saved hosts, approval gating on first connect and destructive commands.

Telegram bot

Talk to your assistant from anywhere. Set up a private bot with @BotFather, then chat with it like a contact. Voice notes, photos, PDFs all work; voice gets transcribed locally via whisper.cpp. Inline approval buttons. Allowlist-only.

Find & manage files

Built-in file manager the AI can drive. "Find every PDF mentioning 'invoice' on my phone" works in one sentence. Read, save, copy, move, rename, delete. System folders are off-limits, even if you ask.

Music + media

Plays through Android's normal media controls (lock-screen art, headphone keys). Pause, resume, lower volume for a meeting and bring it back later. Even after a force-stop the AI picks up where you left off, same track and same position.

Skills

Drop a Markdown skill file into the app and the AI gains a new playbook to follow step-by-step. JavaScript skills run in a hidden WebView and open results in the in-app browser. A bundled featured catalog ships with a QR generator, Wikipedia query, an interactive map, and more.

Sub-agents

For long tasks the main assistant can dispatch a focused sub-agent in a clean side-context, optionally on a smaller cheaper model. Two or more run in parallel: one researches a topic while another updates your server. /stop cascades cancellation through every active child in one tick.

Doctor

A built-in health checkup. Settings, then Doctor, runs a top-to-bottom audit of permissions, background services, database integrity, network, Termux. Per-row auto-fix grants the missing permission, restarts the service, or rebuilds the chat search index. Smart enough to skip permissions you haven't enabled tools for.

Safety in three layers

Per-assistant toggles, every tool starts off. Per-call approval, Allow once, this chat, always, or deny. HARDLINE floor, wipe-everything, fork bombs, and shell tricks to bypass the rule are blocked unconditionally.

Up and running in under a minute.

No configuration needed for chat. Tools and the bot are opt-in once the app is open.

1

Install. Download the latest *-universal-debug.apk from Releases, allow install from unknown sources, open.

2

Add an LLM provider. Settings → Providers → pick one → paste API key. Pixel 8/9/10 users can flip on the built-in AICore card for fully on-device Gemini Nano.

3

Turn on what you want. Settings → Assistants → tap your assistant → Local Tools → flip the categories you want enabled.

4

(Optional) Telegram bot. Get a token from @BotFather, your numeric id from @userinfobot, then say in chat: "Set up the Telegram bot. Token …. My user id …. Set me as default chat. Enable it."

5

Just talk to it. If you don't turn anything on, the app behaves exactly like vanilla RikkaHub.

# Things to ask, once tools are on:

"Find every PDF on my phone that mentions
  'invoice' and read me the first paragraph."

"Every weekday at 9am, summarize my unread
  WhatsApp into one Telegram message."

"SSH into home-server and ping me if any
  partition is over 90% full."

"Watch my notifications. If anything from
  my boss comes in, forward it to Telegram."
# Build the APK yourself
$ git clone https://github.com/ExTV/rikkahub-agent.git
$ cd rikkahub-agent
$ ./gradlew :app:installDebug

# Requirements:
#   - Android SDK 37
#   - JDK 17
#   - bun (for the in-app web UI bundle)

# Run unit tests
$ ./gradlew :app:testDebugUnitTest

Put your phone to work.

Free, open source, runs entirely on your device. The hard part is deciding what to delegate first.

Common questions

If something isn't covered here, open an issue on GitHub.

Does this require root?
No. RikkaHub Agent uses standard Android permissions and accessibility-service APIs. No root, no Magisk, no custom ROM. Some advanced tools (notification listener, screen automation) need a one-tap permission grant in Settings; everything else is runtime permissions.
Is my data sent anywhere?
Only to the LLM provider you pick. If you choose AICore on a Pixel 8/9/10, inference is fully on-device and nothing leaves the phone. Passwords and API keys are never written to log files. Cloud backups skip your saved server credentials and Telegram bot token.
What LLM providers work?
OpenAI, Google, Anthropic, Ollama, and any OpenAI-compatible endpoint (Groq, Mistral, OpenRouter, vLLM, llama.cpp, LM Studio, etc.). Plus AICore for on-device Gemini Nano on Pixel 8/9/10+.
How are dangerous tools handled?
Three layers, strictest last. (1) Every tool category starts off; you flip on only what you want, per assistant. (2) Consequential tools (SSH commands, file deletes, app launches, sending messages) prompt you before running, with Allow once / this chat / always / Deny. (3) A short HARDLINE list (wipe everything, reboot, fork bombs, system file destruction, and shell tricks to bypass the rule) is blocked unconditionally. Even if you tell the AI to do one of these, it won't.
Do scheduled jobs survive reboot or battery saver?
Yes. Jobs are persisted and restored after reboot, and the cron service runs as a foreground service so Doze and battery saver don't kill it. Each job stores its prompt + assistant + trigger, so behavior is reproducible across runs.
How is this different from vanilla RikkaHub?
Upstream RikkaHub is a beautiful native LLM chat client. This fork keeps that UI down to the pixel and adds the agent layer: 70+ device tools, an in-app browser the AI drives, AI-authored workflows, scheduled jobs, sub-agents, the skills system (markdown plus JavaScript), SSH, Telegram bot, music + media controls, notification listener, file manager, screen automation, the Doctor diagnostic menu, and the three-layer approval gate. If you don't enable any of the new features, the app behaves exactly like vanilla RikkaHub.
Is this affiliated with the upstream RikkaHub team?
No. This is an independent fork. All credit for the chat client, provider abstraction, and UI design goes to Re-ovo and the upstream contributors. Issues with the agent layer should be filed here, not upstream.
What do the APKs in Releases mean?
Each release ships three debug-signed APKs: *-arm64-debug.apk for almost every modern phone, *-x86_64-debug.apk for emulators and x86 Chromebooks, and *-universal-debug.apk if you don't know which to pick (it bundles both, larger download). Releases are tagged vX.Y.Z-agent.N where the upstream RikkaHub version is vX.Y.Z and N is the agent revision on top. Google Play Protect may flag the install with a "this app may be harmful" warning since the APKs aren't Play-Store signed; tap "Install anyway", or temporarily turn off "Scan apps with Play Protect" while you install.
License?
AGPLv3, inherited from upstream. See the LICENSE file for the full text and the upstream segmented dual-licensing terms.