# How to Execute reverse-skill on Windows: A Complete PowerShell Guide

> Learn to execute reverse-skill on Windows with this PowerShell guide. Clone the repo, refresh dependencies, and run master-route.ps1 to automate skill routing. Get started now!

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

---

**To execute reverse-skill on Windows, clone the repository, run `refresh-tool-index.ps1` to detect dependencies, then invoke `master-route.ps1` with a task hint to automatically route to the appropriate primary skill.**

The reverse-skill framework from zhaoxuya520/reverse-skill is a platform-neutral routing package designed for reverse-engineering, penetration testing, and CTF challenges. While it supports multiple operating systems, Windows users interact with the system through pure PowerShell 5.1 scripts that orchestrate tool detection, task routing, and case management. This guide explains how to execute reverse-skill on Windows using its three-layer architecture anchored by `skills/scripts/master-route.ps1`.

## Architecture Overview

The Windows implementation organizes functionality into three distinct layers that handle routing, bootstrapping, and secure execution.

### Routing Core

The file [`skills/config/routing.json`](https://github.com/zhaoxuya520/reverse-skill/blob/main/skills/config/routing.json) serves as the single source of truth that maps task keywords to PRIMARY skills. When you provide a hint, the router parses it, scores matched routes against this JSON configuration, and selects the highest-scoring primary skill for execution.

### Bootstrap and Tool Index

The `skills/scripts/refresh-tool-index.ps1` script detects locally installed external tools including JDK, Node 22+, Python 3, IDA, and radare2. It auto-generates [`skills/tool-index.md`](https://github.com/zhaoxuya520/reverse-skill/blob/main/skills/tool-index.md), and if required tools are missing, the bootstrap logic attempts to install them automatically.

### Case Management and Security Guard

Before any destructive action, the framework enforces a lightweight scope contract through `skills/scripts/case-init.ps1` and `skills/scripts/case-guard.ps1`. These scripts create `work\<case>\scope.md` and verify authentication and target-profile checks, ensuring security gates defined in [`RULES.md`](https://github.com/zhaoxuya520/reverse-skill/blob/main/RULES.md) are satisfied before any ACT step.

### Skill Execution Layer

After routing completes, the router writes [`route-scope.md`](https://github.com/zhaoxuya520/reverse-skill/blob/main/route-scope.md) in a timestamped `work\master-route-<ts>\` directory, pointing to the selected skill's [`SKILL.md`](https://github.com/zhaoxuya520/reverse-skill/blob/main/SKILL.md). You then execute skill-specific scripts located in subdirectories like `skills\apk-reverse\` or `skills\ida-reverse\`.

## Step-by-Step Execution Guide

Follow these steps to execute reverse-skill on Windows from a PowerShell terminal.

### 1. Clone the Repository

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

```

### 2. Refresh the Tool Index

Detect all locally installed tools and generate the tool index. This step is required before routing.

```powershell
powershell -File skills\scripts\refresh-tool-index.ps1

```

This creates [`skills/tool-index.md`](https://github.com/zhaoxuya520/reverse-skill/blob/main/skills/tool-index.md) listing available runtimes and reverse-engineering tools.

### 3. Run the Primary Router

Provide a free-form task description using the `-Hint` parameter. The router reads [`skills/config/routing.json`](https://github.com/zhaoxuya520/reverse-skill/blob/main/skills/config/routing.json), selects the primary skill, and creates a timestamped workspace.

```powershell
powershell -File skills\scripts\master-route.ps1 -Hint "Analyze the Android APK for hidden backdoors"

```

**Result:** A `work\master-route-<timestamp>\route-scope.md` file containing the chosen primary skill, confidence level, and secondary candidates.

### 4. Initialize a Case (Optional but Recommended)

Create a dedicated case directory with scope metadata and authentication setup.

```powershell
powershell -File skills\scripts\case-init.ps1 -Hint "Analyze the Android APK for hidden backdoors" -CaseName "my-case"

```

This generates `work\my-case\scope.md` with the case contract.

### 5. Guard the Case

Verify that required authentication and network profiles are satisfied before executing destructive commands.

```powershell
powershell -File skills\scripts\case-guard.ps1 -CaseRoot work\my-case

```

### 6. Execute the Primary Skill

Open the generated [`route-scope.md`](https://github.com/zhaoxuya520/reverse-skill/blob/main/route-scope.md) to identify the primary skill path (e.g., `skills/apk-reverse/`). Follow the **ACTION REQUIRED** note inside that skill's [`SKILL.md`](https://github.com/zhaoxuya520/reverse-skill/blob/main/SKILL.md) to run concrete scripts.

```powershell

# Example for APK analysis

powershell -File skills\apk-reverse\scripts\frida-run.ps1 -ApkPath "./app.apk"

```

## Complete PowerShell Workflow Example

Here is the complete sequence for executing a reverse-engineering task on Windows:

```powershell

# 1. Refresh the tool index (detects Java, Node, Python, IDA …)

powershell -File skills\scripts\refresh-tool-index.ps1

# 2. Route a task – replace the hint with your own description

$hint = "Analyze the Android APK for hidden backdoors"
powershell -File skills\scripts\master-route.ps1 -Hint $hint

# 3. Open the generated route‑scope.md to see the primary skill

# (example output)

# PRIMARY -> skills/apk-reverse/

# Label: APK / smali / jadx / apktool

# confidence: high

# Wrote C:\path\to\repo\work\master-route-20230824-153200\route-scope.md

# 4. Initialize a case (creates work\my‑case\scope.md)

powershell -File skills\scripts\case-init.ps1 -Hint $hint -CaseName "my-case"

# 5. Enforce the scope guard before any destructive command

powershell -File skills\scripts\case-guard.ps1 -CaseRoot work\my-case

# 6. Run the primary skill – for the example above:

powershell -File skills\apk-reverse\scripts\frida-run.ps1 -ApkPath "./app.apk"

```

All scripts are pure PowerShell 5.1 and do not depend on any external runtime other than the tools listed in [`skills/tool-index.md`](https://github.com/zhaoxuya520/reverse-skill/blob/main/skills/tool-index.md).

## Key Files Reference

Understanding these core files is essential to execute reverse-skill on Windows effectively:

- [`skills/config/routing.json`](https://github.com/zhaoxuya520/reverse-skill/blob/main/skills/config/routing.json) — The routing table mapping keywords to skill paths.
- `skills/scripts/master-route.ps1` — The main entry point that selects PRIMARY skills.
- `skills/scripts/refresh-tool-index.ps1` — Bootstraps the environment by detecting installed tools.
- `skills/scripts/case-init.ps1` — Creates case directories and initializes scope contracts.
- `skills/scripts/case-guard.ps1` — Enforces security gating rules before ACT execution.
- [`skills/tool-index.md`](https://github.com/zhaoxuya520/reverse-skill/blob/main/skills/tool-index.md) — Auto-generated index of detected external tools.

## Summary

To reliably execute reverse-skill on Windows:

- Run `refresh-tool-index.ps1` first to detect dependencies and build the tool index.
- Use `master-route.ps1` with a descriptive hint to automatically select the correct primary skill from [`routing.json`](https://github.com/zhaoxuya520/reverse-skill/blob/main/routing.json).
- Initialize cases with `case-init.ps1` and validate security constraints using `case-guard.ps1` before destructive operations.
- Access skill-specific instructions in the generated [`route-scope.md`](https://github.com/zhaoxuya520/reverse-skill/blob/main/route-scope.md) files within timestamped `work\` directories.
- All PowerShell scripts execute natively without requiring additional runtimes beyond standard reverse-engineering tools.

## Frequently Asked Questions

### Do I need to install PowerShell 7 to execute reverse-skill on Windows?

No. According to the zhaoxuya520/reverse-skill source code, all scripts are written for PowerShell 5.1, which is included by default in Windows. You do not need PowerShell 7 or any external runtime to run `master-route.ps1`, `case-init.ps1`, or `case-guard.ps1`.

### What happens if a required tool like IDA or Python is missing?

The `skills/scripts/refresh-tool-index.ps1` script detects missing dependencies and attempts to install them automatically. It generates [`skills/tool-index.md`](https://github.com/zhaoxuya520/reverse-skill/blob/main/skills/tool-index.md) to show which tools were found, and the bootstrap logic will handle installation for supported tools before you execute the primary router.

### Can I skip the case initialization and guard steps?

Yes, but it is not recommended. The `case-init.ps1` and `case-guard.ps1` scripts enforce authentication and target-profile validation through the scope contract. Skipping these steps bypasses the security gates defined in [`RULES.md`](https://github.com/zhaoxuya520/reverse-skill/blob/main/RULES.md), allowing destructive ACT commands to run without verification checks.

### Where does reverse-skill store the routing results on Windows?

The router creates timestamped directories under `work\master-route-<timestamp>\` and writes [`route-scope.md`](https://github.com/zhaoxuya520/reverse-skill/blob/main/route-scope.md) inside them. If you initialize a case, additional scope metadata appears in `work\<case-name>\scope.md`. These files contain the PRIMARY skill path and confidence scores derived from [`skills/config/routing.json`](https://github.com/zhaoxuya520/reverse-skill/blob/main/skills/config/routing.json).