1 Prerequisites
- Android device running Android 8.0 (API 26) or higher
- A Lumo API key
- Optional: Termux installed for advanced networking commands
2 Install LumoDroid
📦 Pre-built APK (recommended)
- Download the
app-release.apk file
- Open the file manager on your Android device and tap the APK
- Allow installation from unknown sources if prompted
- Follow the on-screen instructions to install
🔧 Build from Source
# Clone the repository
git clone <repo-url>
cd LumoDroid
# Build the debug APK
./gradlew assembleDebug
# Install on connected device
adb install -r app/build/outputs/apk/debug/app-debug.apk
3 Configuration
⚙️ Set Your API Key
On first launch:
- Open LumoDroid
- Tap the gear icon in the top-right corner
- Enter your Lumo API key in the input field
- Tap Save
- You're ready to chat!
Note: Without an API key, you will see an error when trying to send a message. The key is stored locally on your device and never transmitted anywhere except directly to the Lumo API.
🔐 Grant Permissions
LumoDroid will automatically request the following runtime permissions on first launch:
SMS (Read & Send)Reading and sending SMS messages
ContactsSearching device contacts
LocationGPS location queries
NotificationsAndroid 13+ notification posting
Call PhoneMaking phone calls
StorageFile access
Wi-Fi StateWi-Fi network information
📂 All Files Access (optional but recommended)
For full file management capabilities — recursive directory listing with folder sizes:
- When prompted, go to "All Files Access" settings page
- Find LumoDroid in the list
- Toggle "Allow access to manage all files" to ON
- Return to the app
Note: Without this permission, file operations are limited to app-specific directories.
4 Termux Integration
LumoDroid integrates with Termux to provide advanced networking and system tools not available in Android's default shell.
Step 1: Install Termux
Download Termux from F-Droid (recommended) or the GitHub Releases.
Important: Do NOT install Termux from the Google Play Store — it is outdated and non-functional.
Step 2: Enable External App Access
- Open Termux
- Create or edit the Termux properties file:
nano ~/.termux/termux.properties
- Add or uncomment this line:
allow-external-apps=true
- Save (
Ctrl+O, Enter) and exit (Ctrl+X)
- Fully close Termux (type
exit until it closes, or swipe it away)
- Reopen Termux to apply changes
Step 3: Grant Display Over Other Apps
Termux needs this to display command sessions when invoked from LumoDroid:
- Go to Settings → Apps → Termux → Display over other apps
- Toggle "Allow display over other apps" to ON
Step 4: Grant RUN_COMMAND Permission
This allows LumoDroid to send commands to Termux. It should auto-grant, but if you see an error:
adb shell pm grant com.lumodroid com.termux.permission.RUN_COMMAND
Or reinstall LumoDroid after Termux is installed — the permission request will fire automatically.
⚡ How It Works
When you ask LumoDroid to run a command like dig, nslookup, whois, nmap, or traceroute:
- LumoDroid detects the command isn't available in its sandbox
- It routes the command to Termux via the
RunCommandService intent
- The command executes in Termux's background shell
- Output is written to a shared file (
/sdcard/LumoDroid/termux_results/)
- LumoDroid reads the output and displays it in the chat
📋 Supported Termux Commands
DNSdig nslookup whois
Network Scanningnmap traceroute tcpdump ss ip ifconfig arp route
File Transfercurl wget ssh scp rsync
Mediaffmpeg convert
Programmingpython pip node npm ruby perl php git
Systemlsof strace htop iftop nethogs iptables
Archivetar
Install missing tools via Termux:
pkg install whois nmap traceroute curl wget git python nodejs ffmpeg
When a command isn't installed, LumoDroid will detect the error and suggest the correct pkg install command.