
Android Reverse Engineering Skill
github.com/simoneavogadro/android-reverse-engineering-skill- Category
- Cybersecurity
- Rank
- No. 416Tools index
Previous survey · No. 422 ·
- Pricing
- Open Source
- Type
- TOOL
- Builder
- simoneavogadro
- GitHub
- 7.7k stars
- Latest release
- v1.1.0
- Date
About
A Claude Code skill that decompiles Android APK/XAPK/JAR/AAR files and extracts HTTP APIs, Retrofit endpoints, and authentication patterns from apps without source code. Helps security researchers and developers analyze app structure and trace API call flows through obfuscated code.
What it does
It organizes Android binary analysis into a staged workflow. First it fingerprints the package to identify its framework, networking stack, native libraries, and likely obfuscation. For native apps, it then guides decompilation, architecture inspection, Kotlin name recovery, call-flow tracing, and structured endpoint documentation.
Why it's ranked here
The strongest case is its practical triage before expensive decompilation, plus unusually broad coverage of modern Kotlin networking and dependency injection patterns. Side-by-side decompiler output and metadata-based name recovery address common failure modes. However, the Windows implementation is explicitly experimental, and several useful tools remain optional external dependencies.
What's good
The fingerprint pass can prevent wasted work by identifying Flutter, React Native, Cordova, Xamarin, or native Android before decompilation. It scans bytecode strings for networking and dependency injection signals even when names are obfuscated. It also supports comparing two decompilers and preserves partial output when an engine reports errors.
Tradeoffs
Java 17 and jadx are mandatory. Better Java output may require Vineflower or Fernflower, while processing Android packages through those engines also needs dex2jar. Name recovery applies specifically to obfuscated Kotlin metadata and has documented limits. Cross-platform frameworks require separate tools, and PowerShell support is still described as experimental.
How to use it well
Use it for authorized security research, interoperability work, malware analysis, incident response, education, or CTF exercises. Start with fingerprinting, then continue only when the package contains native Java or Kotlin application logic. Treat extracted endpoints as leads for manual tracing and documentation. It does not replace framework-specific tooling for Flutter, React Native, Cordova, Xamarin, or .NET applications.
Technical notes+
The Claude Code marketplace and plugin manifests are .claude-plugin/marketplace.json and plugins/android-reverse-engineering/.claude-plugin/plugin.json. The user-facing command is defined in plugins/android-reverse-engineering/commands/decompile.md, while plugins/android-reverse-engineering/skills/android-reverse-engineering/SKILL.md describes the phased workflow. plugins/android-reverse-engineering/skills/android-reverse-engineering/scripts/fingerprint.sh inspects ZIP listings and DEX strings before decompilation. plugins/android-reverse-engineering/skills/android-reverse-engineering/scripts/decompile.sh validates APK, XAPK, JAR, and AAR inputs, supports jadx, Fernflower or Vineflower, and dual-engine output, handles XAPK extraction, and distinguishes partial success from total failure. Matching PowerShell entry points include plugins/android-reverse-engineering/skills/android-reverse-engineering/scripts/decompile.ps1 and plugins/android-reverse-engineering/skills/android-reverse-engineering/scripts/check-deps.ps1.
Observed
- License
- Apache License 2.0
- Packaging
- Claude Code marketplace plugin containing one skill and one user-invocable slash command
- Interfaces
- Claude Code slash command, natural-language skill triggers, standalone Bash scripts, and PowerShell scripts
- Input formats
- APK, XAPK, JAR, and AAR
- Required runtime
- Java JDK 17 or newer and jadx CLI
- Platform support
- Bash tooling plus experimental Windows PowerShell tooling
- Decompiler engines
- jadx and Fernflower or Vineflower, with optional side-by-side comparison
- Repository structure
- Plugin manifests, workflow documentation, reference guides, shell scripts, PowerShell scripts, README, and license
Read from README.md, LICENSE, .claude-plugin/marketplace.json, plugins/android-reverse-engineering/commands/decompile.md, plugins/android-reverse-engineering/.claude-plugin/plugin.json, plugins/android-reverse-engineering/skills/android-reverse-engineering/SKILL.md, plugins/android-reverse-engineering/skills/android-reverse-engineering/scripts/decompile.sh, plugins/android-reverse-engineering/skills/android-reverse-engineering/scripts/check-deps.sh, plugins/android-reverse-engineering/skills/android-reverse-engineering/scripts/decompile.ps1, plugins/android-reverse-engineering/skills/android-reverse-engineering/scripts/check-deps.ps1, plugins/android-reverse-engineering/skills/android-reverse-engineering/scripts/fingerprint.sh, plugins/android-reverse-engineering/skills/android-reverse-engineering/scripts/install-dep.sh.
What it can do
Decompile Android APK files
APK file → Decompiled source code and resources
Decompile Android XAPK files
XAPK file → Decompiled source code and resources
Decompile JAR files
JAR file → Decompiled Java source code
Decompile AAR files
AAR file → Decompiled Android library code and resources
Extract HTTP API endpoints
Decompiled Android app code → List of HTTP API endpoints and URLs
Extract Retrofit endpoints
Decompiled Android app code → Retrofit interface definitions and endpoint mappings
Extract authentication patterns
Decompiled Android app code → Authentication mechanisms and security patterns used by the app
Trace API call flows through obfuscated code
Obfuscated decompiled code → Mapped API call flow and execution paths
Tags
Comments (0)
No comments yet
Editorially curated, with community endorsements as a secondary signal. Corrections welcome.