ShizukuTools

Provider object for the Shizuku-backed shell tools. Wires the shared :droid-mcp-shell-core tool set against ShizukuShellBackend.

Shizuku activation is a special-access flow (the user installs the Shizuku app, activates it via wireless debugging on Android 11+ or ADB, then grants the runtime permission to this host app). See docs/SHIZUKU.md.

Functions

Link copied to clipboard
fun all(context: Context): List<McpTool>
Link copied to clipboard
Link copied to clipboard

Settings-style intent for the host to launch when Shizuku isn't ready — either opens Shizuku itself (so the user can activate it) or the Play Store install page if Shizuku isn't installed yet. The host activity should add Intent.FLAG_ACTIVITY_NEW_TASK if launching from a non-activity context.

Link copied to clipboard

True when both the Shizuku binder is reachable AND the host has been granted the permission. False if Shizuku isn't installed/activated or if the user hasn't granted access.

Link copied to clipboard
Link copied to clipboard
fun requestPermission(requestCode: Int)

Open the Shizuku app's permission flow. If Shizuku is installed and pingable, calls Shizuku.requestPermission(requestCode) which surfaces a system dialog. If not installed, returns a launch intent for the Play Store / install screen.

Link copied to clipboard

No Manifest.permission.* runtime grants — Shizuku's permission is its own runtime check via Shizuku.checkSelfPermission(), gated by permissionStatus.

Link copied to clipboard