Maid is a free, MIT-licensed Android application built with React Native that runs GGUF language models entirely on-device through llama.cpp and connects to remote providers such as Anthropic, DeepSeek, Ollama, Mistral and OpenAI using the user's own API keys.
What it is
Maid is a mobile chat client for large language models, published under the MIT licence by the Mobile Artificial Intelligence project. It is written in TypeScript on React Native and shipped for Android, with a companion app called Maise that adds text-to-speech output. The application bundles llama.cpp so that GGUF model files execute locally on the phone, and it also acts as a single front end for a long list of remote inference services: API Route, Anthropic, DaoXE, DeepSeek, Mistral, Novita, Ollama, llmman, OrcaRouter and OpenAI. Configuration is done with the user's own API keys, and the README states that the app carries no telemetry and no ads.
The concrete problem it solves is fragmentation on a phone screen. Before an app like this, someone who wanted to talk to a local quantised model and also to several hosted providers had to open a different website or client for each one, and had no way to keep conversations, parameters and personas in one place while away from a desktop. Maid replaces that collection of separate provider interfaces with one Android client that treats local llama.cpp inference and remote APIs as interchangeable back ends, and it replaces the download-and-convert ritual by browsing curated Hugging Face models for installation in a single tap.
Key capabilities
- Local inference runs GGUF models fully on-device via llama.cpp, with no internet connection required.
- Remote providers include API Route, Anthropic, DaoXE, DeepSeek, Mistral, Novita, Ollama, llmman, OrcaRouter and OpenAI, each configured with a user-supplied API key.
- One-tap model downloads pull curated Hugging Face models such as Qwen, Phi, LFM and TinyLlama directly inside the app.
- Bring-your-own-model loading accepts any GGUF file from local storage.
- Conversation management supports creating, renaming, deleting, exporting and importing chats as JSON.
- Generation parameters are tunable per session, including temperature, top-p, top-k and context length, alongside a custom system prompt and assistant persona.
- Material You theming provides light and dark themes that follow the system preference, and optional account registration backs up settings and chat history through Supabase.
Who uses it and how
- Privacy-focused Android users who want a chat interface where prompts and outputs never leave the handset, achieved by pairing the app with a local GGUF file.
- Developers and researchers holding API keys for several providers who want to switch between Anthropic, DeepSeek, OpenAI or Ollama in one conversation list instead of several apps.
- Travellers and commuters who need offline generation on a phone, using downloaded GGUF models when no network is available.
- Users who want spoken replies, achieved by pairing Maid with the Maise companion app rather than configuring a separate speech client.
- Users who want settings and chat history carried across devices and are willing to register an account for Supabase-backed sync.
Getting started
Clone the repository with git clone https://github.com/Mobile-Artificial-Intelligence/maid.git, install dependencies with yarn install, then build with yarn build-android; the APK lands in android/app/build/outputs/apk/release. A prebuilt route also exists through the project's releases page, which carries the PDF user manual.
How it compares
The tools named in this project's topics are the runtimes and services it talks to, not alternatives to it: llama.cpp and Ollama execute models, while Anthropic, OpenAI, DeepSeek and Mistral host them. Maid is the Android client that sits above those interfaces, so its place in the stack is the chat surface rather than the inference engine. Nothing else in this registry occupies that exact position for a phone.
When to use it — and when not to
Choose Maid if the device is Android and the goal is one chat client spanning local GGUF inference and several hosted providers. Decline it if an iPhone is the target, since the README describes Android availability only, or if the intent is to run a server that other users connect to, because the app is a client rather than a hosted service. A self-hoster must supply an Android build toolchain with yarn, and anyone wanting cross-device backup must set up and operate a Supabase-backed account rather than relying on local files alone.
project readme (upstream, from github) — read inline

Maid - Mobile Artificial Intelligence Distribution

Maid is a free and open source application for interfacing with llama.cpp models locally, and with API Route, Anthropic, DaoXE, DeepSeek, Mistral, Novita, Ollama, llmman, OrcaRouter and OpenAI models remotely. Maid is built using React Native and is available for Android. The application is designed to be fast, efficient and user-friendly, making it easy for users to interact with their models on the go.
For text to speech functionality check out Maid's companion app Maise.
Features
- Local inference — run GGUF models fully on-device via llama.cpp; no internet required
- Remote providers — connect to API Route, Anthropic, DaoXE, DeepSeek, Mistral, Novita, Ollama, llmman, OrcaRouter, and OpenAI with your own API key
- One-tap model downloads — browse and download curated Hugging Face models (Qwen, Phi, LFM, TinyLlama, and more) directly from the app
- Bring your own model — load any GGUF file from local storage
- Conversation management — create, rename, delete, export, and import chats as JSON
- Customisable parameters — tune temperature, top-p, top-k, context length, and other generation parameters per session
- Custom system prompt — set a global system prompt and assistant persona
- Voice output — pair with Maise for text-to-speech
- Optional account sync — register / log in to back up settings and chat history via Supabase
- Material You theming — light and dark themes that follow your system preference
- Fully open source — MIT licensed, no telemetry, no ads
Manual
The user manual is available from releases in PDF format, or can be built from source using the instructions below.
Cloning
To clone the repository, use the following command:
git clone https://github.com/Mobile-Artificial-Intelligence/maid.git
Setup
Run the following command to install dependencies:
yarn install
Testing
Run the test suite with:
yarn test
Building
To build the project, use the following command:
yarn build-android
The output APK will be located in the android/app/build/outputs/apk/release directory.
Disclaimer
Maid is distributed under the MIT licence and is provided without warranty of any kind, express or implied. Maid is not affiliated with Huggingface, Meta (Facebook), MistralAi, OpenAI, Google, Microsoft or any other company providing a model compatible with this application.
Signing
Signing Key Fingerprint
MD5: BE:AC:29:41:F5:41:D2:26:42:DD:D1:A3:85:21:E1:16
SHA-1: 48:F6:DC:73:09:CE:19:C6:A9:70:7E:A2:9A:B7:6F:42:2D:41:32:30
SHA-256: 83:5E:D2:2E:D8:95:C4:C2:72:D6:98:AA:6E:4E:48:DB:0B:4E:36:DC:CF:70:10:D5:DE:15:03:4A:C9:E1:B9:6F
Upload Key Fingerprint
MD5: C0:86:A0:F3:E8:E5:4D:46:60:8A:37:4E:DB:11:CC:C7
SHA-1: 77:FC:77:2B:21:5E:9F:36:31:79:09:DF:7D:F4:1F:CA:96:0C:39:17
SHA-256: 54:EE:B9:9F:14:38:D9:68:9B:C2:C6:7F:F9:DD:A3:E3:D8:28:D3:80:76:46:B7:24:46:71:9F:61:D9:63:E6:98
License
This project is licensed under the MIT License.