← All work

Alma Android

An unofficial Android client for Alma Desktop, the AI agent on my Mac. Pair a phone with one or more desktops and keep working with threads, agents and files away from the keyboard. MIT, v0.1.4, October 2026.

Open-source Android appTypeScript · React · CapacitorDownload the APK ↗︎Source on GitHub ↗︎
Alma Android unfolded: the thread list collapsed to a navigation rail beside a conversation with a reply in progress, drawn from synthetic fixture data.
ALMA ANDROID · UNFOLDED · FIXTURE DATA

The starting point

A desktop agent is no use once you stand up. I wanted to follow a task, answer its question or approve a step from a phone, with no third-party server in between.

My contribution

TypeScript and React in Capacitor: QR pairing, an end-to-end encrypted relay with LAN direct on shared Wi-Fi, streaming replies with tool calls and approvals, file diffs, foldable two-pane layouts, English and Chinese, SHA-256-verified in-app updates.

A key decision

Built the way the product works: Alma and its agent crew plan, code, test and release while I steer and test on real devices. No push service, so alerts are local and only live with the connection.

What came out of it

A public repository with releases and a changelog, used daily on my phone and foldable, tests in CI. The screenshot is the unfolded layout on synthetic fixture data: no real conversations or credentials.

A conversation with Shaun’s AI

Ask about my work, or explore with /projects.