# Reverse‑Skill Dependencies: Complete Installation Guide for 2025

> Install reverse-skill in 2025 with our guide. Learn essential dependencies like Java, Node.js, Python, and reverse-engineering tools for seamless setup.

- Repository: [ZhaoXu/reverse-skill](https://github.com/zhaoxuya520/reverse-skill)
- Tags: how-to-guide
- Published: 2026-08-04

---

**Reverse‑skill requires Java JDK, Node.js ≥22.12, Python 3.x, and a suite of reverse‑engineering tools including IDA Pro, radare2, Ghidra, apktool, jadx, and Frida—configured without traditional package managers like npm or pip at the root level.**

The *reverse‑skill* repository by zhaoxuya520 is a comprehensive router for security analysis workflows. Unlike typical open‑source projects, it contains **no [`package.json`](https://github.com/zhaoxuya520/reverse-skill/blob/main/package.json) or [`requirements.txt`](https://github.com/zhaoxuya520/reverse-skill/blob/main/requirements.txt)** at its root. Instead, it orchestrates external tools and runtimes that must exist on the host system. This guide covers every reverse‑skill dependency, installation commands, and how the repository auto‑detects your environment.

---

## Runtime Environment Dependencies

Before any reverse‑engineering tool can function, three core runtimes must be present.

### Java JDK

**Java JDK** powers multiple Android analysis tools. Both `jadx` and `apktool` require a JDK to decompile Dalvik bytecode and unpack APK files.

```bash

# Debian/Ubuntu installation

sudo apt-get update
sudo apt-get install -y openjdk-21-jdk

```

### Node.js ≥22.12

The **Node.js** toolchain drives JavaScript‑based MCP servers and various automation scripts throughout `skills/*` folders. Version 22.12 or newer is explicitly required per the [README Prerequisites](https://github.com/zhaoxuya520/reverse-skill/blob/main/README.md#prerequisites).

```bash

# Using Nodesource PPA

curl -fsSL https://deb.nodesource.com/setup_22.x | sudo -E bash -
sudo apt-get install -y nodejs

```

### Python 3.x

**Python 3** runs `frida` instrumentation scripts and numerous helper utilities. The repository assumes Python 3.x availability for dynamic analysis tasks.

```bash
sudo apt-get install -y python3 python3-pip

```

### Docker (Optional)

**Docker** enables containerized execution of isolated analysis environments. While optional, it is referenced in the [Built With](https://github.com/zhaoxuya520/reverse-skill/blob/main/README.md#built-with) section and used by several sub‑skills for reproducible toolchains.

```bash
curl -fsSL https://get.docker.com | sh
sudo usermod -aG docker $USER  # Re‑login required

```

---

## Core Reverse‑Engineering Tools

These binaries form the actual analysis capabilities of the router. Each maps to specific workflows in [`skills/MASTER-ROUTING.md`](https://github.com/zhaoxuya520/reverse-skill/blob/main/skills/MASTER-ROUTING.md).

### IDA Pro

**IDA Pro** is the primary commercial disassembler and decompiler for binary analysis. The router references it for tasks routed through `ida‑reverse` skill chains.

### radare2

**radare2** provides open‑source disassembly as an alternative to IDA Pro. Several sub‑skills in `skills/` directly invoke `r2` commands.

```bash
sudo apt-get install -y radare2

```

### Ghidra

**Ghidra** offers free decompilation capabilities for binary reverse engineering. The router treats it as a fallback when IDA Pro is unavailable.

### apktool and jadx

Both tools specialize in Android static analysis:

- **apktool**: Unpacks APK resources and smali code
- **jadx**: Decompiles to readable Java source

These require the Java JDK installed above.

### Frida

**Frida** performs dynamic instrumentation on running processes. The Python bindings must be installed via pip:

```bash
python3 -m pip install --upgrade frida-tools

```

---

## Supporting Utilities and Platforms

### nmap

**nmap** handles network scanning tasks, implicitly used in `skills/pentest-tools/` scripts for reconnaissance workflows.

### Burp Suite MCP

**Burp Suite** via MCP integration proxies HTTP/HTTPS traffic for web‑application analysis. Mentioned throughout skill folders and the Built With section.

### Docker Compose

**Docker Compose** manages multi‑container toolchains, inferred from Docker reliance in sub‑module orchestration.

### Git

**Git** clones sub‑modules and keeps the router itself versioned. Required for any installation path.

### PowerShell or Bash

Platform‑specific bootstrap scripts depend on shell availability:

- `skills/scripts/refresh-tool-index.ps1` — Windows PowerShell
- [`skills/scripts/refresh-tool-index.sh`](https://github.com/zhaoxuya520/reverse-skill/blob/main/skills/scripts/refresh-tool-index.sh) — Linux/macOS Bash

---

## Complete Installation Command Set

Run these commands on a fresh Debian‑based system to satisfy all reverse‑skill dependencies:

```bash
#!/bin/bash

# Complete reverse-skill dependency installation

# 1. Java JDK

sudo apt-get update
sudo apt-get install -y openjdk-21-jdk

# 2. Node.js 22.x

curl -fsSL https://deb.nodesource.com/setup_22.x | sudo -E bash -
sudo apt-get install -y nodejs

# 3. Python 3

sudo apt-get install -y python3 python3-pip

# 4. Docker (optional)

curl -fsSL https://get.docker.com | sh
sudo usermod -aG docker $USER

# 5. Frida Python bindings

python3 -m pip install --upgrade frida-tools

# 6. radare2

sudo apt-get install -y radare2

# 7. Git

sudo apt-get install -y git

# Note: IDA Pro, Ghidra, apktool, jadx, and Burp Suite

# require manual download from official sources

```

---

## How Reverse‑Skill Detects Installed Dependencies

The repository includes **auto‑detection scripts** that probe your environment and generate an inventory.

### Bootstrap Scripts Location

- [`skills/scripts/refresh-tool-index.sh`](https://github.com/zhaoxuya520/reverse-skill/blob/main/skills/scripts/refresh-tool-index.sh) — Unix detection
- `skills/scripts/refresh-tool-index.ps1` — Windows detection

### Generated Tool Index

Running either script creates [`skills/tool-index.md`](https://github.com/zhaoxuya520/reverse-skill/blob/main/skills/tool-index.md), a live inventory of which reverse‑skill dependencies are actually present. The router consults this file to determine available workflows.

### Master Routing Matrix

[`skills/MASTER-ROUTING.md`](https://github.com/zhaoxuya520/reverse-skill/blob/main/skills/MASTER-ROUTING.md) maps tasks to tool chains based on detected availability. For example:

- APK file detected → routes to `skills/apk-reverse/` (requires apktool, jadx)
- Binary file detected → routes to `ida-reverse` or `r2-reverse` depending on installed tools

---

## Sub‑Skill Specific Dependencies

Individual directories under `skills/` may impose additional requirements:

| Sub‑skill Path | Additional Tools |
|---------------|------------------|
| `skills/apk-reverse/` | apktool, jadx, adb |
| `skills/pentest-tools/` | nmap, metasploit‑framework |
| `CTF-Sandbox-Orchestrator/` | Docker, CTF‑specific challenge binaries |

These are layered on top of the core reverse‑skill dependencies listed above.

---

## Summary

- **No root package manager** — reverse‑skill lacks [`package.json`](https://github.com/zhaoxuya520/reverse-skill/blob/main/package.json) or [`requirements.txt`](https://github.com/zhaoxuya520/reverse-skill/blob/main/requirements.txt); it orchestrates system‑level tools instead
- **Three runtime pillars** — Java JDK, Node.js ≥22.12, and Python 3.x must be present
- **Six core analysis tools** — IDA Pro, radare2, Ghidra, apktool, jadx, and Frida enable actual reverse engineering
- **Auto‑detection via scripts** — [`refresh-tool-index.sh`](https://github.com/zhaoxuya520/reverse-skill/blob/main/refresh-tool-index.sh) / `.ps1` generates [`skills/tool-index.md`](https://github.com/zhaoxuya520/reverse-skill/blob/main/skills/tool-index.md) automatically
- **Sub‑skill extensibility** — individual `skills/*` folders may require additional tools beyond the core set

---

## Frequently Asked Questions

### Does reverse‑skill use npm or pip for dependency management?

No. According to the zhaoxuya520/reverse‑skill source code, the repository contains no traditional package manager files at its root. Dependencies are system‑level binaries and runtimes that must be installed manually or through OS package managers.

### What Node.js version does reverse‑skill require specifically?

Node.js **≥22.12** is required as documented in the [README Prerequisites](https://github.com/zhaoxuya520/reverse-skill/blob/main/README.md#prerequisites). This version powers the JavaScript toolchain and MCP server infrastructure.

### How do I verify all dependencies are correctly installed?

Run [`skills/scripts/refresh-tool-index.sh`](https://github.com/zhaoxuya520/reverse-skill/blob/main/skills/scripts/refresh-tool-index.sh) (Linux/macOS) or `skills/scripts/refresh-tool-index.ps1` (Windows). These scripts probe your PATH and generate [`skills/tool-index.md`](https://github.com/zhaoxuya520/reverse-skill/blob/main/skills/tool-index.md), showing exactly which reverse‑skill dependencies are detected and which are missing.

### Can I use reverse‑skill without IDA Pro?

Yes. The router falls back to **radare2** or **Ghidra** for binary analysis when IDA Pro is unavailable. The [`skills/MASTER-ROUTING.md`](https://github.com/zhaoxuya520/reverse-skill/blob/main/skills/MASTER-ROUTING.md) file determines the appropriate tool chain based on your detected installations.