Flash, sideload and rescue a second Android device - straight from your rooted phone.
No PC. No cables to a computer. Just an OTG cable and Termux.
📲 Install · 🚀 Use it · 🧭 Features · 🔄 Update · 🆘 Help
FlashKit turns your rooted phone into a pocket flashing station. Plug a second device into it with an OTG cable and use big, friendly buttons (a real Android app screen, not a wall of text) to sideload ROMs, flash images, do GSI installs, fix a black-screen recovery, and more. It even has a built-in file manager with zip tools.
| You need | Why |
|---|---|
| 📱 A rooted Android phone (Magisk or KernelSU) | Root is used only for the adb / fastboot calls |
| 🖥️ Termux from F-Droid or GitHub | Not the Google Play version - it is outdated and can't run the plugins |
| 🔌 An OTG cable / adapter | To connect the device you want to flash |
| 🌐 Internet (first install only) | To download packages and the two plugin apps |
Tip
Install Termux and its plugins from the same place (all F-Droid or all GitHub). FlashKit's installer checks this for you.
pkg install -y git && git clone https://github.com/shivrajtode/flashkit && bash flashkit/install.shThe installer does the rest. Android may ask you a few things - this is what to tap:
| You see | Tap |
|---|---|
| "Allow Termux to access photos, media and files?" | Allow |
| Superuser request (Magisk / KernelSU) | Grant (tick remember) |
| Package installer "Do you want to install this app?" (only if you have no root) | Install - if it says "not allowed", tap Settings → turn on Allow from this source → go back → Install |
Note
Installing a plugin can make Android restart Termux once. That's normal - just open Termux again and the FlashKit menu opens by itself.
When the installer finishes, the FlashKit menu opens. Press Start FlashKit - the app window appears. 🎉
What does the installer actually do? (click to see)
- Installs
python,android-tools(adb + fastboot),git,curl,termux-api,dialog. - Installs the
termuxguiPython library. - Asks for storage access (so it can see your ROM zips).
- Creates the commands
flashkitandstart flashkit(plus a FlashKit entry for the Termux:Widget home-screen widget). - Reads your Termux signing key, then downloads Termux:GUI and Termux:API from GitHub / F-Droid - only a build signed with the same key is accepted - and installs them (silently with root, or via Android's installer).
- Opens FlashKit.
Plugins you already have installed and working are never touched. Run flashkit setup any time to repeat it safely.
Type this in Termux:
flashkit| Menu entry | What it does |
|---|---|
| Opens the app | |
| 🔧 Run manually (text menu) | The older keyboard-driven version, for when you prefer text |
| ⬇️ Update FlashKit | Gets the latest version from GitHub |
| 🧩 Check / install Termux:GUI + Termux:API | Re-checks the two plugin apps |
| 🩺 Doctor | Checks root, adb/fastboot, plugins, storage permission |
| 🔁 Open FlashKit when Termux starts | Turn on to skip typing the command |
Shortcuts: start flashkit or flashkit start open the app straight away.
| Button | What it does |
|---|---|
| Sideload a ROM zip | Pick a zip → FlashKit checks the device is ready → sideloads it, shows progress and the recovery's install log (live when your recovery allows it) |
| Flash an image | Choose a partition (boot, recovery, vbmeta, dtbo...) → pick the .img → confirm. Risky partitions need you to type the name |
| Install an APK | Install an app on the connected device (adb) |
| Reboot target | Reboot to system, recovery, bootloader or fastbootd |
| Erase a partition | Three gates (two warnings, then type the exact name) before anything is erased |
| GSI flash | Clean or dirty GSI install done in 3 safe stages (vbmeta → fastbootd → system/super) |
| Recovery fix | Fixes the black screen in some recoveries (mounts the vendor partition) |
| Refresh status / Fix connection | Re-detect the device, or repair adb/fastboot if they crash |
- Files - browse the target device's storage; push, pull, move and delete.
- Storage - your own phone's files, with zip tools: look inside a zip/tar without extracting · extract all or only what you pick · view a file inside · add, delete, rename and move things inside a zip · copy, move, rename, delete, compress.
- Console - ready-made adb / fastboot commands, or type your own.
- Settings - auto-fix, keep-screen-on, live install log, device auto-check, diagnostics, and Quit completely (force-stops everything).
📖 Step-by-step walkthroughs: docs/GUIDE.md · 📝 What changed: CHANGELOG.md
flashkit updateGets the newest version from GitHub, shows what's new, and refreshes anything needed. Your settings are kept.
| Command | Does |
|---|---|
flashkit |
Open the menu |
flashkit start · start flashkit |
Open the app right away |
flashkit manual |
Text-menu version |
flashkit update |
Update |
flashkit plugins |
Check / install Termux:GUI + Termux:API |
flashkit doctor (or check) |
Health check |
flashkit autostart on / off |
Open the menu when Termux starts |
flashkit setup |
Re-run the installer |
flashkit uninstall (-y for everything, no questions) |
Remove FlashKit - asks what to delete (settings, the app files, Termux:GUI/API), or does all of it with -y |
"Signature" or "plugin" message / Termux:GUI won't install
Termux and its plugins only work together if they're signed by the same key. FlashKit reads your Termux's key and picks the matching download automatically. If it says nothing matches, reinstall Termux, Termux:GUI and Termux:API all from F-Droid (or all from GitHub), then run flashkit plugins.
Termux closed while installing
Normal - Android restarts Termux when a plugin is installed. Open Termux again; the FlashKit menu opens on its own (or type
flashkit).
"Root denied" / the app can't flash
Open your root manager (Magisk / KernelSU) and allow **Termux**. Then run
flashkit doctor - it should say root works.
The target device isn't detected
- Use a good OTG cable and plug it into the target end correctly; try another cable.
- Put the target in the right mode (adb on, or bootloader / fastbootd, or recovery with sideload).
- Tap Refresh status on Home. If the card says adb/fastboot are broken, tap Fix connection now.
- MediaTek BROM and Qualcomm EDL modes are recognised and explained, but need other tools (SP Flash Tool, mtkclient, EDL tools).
The app window doesn't open
Run
flashkit doctor. Make sure Termux:GUI is installed, then try flashkit plugins. Look at ~/flashkit_gui.log for details. If a window still won't appear, allow Display over other apps for Termux and Termux:GUI in Android settings.
A job seems stuck
Tap Cancel job on the job screen - it stops the whole process tree. Then Copy the output if you want to share it.
How do I uninstall FlashKit completely?
flashkit uninstall -yThat removes the flashkit / start flashkit commands, the Termux:Widget shortcut, the auto-start hook, FlashKit's settings and logs, the app files themselves, and uninstalls Termux:GUI and Termux:API. Run flashkit uninstall with no flag to be asked about each of those instead (handy if you want to keep the plugin apps for something else).
Where are the logs?
~/flashkit_gui.log (app) and ~/.flashkit/ (installer). Open an issue and paste flashkit doctor.
Warning
Flashing can erase data or make a device unbootable. Use files made for your exact device, charge both devices, back up what matters, and read each confirmation before you tap. FlashKit is provided as-is, at your own risk.
If FlashKit saved you a trip to a PC, drop a ⭐ on the repo - it really helps!
MIT licensed · see LICENSE
