This guide takes you from nothing installed to TinyKit running in about five minutes.
- What you need
- 1. Install Shizuku
- 2. Start Shizuku
- 3. Install TinyKit
- 4. First run
- Starting Shizuku from TinyKit
- What works without Shizuku
- Finding your way around
| Phone | Android 7.0 (API 24) or newer. No root. |
| Shizuku | thedjchi's fork (recommended) or the original |
| A way to start Shizuku | Wireless debugging (Android 11+), a computer with adb, or Termux with shizuku-termux |
Shizuku runs a small background service with the same privileges
as adb shell. TinyKit sends its commands through that service, which is why it needs no root.
We recommend thedjchi's fork. Its Watchdog restarts Shizuku if Android kills it, and it supports start and stop intents with an auth token, which TinyKit can use (see below). The standard Shizuku from shizuku.rikka.app works too, including TinyKit's Start and Stop buttons (see below).
Shizuku has to be started again after every reboot. Choose whichever method suits you:
- Turn on Developer options: open Settings → About phone and tap Build number seven times.
- Open Shizuku and tap Pairing, then follow its step-by-step guide to pair with Wireless debugging.
- Tap Start in Shizuku.
adb shell sh /sdcard/Android/data/moe.shizuku.privileged.api/start.shShizuku shows the exact command for your version under Start by connecting to a computer.
Install Termux from F-Droid and set up shizuku-termux once. After that, TinyKit's Start button and the Shizuku tile can start Shizuku for you. See Starting Shizuku from TinyKit.
Download TinyKit-<version>.apk from the
latest release and open it. You may need
to allow your browser or file manager to install apps.
To build it yourself instead, see Building.
- Open TinyKit. The Shizuku tab shows Shizuku's status.
- If it says "Shizuku is running. Allow TinyKit to use it.", tap Allow and accept Shizuku's prompt.
- The status changes to Shizuku is running ✓.
On that first connection, TinyKit uses Shizuku once to grant itself two things:
WRITE_SECURE_SETTINGS, so its settings toggles and Quick Settings tiles keep working when Shizuku is not running.- The
GET_USAGE_STATSapp-op, used by Unused apps and Storage by app.
Both are standard grants that any adb shell can make. They show up in Android's own records,
and uninstalling TinyKit removes them.
The Shizuku tab has Start and Stop buttons, and there is a one-tap Shizuku tile. The buttons work with the standard Shizuku app and with forks. Start tries these in order:
- The auth token, if one is saved and your Shizuku has start intents.
- Termux, if it's installed.
- Otherwise it opens Shizuku so you tap its own Start button.
thedjchi's fork can be started and stopped with an intent carrying a secret token.
- In Shizuku, open Settings and find the start/stop intent parameters. Copy the token.
- In TinyKit, tap Auth token on the Shizuku tab and paste it.
Start and Stop then go straight to Shizuku. Stop also works properly with the Watchdog on, because Shizuku knows the stop was intentional.
With no token saved, Start asks Termux to run shizuku start from
shizuku-termux.
- The first time, Android asks you to allow TinyKit to Run commands in Termux environment. Allow it.
- If Termux says it doesn't allow external apps, run the shizuku-termux install command in
Termux once. It sets
allow-external-apps=true. - If Termux is installed but shizuku-termux isn't, TinyKit opens Shizuku instead, as below.
The standard Shizuku app has no start intents, and without root or a computer it can only be started from its own screen. So with no token and no Termux, Start opens Shizuku on its Start button. Tap it (the first time, Shizuku walks you through pairing with Wireless debugging), then go back: TinyKit notices Shizuku is running and connects by itself.
- Forks with the auth token saved: Stop uses Shizuku's own stop intent.
- Otherwise: Stop closes the Shizuku app first, so a Watchdog can't start Shizuku again, then asks Shizuku's server to end, and makes it end if it hasn't within 3 seconds.
- Shizuku running but TinyKit not allowed: with Termux and shizuku-termux, Stop runs
shizuku stopthere.
The Shizuku tab, the Shizuku tile and Shut Up all stop Shizuku this same way.
These keep working when Shizuku is stopped (the tiles thanks to the one-time self-grant):
- These Quick Settings tiles: Developer options, USB debugging, Hide dev options, Ad-block DNS, Grayscale, Extra dim, Screen timeout and Caffeine (the matching switches inside the app still need Shizuku)
- Phone info, Network info, Charging info, Temperatures and Device IDs (some show fewer details)
- Speed up phone and the Free RAM tile on Android 13 and older (closing cached apps only)
Everything else needs Shizuku running: per-app tools, logs, file recovery, saved Wi-Fi networks, and more. While Shizuku is off, those rows are dimmed and marked Requires Shizuku, and rows that work without it look normal.
| Tab | What's there |
|---|---|
| Shizuku | Shizuku status, Start and Stop, the auth token, the Shizuku tile, and the search bar |
| Privacy | Privacy toggles, all sensors off, analytics and telemetry, saved Wi-Fi networks |
| Apps | Fake permissions, default apps, hide, unused, storage, recent access, mixed audio, running and background apps, APK backup |
| System | Force dark, disable HW overlays, animation speed, quick panel editor, TinyKit tiles, run a command, file recovery, settings backup, advanced reboot, cleanup, network tweaks |
| Info | Phone, network, charging, temperatures, device IDs, battery usage, wake-ups, vibration, app and crash logs, updates |
The search bar at the top of the Shizuku tab searches every tool by name and description.
Every search word has to match, so wifi qr finds Saved Wi-Fi networks. Tapping a result
opens it.
Next: the full feature reference, or the Fake permissions guide.





