How to Install zhaoxuya520/reverse-skill: Complete Setup Guide for Linux, macOS, and Windows
Clone the repository and run the platform-specific refresh script to automatically detect, install, and index all required reverse-engineering tools.
The reverse-skill repository is a modular skill router that directs AI agents and security analysts to the appropriate reverse-engineering, penetration testing, or CTF workflow. Installing zhaoxuya520/reverse-skill requires only cloning the repository and executing a bootstrap script that handles dependency detection and installation across Linux, macOS, or Windows.
Installation Overview
The repository follows a three-layer architecture:
- Routing Layer — Global rules in
RULES.md, fast primary ladder inskills/MASTER-ROUTING.md, and full task matrix inskills/routing.md - Ops Layer — Case workspace contracts and role-based permissions under
skills/ops/ - Capability Layer — Bootstrap scripts that install and verify external tools, generating
skills/tool-index.md
Post-installation, the router queries tool-index.md to determine which skills can execute based on available tools.
Step 1: Clone the Repository
git clone https://github.com/zhaoxuya520/reverse-skill.git
cd reverse-skill
This creates the local copy needed for all subsequent setup operations.
Step 2: Refresh the Tool Index
Run the platform-appropriate refresh script to detect existing tools and populate the local index:
| Platform | Command |
|---|---|
| Linux / macOS | bash skills/scripts/refresh-tool-index.sh |
| Windows | powershell -File skills/scripts/refresh-tool-index.ps1 |
| Kali Linux | bash kali/scripts/refresh-tool-index.sh |
These scripts write to skills/tool-index.{md,json}, which the router uses for runtime capability checks.
Step 3: Install Platform Prerequisites
Linux (Debian/Ubuntu) Baseline Setup
Install core dependencies via apt as documented in docs/platforms/linux.md:
sudo apt update
sudo apt install -y \
git curl wget ca-certificates unzip tar jq \
python3 python3-venv python3-pip pipx \
openjdk-17-jdk nodejs npm \
graphviz plantuml nmap sqlmap ffuf hashcat binwalk
python3 -m pipx ensurepath
Install Missing Tools Manually (Linux Example: jadx)
For tools not in package managers, download GitHub releases directly:
mkdir -p ~/tools/jadx
curl -L https://github.com/skylot/jadx/releases/latest/download/jadx-1.5.5.zip -o /tmp/jadx.zip
unzip -q /tmp/jadx.zip -d ~/tools/jadx
export PATH="$HOME/tools/jadx/bin:$PATH"
jadx --version
macOS Baseline Setup (Homebrew)
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
brew install \
git curl wget jq unzip gnu-tar \
python node openjdk \
jadx apktool android-platform-tools \
radare2 graphviz plantuml \
nmap sqlmap ffuf hashcat binwalk
python3 -m pip install --user pipx
python3 -m pipx ensurepath
Install Frida via pipx (macOS)
pipx install frida-tools
frida --version
frida-ps --version
Step 4: Bootstrap Core Capabilities
Run skills/scripts/bootstrap-reverse.sh to register specific reverse-engineering capabilities with the router:
# Core Android reverse-engineering tools
bash skills/scripts/bootstrap-reverse.sh jadx apktool frida
# JavaScript hooking and analysis frameworks
bash skills/scripts/bootstrap-reverse.sh jshookmcp anything-analyzer
# IDA Pro registration (only if locally installed)
bash skills/scripts/bootstrap-reverse.sh idapro --start-services
The bootstrap script updates internal capability registries so skills/MASTER-ROUTING.md can route tasks appropriately.
Step 5: Verify the Installation
Validate that all expected tools are present and the index is current:
java -version
python3 --version
node -v
npm -v
npx -v
jadx --version || true
apktool --version || true
adb version || true
frida --version || true
r2 -v || true
ghidraRun 2>/dev/null || true
bash skills/scripts/refresh-tool-index.sh
Running refresh-tool-index.sh finalizes the environment by updating skills/tool-index.md with the actual state of installed binaries.
Key Files in the Installation Flow
Understanding these files helps troubleshoot setup issues:
README.md— High-level quick-start and usage matrixRULES.md— Global routing rules that gate task executionskills/MASTER-ROUTING.md— Primary fast-track routing ladderskills/routing.md— Complete task-to-skill mappingskills/tool-index.md— Auto-generated local tool availability indexskills/scripts/bootstrap-reverse.sh— Cross-platform capability bootstrapskills/scripts/refresh-tool-index.sh— Tool detection and indexing scriptdocs/platforms/linux.mdanddocs/platforms/macos.md— Platform-specific setup details
Summary
- Clone
zhaoxuya520/reverse-skillfrom GitHub to obtain the router and skill definitions - Run
refresh-tool-index.sh(or.ps1on Windows) to detect existing tools and build the local index - Install platform prerequisites via
apt, Homebrew, or manual GitHub release downloads - Execute
bootstrap-reverse.shwith desired capability names to register tools with the router - Verify with the validation checklist and re-run the refresh script to finalize
tool-index.md
Once complete, AI agents and analysts can invoke any skill in the repository, with the router automatically selecting viable workflows based on the populated tool index.
Frequently Asked Questions
Does reverse-skill require root or administrator privileges?
No for basic operation, though some tool installations need elevated permissions. The apt commands and Homebrew installation require sudo or administrator access, but running the router itself works with standard user permissions. The refresh-tool-index.sh script detects tools in common user directories like ~/tools/ without requiring root.
Can I install reverse-skill on Windows without WSL?
Yes. Use the PowerShell refresh script: powershell -File skills/scripts/refresh-tool-index.ps1. However, many reverse-engineering tools in the ecosystem are Linux-native, so WSL2 or a virtual machine provides better compatibility for the full capability set.
What happens if a required tool is missing when running a skill?
The routing layer checks skills/tool-index.md before dispatching. If a tool is unavailable, the router falls back to alternative skills or returns a clear dependency error. Run bootstrap-reverse.sh <tool-name> to install missing capabilities without reinstalling the entire environment.
How do I update the tool index after installing new software?
Re-run the platform refresh script: bash skills/scripts/refresh-tool-index.sh. This rescans PATH and known tool directories, then regenerates skills/tool-index.{md,json}. The router immediately uses the updated index for subsequent routing decisions.
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 →