APK Reverse Engineering Keywords in reverse-skill: Complete Routing Reference
The reverse-skill repository defines specific natural-language keywords—including "apk reverse", "apk jadx smali reverse", and the Chinese phrase "安卓 APK 加固 反编译"—that route user requests to the apk-reverse skill module via the routing.json configuration.
The zhaoxuya520/reverse-skill project implements a routing matrix to map natural-language hints to specialized reverse engineering capabilities. Understanding the exact APK reverse engineering keywords is essential for initializing cases that unlock tools like jadx, apktool, and frida for Android analysis.
How the Routing Matrix Works
The routing system normalizes user input (converting to lowercase and trimming whitespace) and matches it against predefined patterns in skills/config/routing.json. When a match is found, the router dispatches the request to the corresponding skill directory—in this case, skills/apk-reverse/.
According to the source code in skills/scripts/verify-routing-coherence.ps1, the routing table explicitly maps hint strings to the apk-reverse skill ID. This ensures that variations of APK-related terminology consistently trigger the correct module.
Complete List of APK Reverse Engineering Keywords
The following keywords are defined in the repository and will route to the apk-reverse skill:
-
apk reverse– Defined in.github/workflows/ci.ymlat line 81, this keyword directly selects the APK reverse skill (ID R1). -
apk– Found inskills/scripts/verify-routing-coherence.ps1at line 196 (variableN = 'apk'), this serves as the base token. When combined with other tokens, it resolves to the apk-reverse module. -
apk jadx smali reverse– Located in the same file at line 196 (variableH = 'apk jadx smali reverse'), this full-text hint describes the complete decompilation workflow using Jadx for Java code and apktool for smali handling. -
apk jadx reverse– Appearing inskills/scripts/verify-routing-coherence.ps1at lines 269 and 285, this shorter variant also maps correctly to the apk-reverse skill. -
decompile APK with jadx apktool smali– Defined inskills/scripts/smoke.ps1at line 91, this explicit description is used in smoke-test routing scenarios. -
安卓 APK 加固 反编译– Found inskills/scripts/smoke.ps1at line 96 andskills/scripts/test-p0-friction.ps1at line 138, this Chinese phrase (meaning "Android APK hardened reverse compilation") provides native language support for routing. -
apk-reverse– While used primarily as the internal module name throughout routing tables (routing.md,routing_zh.md) and tool-discovery scripts, this string also appears in generated documentation.
Practical Usage Examples
Use these keywords with the case-init.sh script to initialize APK reverse engineering cases.
Generic Keyword Entry
# Launch a reverse-engineering case using the standard hint
bash skills/scripts/case-init.sh --hint "apk reverse" --case-name demo-apk
Detailed Decompilation Hint
# Use the explicit tool-chain description
bash skills/scripts/case-init.sh --hint "decompile APK with jadx apktool smali" --case-name decode-demo
Chinese Language Support
# Initialize using the Chinese keyword for APK reverse engineering
bash skills/scripts/case-init.sh --hint "安卓 APK 加固 反编译" --case-name zh-demo
Shortcut Variant
# Use the abbreviated hint that the router recognizes
bash skills/scripts/case-init.sh --hint "apk jadx reverse" --case-name short-hint
All commands above initialize a case scoped to the apk-reverse/ directory, making the full toolset immediately available.
Key Source Files and Configuration
The keyword mapping is implemented across these critical files:
-
skills/config/routing.json– Contains the machine-readable routing configuration with the canonical keyword list and skill mappings. -
skills/scripts/verify-routing-coherence.ps1– Generates the internal routing map and defines literal keyword strings includingapk jadx smali reverse. -
skills/scripts/case-init.sh– Entry point that parses the--hintargument and dispatches to the appropriate skill module. -
skills/scripts/smoke.ps1– Smoke-test suite that validates keyword routing, including the Chinese hint at line 96. -
skills/apk-reverse/SKILL.md– Human-readable documentation listing supported actions and tools available after routing. -
skills/routing.mdandskills/routing_zh.md– English and Chinese routing matrices displaying available keywords.
Summary
- The apk-reverse skill in zhaoxuya520/reverse-skill responds to multiple keyword variations, from simple ("apk reverse") to descriptive ("decompile APK with jadx apktool smali").
- Chinese language support is available via "安卓 APK 加固 反编译" for native-speaking users.
- Keyword matching is case-insensitive and whitespace-tolerant, normalizing input before checking against
skills/config/routing.json. - The routing logic is validated through PowerShell scripts (
verify-routing-coherence.ps1,smoke.ps1) that ensure coherence between documentation and actual implementation.
Frequently Asked Questions
What is the shortest effective keyword for APK reverse engineering in reverse-skill?
The minimal functional keyword is apk, which acts as the primary token in the routing matrix defined in skills/scripts/verify-routing-coherence.ps1. When submitted as a hint, the router resolves this base token to the apk-reverse skill, though using "apk reverse" provides more specific routing assurance.
Can I use Chinese keywords to access the apk-reverse functionality?
Yes. The repository explicitly supports Chinese keywords. The phrase "安卓 APK 加固 反编译" (Android APK hardened reverse compilation) is defined in both skills/scripts/smoke.ps1 (line 96) and skills/scripts/test-p0-friction.ps1 (line 138), allowing native Chinese speakers to route to the apk-reverse skill without using English terminology.
Where is the routing configuration physically stored?
The canonical routing configuration resides in skills/config/routing.json. This JSON file contains the master mapping table where the router looks up normalized hint strings to determine which skill directory (such as apk-reverse/SKILL.md) to activate for a given case.
How does the system handle typos or capitalization in keywords?
The routing engine normalizes input by converting hints to lowercase and trimming whitespace before matching. This means "APK Reverse", "apk reverse", and " apk reverse " are treated identically. However, significant typos or missing keywords (e.g., "apkrverse") will fail to match the defined patterns in the routing matrix.
Have a question about this repo?
These articles cover the highlights, but your codebase questions are specific. Give your agent direct access to the source. Share this with your agent to get started:
curl -s "https://instagit.com/install.md" Maintain an open-source project? Get it listed too →