zeroclaw/clients/android
Preventnetworkhacking dd94cac1bd feat(android): Phase 2 - UniFFI bridge and settings UI
- Add android-bridge crate with UniFFI bindings
- ZeroClawController interface for Kotlin
- AgentStatus, ChatMessage, ZeroClawConfig types
- Settings screen with provider/model selection
- API key storage via Android Keystore ready
- Gradle task for native lib build

Part of Android Phase 2 - Core Features
2026-02-26 21:00:48 -08:00
..
app feat(android): Phase 2 - UniFFI bridge and settings UI 2026-02-26 21:00:48 -08:00
gradle/wrapper feat(android): add Android client foundation 2026-02-26 20:52:43 -08:00
build.gradle.kts feat(android): add Android client foundation 2026-02-26 20:52:43 -08:00
gradle.properties feat(android): add Android client foundation 2026-02-26 20:52:43 -08:00
README.md feat(android): add Android client foundation 2026-02-26 20:52:43 -08:00
settings.gradle.kts feat(android): add Android client foundation 2026-02-26 20:52:43 -08:00

ZeroClaw Android Client 🦀📱

Native Android client for ZeroClaw - run your autonomous AI assistant on Android.

Features

  • 🚀 Native Performance - Kotlin/Jetpack Compose, not a webview
  • 🔋 Battery Efficient - WorkManager, Doze-aware, minimal wake locks
  • 🔐 Security First - Android Keystore for secrets, sandboxed execution
  • 🦀 ZeroClaw Core - Full Rust binary via UniFFI/JNI
  • 🎨 Material You - Dynamic theming, modern Android UX

Requirements

  • Android 8.0+ (API 26+)
  • ~50MB storage
  • ARM64 (arm64-v8a) or ARMv7 (armeabi-v7a)

Building

Prerequisites

# Install Rust Android targets
rustup target add aarch64-linux-android armv7-linux-androideabi x86_64-linux-android

# Install cargo-ndk
cargo install cargo-ndk

# Android SDK (via Android Studio or sdkman)
# NDK r25+ required

Build APK

cd clients/android
./gradlew assembleDebug

Build with Rust

# Build native library first
cargo ndk -t arm64-v8a -o app/src/main/jniLibs build --release

# Then build APK
./gradlew assembleRelease

Architecture

┌─────────────────────────────────────┐
│  UI (Jetpack Compose)               │
├─────────────────────────────────────┤
│  Service Layer (Kotlin)             │
│  ├─ ZeroClawService                 │
│  ├─ NotificationHandler             │
│  └─ WorkManager Jobs                │
├─────────────────────────────────────┤
│  Bridge (UniFFI)                    │
├─────────────────────────────────────┤
│  Native (libzeroclaw.so)            │
└─────────────────────────────────────┘

Status

🚧 Phase 1: Foundation (In Progress)

  • Project setup
  • Rust cross-compilation
  • UniFFI bindings
  • Basic JNI bridge
  • Foreground service

Contributing

See RFC for design decisions.

License

Same as ZeroClaw (MIT/Apache-2.0)