- Android Studio — Ladybug Feature Drop 2024.2.1 or later
- JDK — 17 (set via
jvmToolchain(17)in the project) - Android SDK — compileSdk 36 / targetSdk 36 (Android 16)
- Kotlin — 2.1.0 (managed by Gradle)
- Gradle — wrapper is included in the repo
- A local LLM server such as LM Studio or Ollama (optional, for local mode)
- Brave Search API key (optional — for web search; see step 6 below)
git clone https://github.com/TechMitten/LMSA.git
cd LMSALaunch Android Studio and select File → Open, then point it at the cloned LMSA directory.
Android Studio will prompt you to sync — click Sync Now.
Alternatively, run from the terminal:
./gradlew --no-daemon buildThe first sync will download all dependencies (AGP 8.13.2, Jetpack libs, etc.) and may take a few minutes.
Create a local.properties file in the project root (if it doesn't already exist) and add any keys you need:
# Brave Search — enables the web-search feature
BRAVE_API_KEY=your_brave_api_key_here
# Pollinations — enables AI image generation
POLLINATIONS_API_KEY=your_pollinations_key_hereThese keys are read at build time and injected via
BuildConfig. The app compiles without them; the corresponding features will simply be disabled.
From Android Studio:
- Select the app module and the debug (or release) build variant in the Build Variants panel.
- Click Build → Build Bundle(s) / APK(s) → Build APK(s).
From the terminal:
# Debug APK
./gradlew assembleDebug
# Release APK (requires signing configuration)
./gradlew assembleReleaseOutput APKs are located at:
app/build/outputs/apk/debug/app-debug.apk
app/build/outputs/apk/release/app-release.apk
From Android Studio:
- Connect your Android device (USB debugging enabled) or start an emulator.
- Select the device from the run dropdown.
- Click Run ▶ (or press
Shift + F10).
From the terminal:
adb install app/build/outputs/apk/debug/app-debug.apkOnce the app is running:
- Open Settings inside LMSA.
- Enter the IP address and port of your LM Studio or Ollama server (e.g.
192.168.1.100:1234). - Save and start chatting.
This project is licensed under the MIT License.
See the LICENSE file for the full text.