SimoneAvogadro / android-reverse-engineering-skill
git clone https://github.com/SimoneAvogadro/android-reverse-engineering-skill.git
v1.1.0 · 5mo ago
🔥 on GitHub Trending today
Claude Code skill that decompiles Android APK/XAPK/JAR/AAR files and extracts the HTTP APIs an app uses.
Why you might care
Useful for documenting or reproducing an Android app's backend calls without its source code. It recovers original Kotlin class names from R8 metadata and extracts endpoints from Retrofit, OkHttp, Ktor, Apollo GraphQL and Koin setups, plus auth headers and request-signing schemes. Requires Java 17+ and jadx.
+3
stars, 24h · #3,797
+156
stars, 7 days · #813
+~90
stars, 30 days · #5,140
8.2k
★ total · +2% this week
928
forks · 11 open issues
Star history (as recorded here)
LanguageShell
LicenseApache-2.0
Created2026-02-02 (8mo ago)
Last push9d ago
Watchers36
OwnerUser
Seen on GitHub Trending
- 2026-10-21 — #10 weekly in shell · +145 ★
- 2026-10-20 — #10 weekly in shell · +156 ★
Links
- GitHub: github.com/SimoneAvogadro/android-reverse-engineering-skill
- Releases · Issues · Hacker News mentions
README excerpt
# Android Reverse Engineering & API Extraction — Claude Code skill A Claude Code skill that decompiles Android APK/XAPK/JAR/AAR files and **extracts the HTTP APIs** used by the app — Retrofit endpoints, OkHttp calls, hardcoded URLs, authentication patterns — so you can document and reproduce them without the original source code. > **First-class Kotlin support**: modern Android apps are Kotlin/KMP, heavily obfuscated with R8. This skill recovers the **original Kotlin class names** from metadata R8 cannot strip, and extracts APIs from **Ktor**, **Apollo (GraphQL)** and **Koin** — not just the classic Retrofit/OkHttp stack. See Kotlin name recovery below. > **Windows / PowerShell support (experimental)**: The `*.ps1` scripts alongside the bash ones are a recent community contribution, still being stabilised. For any issues please open an issue on **this** repository (not on the contributors' upstream forks): the PowerShell scripts are maintained here by @SimoneAvogadro. ## Table of Contents - What it does - Requirements - Installation - Usage - Repository Structure - References - Acknowledgments - Disclaimer - License ## What it does | Capability | Description | |------------|-------------| | **Fingerprint first (Phase 0)** | Triage an APK/XAPK in seconds — detect the framework (Flutter / React Native / Cordova / Xamarin / native-Kotlin), HTTP stack, obfuscation level and native libs *before* spending time on a full decompile | | **Decompile** | APK, XAPK, JAR, and AAR files using jadx and Fernflower/Vineflower (single engine or side-by-side comparison) | | **Recover Kotlin names** | Rebuild original `*Repository` / `*ViewModel` / `*UseCase` class names from R8-obfuscated binaries using Kotlin metadata that R8 cannot strip | | **Extract APIs** | Retrofit, OkHttp, Volley **and modern Kotlin/KMP stacks: Ktor, Apollo (GraphQL), Koin DI** — endpoints, hardcoded URLs, auth headers, tokens and HMAC request-signing schemes | | **Trace call flows** | From Activities/Fragments through ViewModels and repositories down to HTTP calls | | **Analyze structure** | Manifest, packages, architecture patterns | | **Handle obfuscation** | R8-resistant path/URL extraction plus strategies for navigating ProGuard/R8 output | ## Requirements **Required:** - Java JDK 17+ - jadx (CLI) **Optional (recommended):** - Vineflower or Fernflower — better output on complex Java code - dex2jar — needed to use Fernflower on APK/DEX files See `plugins/android-reverse-engineering/skills/android-reverse-engineering/references/setup-guide.md` for detailed installation instructions. ## Installation ### From GitHub (recommended) Inside Claude Code, run: [code] The skill will be permanently available in all future sessions. ### From a local clone [code] Then in Claude Code: [code] ## Usage ### Slash command [code] This runs the full workflow: dependency check, decompilation, and initial structure analysis. ### Natural language The skill activates on phrases like: - "Decompile this A
Blurb generated by claude-haiku-5-5 today. Star deltas marked ~ are extrapolated from partial history.