
Extensible, plugin-based debugging platform with runtime-loadable modules, DSL configuration, simultaneous session support, and type-safe serialized communication for customizable debugging workflows.
JetWhale is a next-generation, extensible debugging tool inspired by Flipper.
It is built with Kotlin and Jetpack Compose, making it especially familiar and approachable for Kotlin / Android developers. Thanks to its Kotlin-first design, JetWhale can be introduced with a minimal learning curve.
[!NOTE] This project is under active development. We welcome feedback as we work toward a stable release. Please note that the Plugin SDK APIs are not yet finalized and may change in the future.
🐳 Powerful Debugging Platform
⚙️ Easy Integration and Customization
🛜 Type-safe Communication with kotlinx.serialization
✅ Multiplatform Support
🤖 MCP Server Support (Experimental)
screenshot, click, type, scroll, drag, and
getAccessibilityTree
JetWhaleMcpCapablePlugin
🔥 Hot-Reloadable Plugin Development
runJetWhale downloads a real JetWhale host and launches it with your plugin loaded;
edit your plugin, re-stage, and the host hot-reloads it — no restartJetWhale's debugging tools are plugins, and you can build your own in your own repository with a fast, hot-reload dev loop:
com.kitakkun.jetwhale.host Gradle plugin and compile against the published SDK../gradlew :myPlugin:runJetWhale (it downloads the host for your
OS — no manual install)../gradlew :myPlugin:stageDevPlugin -t; the host reloads your plugin without
a restart — keeping its state for simple (method-body) edits, and recreating it for structural
changes (see the limitations).See docs/developing-plugins.md for the full guide.
JetWhale is a next-generation, extensible debugging tool inspired by Flipper.
It is built with Kotlin and Jetpack Compose, making it especially familiar and approachable for Kotlin / Android developers. Thanks to its Kotlin-first design, JetWhale can be introduced with a minimal learning curve.
[!NOTE] This project is under active development. We welcome feedback as we work toward a stable release. Please note that the Plugin SDK APIs are not yet finalized and may change in the future.
🐳 Powerful Debugging Platform
⚙️ Easy Integration and Customization
🛜 Type-safe Communication with kotlinx.serialization
✅ Multiplatform Support
🤖 MCP Server Support (Experimental)
screenshot, click, type, scroll, drag, and
getAccessibilityTree
JetWhaleMcpCapablePlugin
🔥 Hot-Reloadable Plugin Development
runJetWhale downloads a real JetWhale host and launches it with your plugin loaded;
edit your plugin, re-stage, and the host hot-reloads it — no restartJetWhale's debugging tools are plugins, and you can build your own in your own repository with a fast, hot-reload dev loop:
com.kitakkun.jetwhale.host Gradle plugin and compile against the published SDK../gradlew :myPlugin:runJetWhale (it downloads the host for your
OS — no manual install)../gradlew :myPlugin:stageDevPlugin -t; the host reloads your plugin without
a restart — keeping its state for simple (method-body) edits, and recreating it for structural
changes (see the limitations).See docs/developing-plugins.md for the full guide.