reverse-skill
Otherzhaoxuya520/reverse-skill
AI-powered skill router for reverse engineering and authorized pentesting with self-evolving knowledge base.
Overview
Skill router package that helps AI coding agents route reverse-engineering, penetration-testing and CTF tasks to the right methodology and toolchain. Includes master routing, scenario playbooks, tool detection scripts and a self-evolving field journal. Supports Claude Code, Kiro, Cursor, Cline.
README Preview
\n \n\n\nreverse-skill\nCybersecurity Skills Router · 逆向技能路由包\n\nNavigate the dark waters, sail against the stream.\n\n\n \n \n \n \n \n \n\n\n\n \n\n\n\n\n\n About ·\n Getting Started ·\n Usage ·\n Fast route ·\n Routing ·\n Ops contracts ·\n AI Bootstrap ·\n Sponsors ·\n Contributing\n\n\n\n 🌐 中文\n\n\n\n\n\n\n## About\n\n> **If you are an AI Agent, jump to [README_AI.md](README_AI.md) and follow the instructions strictly.**\n\nWhen an AI agent (Claude Code, Codex CLI, Cursor, etc.) encounters an APK, a binary, frontend JS encryption, a CTF challenge, or a pentesting target, this package routes it to the right methodology, checks available tools, and executes a repeatable workflow instead of guessing commands.\n\n```\nUser task\n → RULES.md\n → MASTER-ROUTING / master-route.ps1 (PRIMARY)\n → case-init / scope.md (auth + network_profile; no target ACT until ready)\n → Scenario skill → tools / MCP / scripts\n → timeline + Evidence→Finding→Path → report + field-journal\n```\n\n**Why this exists:**\n- AI agents don't know whether to use jadx, apktool, Frida, IDA, or BurpSuite for a given task\n- APK, ELF, JS, PCAP, and CTF tasks each need different playbooks\n- Tools, MCP servers, and scripts are scattered across machines\n- The same mistakes get repeated because experience isn't reused\n\nPRIMARY ladder: [skills/MASTER-ROUTING.md](skills/MASTER-ROUTING.md) · Full matrix: [skills/routing.md](skills/routing.md) · Ops: [skills/ops/](skills/ops/)\n\n\n\n\n \n \n \n\n\n\n\n(back to top)\n\n### Built With\n\n\n \n IDA Pro · radare2 · Ghidra\n\n\n(back to top)\n\n\n\n## Getting Started\n\n### Prerequisites\n\n- **Java / JDK** — for jadx and apktool\n- **Node.js 22.12+** — for JS toolchain and MCP servers\n- **Python 3.x** — for Frida and helper scripts\n- **A code AI client** — Claude Code, Codex CLI, Cursor, etc.\n\n### Installation\n\n```\ngit clone https://github.com/zhaoxuya520/reverse-skill.git\n```\n\nThen refresh the tool index per platf
FAQ (5)
TroubleshootingHow do I fix macOS BSD sed error "invalid command code f" when running test-bash-workflow.sh?
The script uses GNU-only sed -i 's/.../' file. On macOS, BSD sed requires a backup suffix after -i, so it parses the substitution expression as the suffix and the filename as the sed script.
Update the sed -i calls at lines 52, 60, and 61 of skills/scripts/test-bash-workflow.sh to a portable form:
if sed --version >/dev/null 2>&1; then
SEDI=(-i)
else
SEDI=(-i '')
fi
sed "${SEDI[@]}" 's/mode: authorized_target_only/mode: invalid_mode/g' "$SCRATCH/work/test-bash-01/scope.md"
Apply the same pattern to the other two substitutions:
sed "${SEDI[@]}" 's/mode: invalid_mode/mode: authorized_target_only/g' "$SCRATCH/work/test-bash-01/scope.md"
sed "${SEDI[@]}" 's/status: granted/status: pending/g' "$SCRATCH/work/test-bash-01/scope.md"
Alternatively, avoid sed -i entirely:
tmp="$(mktemp)"
sed 's/a/b/' "$file" > "$tmp" && mv "$tmp" "$file"
Then rerun:
bash skills/scripts/test-bash-workflow.sh
Tests 4 and 5 should now execute on macOS and finish with FAIL=0. To prevent regression, add this script to the macos-bash-compat.yml CI workflow.
TroubleshootingHow do I fix binwalk auto-install failing on Windows with winget error "No package found matching input criteria" for ReFirmLabs.binwalk?
The declared winget ID ReFirmLabs.binwalk does not exist in the winget repository, and binwalk provides no prebuilt Windows release binaries. Change the binwalk entry in skills/scripts/bootstrap-manifest.json from a winget-package to a manual install, mirroring the jeb-pro/binaryninja pattern: set "bootstrapKind": "manual", "canAutoInstall": false, and add a manualInstallHint. The hint should instruct users to run:
winget install --id Rustlang.Rustup --exact
Restart the terminal after installation, then install binwalk with Cargo:
cargo install binwalk
Verify with:
binwalk --version
Also update skills/tool-index.md.template and CHANGELOG.md so binwalk is no longer advertised as winget-auto-installable on Windows. Rerunning bootstrap-reverse.ps1 -Capability binwalk should then report MANUAL_INSTALL_REQUIRED instead of winget error 0x8A150014. A future improvement is to add a first-class cargo-install bootstrap kind with a pinned binwalk version such as 3.1.0.
TroubleshootingHow do I stop AI coding agents from automatically executing scripts or injecting global rules after reading README_AI.md?
Upgrade to the release or PR containing the fix(security): consent-gate agent bootstrap change. If you cannot upgrade immediately, edit README_AI.md section 0 and remove every instruction telling the agent to execute immediately, including refresh-tool-index.sh, refresh-tool-index.ps1, and automatic RULES.md loading. Replace it with an explicit consent gate, such as: Do not run any command, script, or configuration change until you show the user the exact commands and receive explicit confirmation. Also remove the "global injection" step and load routing rules only from the relevant case or working directory. For safer setup, publish a human-run installer from a verified release tag with a checksum; the user should verify and run it before the agent performs setup. As an immediate mitigation, inspect or disable the bootstrap scripts, for example with chmod -x refresh-tool-index.sh, and review README_AI.md and RULES.md before opening the repository in Claude Code, Codex, Cursor, Cline, Windsurf, Kiro, OpenCode, or Pi.
How-toHow do I use this project? Do I clone it, start an agent in the repository folder, and then ask questions?
Yes. Clone the complete repository, open the repository root as your Agent workspace, and have the agent read AGENTS.md and RULES.md. Then use the platform's native master-route and case-init commands to enter a specific skill. It is not just a matter of installing skills. Detailed instructions are provided in docs/QUICKSTART_zh.md, and the README links to this guide. Official documentation is also available at reverse.apivix.com.
TroubleshootingHow do I manually install the skills on macOS when Cursor refuses to install them?
If Cursor refuses because of its client-side security policy, install manually from the repository. Clone the full repository, then run:
bash skills/scripts/refresh-tool-index.sh
Alternatively, copy the skills directly:
cd skills && cp -r . ~/.agents/skills/
On macOS, the core workflow uses the native Bash scripts master-route.sh, case-init.sh, and refresh-tool-index.sh; PowerShell is not required. Detailed steps are in docs/platforms/macos.md and docs/QUICKSTART_zh.md. Review the scripts first if antivirus or security tools report critical flags.