Android open testing

Hermes runs on your phone.

Flames keeps the agent loop, the conversation history and the tool calls on the device. It talks to any OpenAI-compatible endpoint, and it can open a WebSocket to your own Hermes server so that server can call the phone.

Hermes AI Agent & Pocket Node on your Android phone

34 Tools in beta
2 Runtime modes
FTS5 Local memory
v1.0 Open testing
01 / Architecture

Two ways to run the agent

Both modes share the chat screen, the tool permissions and the local memory store. You can keep a profile for each.

Mode 01 / on device

Direct mode

Flames sends chat requests straight to an OpenAI-compatible endpoint. The ReAct loop, tool dispatch and conversation state run on the phone.

  • Streaming requests to /v1/chat/completions
  • Hermes Server, OpenAI, Anthropic, Gemini, Groq, OpenRouter, 9router or a local Ollama
  • Photos and files can be attached to a turn
  • Memory search runs against a SQLite FTS5 index on the device
POST /v1/chat/completions
Mode 02 / remote

Pocket node mode

The phone opens a WebSocket to your Hermes gateway and registers as a device node. Hermes on a laptop or VPS sends RPC calls, and results stream back to that session.

  • Bidirectional RPC on /device/ws
  • Remote calls for camera, GPS, battery state and alarms
  • Tier checks run on the phone before a call executes
  • Reconnects with backoff and reports battery and network state
WSS /device/ws
02 / Capabilities

What the open testing build can do

The registry holds 42 tools. The Android open testing build enables 34 of them. The other eight need notification access, accessibility service data, clipboard reads, raw file access or NFC balance reads, so they stay out of this beta.

01 / Chat

Local conversation

  • Replies stream token by token and render as markdown.
  • Tool calls appear as cards you can expand to read parameters and results.
  • A camera photo can be attached to a turn for vision models.
  • Long threads stay on the phone and can be searched offline.
02 / Models

Providers and profiles

  • A profile stores a base URL, model name and API key.
  • Works with Hermes Server, OpenAI, Anthropic, Gemini, Groq, OpenRouter, 9router and Ollama.
  • Separate bots can hold separate prompts, models and keys.
  • Keys are kept in Android secure storage.
03 / Assist

Calendar and reminders

  • Reads today's agenda and checks for overlapping events.
  • Creates calendar entries with a reminder and notes.
  • Sets device alarms through the Android alarm manager.
  • Looks up contacts when you ask it to message someone.
04 / Voice

Voice and triggers

  • Voice input uses the on-device speech recognizer.
  • Replies can be spoken with the system TTS engine.
  • A Quick Settings tile opens Flames from the status bar.
  • A long press on the assistant key opens the same chat, and an NFC tag can start a saved prompt.
05 / Sensors

Health and location

  • Health Connect supplies steps, sleep sessions and heart rate readings.
  • GPS and reverse geocoding answer location questions.
  • A geofence can start a task when you arrive or leave a place.
  • Navigation intents open your installed maps app.
06 / Memory

Memory and permissions

  • Conversations and user facts go into a local SQLite database with FTS5 indexing.
  • Nothing in that database leaves the phone unless a prompt sends it to your model provider.
  • Each tool carries a tier: automatic, ask first, or block until you approve.
  • Approval sheets show the tool name and its parameters before it runs.
03 / Early access

Android open testing

The beta runs on Google Play closed testing. Register the Google account you use on your phone, then accept the test invite. Android only for now. There is no iOS build.

Step 1

Register your Play account

Use the same address you sign in with on the Play Store. Testers are added in batches.

The address is used for the tester track only. No newsletter, no resale.

Step 2

Join the test or install the APK

Once your account is on the tester list, the Play link installs and updates the app. The APK on GitHub Releases installs the same beta build without Play.

If Play says the app is unavailable, your address may still be syncing to the tester track. After an hour, send the registration again or use the APK.

04 / Development

Build it from source

Three commands get the project on a connected device or emulator.

1

Check the toolchain

You need Flutter 3.22 or newer and an Android SDK.

flutter doctor -v
2

Clone the repository

Then add a server profile in the app settings, or keep the default endpoint.

git clone https://github.com/indrakurniawan902/flutter-ai-agent.git
cd flutter-ai-agent
3

Run it

Fetch the packages and start the app with hot reload.

flutter pub get
flutter run
Open on GitHub

Package ai.hermes.flames, min SDK 26 (Android 8.0), Flutter 3.22+