# How to Build reverse-skill from Source: A Complete Step-by-Step Guide

> Learn how to build reverse-skill from source with this step-by-step guide. Clone the repo, install runtimes, and generate the index for this powerful security tool. No compilation needed for core features.

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

---

**Building reverse-skill from source requires cloning the repository, installing Java/Node.js/Python runtimes, and generating the local tool index—no compilation needed for core components except the optional Burp-MCP bridge.**

reverse-skill is a modular skill-router that lets AI agents automatically select reverse-engineering, pentesting, or CTF methodologies for any given artifact. Since the project is **purely declarative**, building from source does not produce a monolithic binary; instead, it prepares the environment so the routing engine can discover tools and invoke the correct skill playbooks.

---

## Prerequisites for Building reverse-skill

Before you begin, ensure your system has the three core runtimes installed:

- **Java / JDK** — Required by `jadx` and `apktool` for Android reverse engineering
- **Node.js ≥ 22.12** — Powers the JavaScript toolchain and MCP server integrations
- **Python 3.x** — Used by Frida scripts and various helper utilities

Platform-specific setup guidance is available in:
- [`docs/platforms/linux.md`](https://github.com/zhaoxuya520/reverse-skill/blob/main/docs/platforms/linux.md) and [`docs/platforms/macos.md`](https://github.com/zhaoxuya520/reverse-skill/blob/main/docs/platforms/macos.md) for Linux and macOS users
- [`kali/README-kali.md`](https://github.com/zhaoxuya520/reverse-skill/blob/main/kali/README-kali.md) for Kali Linux installations

---

## Step 1: Clone the reverse-skill Repository

Start by cloning the repository and entering the project directory:

```bash
git clone https://github.com/zhaoxuya520/reverse-skill.git
cd reverse-skill

```

The repository structure contains four architectural layers: core routing ([`skills/MASTER-ROUTING.md`](https://github.com/zhaoxuya520/reverse-skill/blob/main/skills/MASTER-ROUTING.md)), ops contracts (`skills/ops/`), tool-index scripts, and concrete skill packages under `skills/`.

---

## Step 2: Generate the Local Tool Index

The **tool index** discovers which external reverse-engineering tools are available on your host system (IDA Pro, radare2, Ghidra, Frida, etc.). This step is essential for reverse-skill to route tasks correctly.

Run the script matching your operating system:

| OS | Command |
|----|---------|
| Windows | `powershell -File skills/scripts/refresh-tool-index.ps1` |
| Linux / macOS | `bash skills/scripts/refresh-tool-index.sh` |
| Kali Linux | `bash kali/scripts/refresh-tool-index.sh` |

The script writes its output to [`skills/tool-index.md`](https://github.com/zhaoxuya520/reverse-skill/blob/main/skills/tool-index.md). Verify successful generation by checking for known tools:

```bash
cat skills/tool-index.md | grep -i "jadx"

```

---

## Step 3 (Optional): Build the Burp-MCP Bridge

If you plan to use Burp Suite integration, compile the Java MCP extension:

```bash
cd burp-mcp-full
chmod +x build.sh
./build.sh

```

This produces a fat-JAR at `burp-mcp-full/build/libs/burp-mcp-full.jar`. Load it in Burp Suite via **Extensions → Add → Java**. Full configuration details are in [`burp-mcp-full/README.md`](https://github.com/zhaoxuya520/reverse-skill/blob/main/burp-mcp-full/README.md).

---

## Verify Your reverse-skill Build

Test the installation by running the primary routing script against a sample artifact:

```powershell

# Windows PowerShell example

powershell -File skills/scripts/master-route.ps1 -Task "example.apk"

```

The script should resolve the task to the `apk-reverse` skill and output the selected workflow. If the tool index was generated correctly, the router will locate available tools and print the matching skill chain.

---

## Key Source Files in the Build Process

Understanding these files helps when modifying or debugging your build:

| File | Purpose |
|------|---------|
| [`skills/MASTER-ROUTING.md`](https://github.com/zhaoxuya520/reverse-skill/blob/main/skills/MASTER-ROUTING.md) | Primary fast-ladder mapping tasks to first-line skills |
| [`skills/routing.md`](https://github.com/zhaoxuya520/reverse-skill/blob/main/skills/routing.md) | Complete task-to-skill routing matrix |
| [`skills/scripts/refresh-tool-index.sh`](https://github.com/zhaoxuya520/reverse-skill/blob/main/skills/scripts/refresh-tool-index.sh) / `.ps1` | Auto-detects installed tools and populates the index |
| `skills/scripts/master-route.ps1` | One-shot entry point for AI agent task triage |
| [`burp-mcp-full/build.sh`](https://github.com/zhaoxuya520/reverse-skill/blob/main/burp-mcp-full/build.sh) | Compiles the Burp Suite MCP Java extension |
| [`RULES.md`](https://github.com/zhaoxuya520/reverse-skill/blob/main/RULES.md) | Global routing rules enforcing scope and safety checks |

Any modification to these files requires regenerating the tool index or rebuilding the MCP bridge to propagate changes.

---

## Summary

- **clone** the repository from GitHub
- **install** Java, Node.js 22+, and Python 3.x
- **generate** the tool index using the OS-appropriate script in `skills/scripts/`
- **optionally build** the Burp-MCP bridge with [`burp-mcp-full/build.sh`](https://github.com/zhaoxuya520/reverse-skill/blob/main/burp-mcp-full/build.sh)
- **verify** with `master-route.ps1` to confirm skill routing works

With these steps complete, reverse-skill is ready to route AI-driven analyses, pentest playbooks, and CTF challenges directly from source.

---

## Frequently Asked Questions

### Does reverse-skill compile into a single executable?

No. According to the repository source code, reverse-skill is **purely declarative**—it does not compile a monolithic binary. Building from source means preparing the runtime environment and generating the tool index so the routing engine can function.

### What happens if I skip generating the tool index?

The routing scripts in `skills/scripts/master-route.ps1` depend on [`skills/tool-index.md`](https://github.com/zhaoxuya520/reverse-skill/blob/main/skills/tool-index.md) to locate external tools like IDA Pro, radare2, and Ghidra. Without this index, skill resolution will fail or produce incomplete workflow recommendations.

### Is the Burp-MCP bridge required for basic functionality?

No. The Burp-MCP bridge in `burp-mcp-full/` is **optional** and only needed if you plan to integrate with Burp Suite for web application security testing. Core reverse-engineering skills for APKs, binaries, and firmware work without it.

### Which script should I use to refresh the tool index on Kali Linux?

Use `bash kali/scripts/refresh-tool-index.sh` specifically for Kali Linux installations. The Kali-specific script accounts for the distribution's pre-installed security tools and custom paths.