Installation
Prerequisites
REeve requires Python, Java, Ghidra, and an Anthropic API key.
Python 3.11+
python3 --version
Java 21+
java -version
Set JAVA_HOME if it is not already set. On macOS, a Temurin build can be extracted without sudo:
export JAVA_HOME=~/java/<extracted-dir>/Contents/Home
Ghidra
Download a PUBLIC release from github.com/NationalSecurityAgency/ghidra/releases and extract it. REeve does not require Ghidra to be installed — just extracted, since PyGhidra runs it in-process.
export GHIDRA_INSTALL_DIR=/path/to/ghidra_<version>_PUBLIC
Anthropic API Key
export ANTHROPIC_API_KEY=sk-ant-...
Install REeve
git clone https://github.com/Kunull/REeve
cd REeve
pip install -e .
Or run setup.sh, which checks all three prerequisites in order (Python, JAVA_HOME, GHIDRA_INSTALL_DIR, ANTHROPIC_API_KEY), installs the package, and initializes PyGhidra against your Ghidra install:
bash setup.sh
Verify Installation
reeve --help
Expected output:
Usage: reeve [OPTIONS] COMMAND [ARGS]...
AI-powered binary reverse engineering engine.
Options:
-v, --verbose Enable debug logging
--help Show this message and exit.
Commands:
analyze Run autonomous analysis on a binary.
ask Ask a single question about a binary.
chat Interactive chat over a binary — ask questions, rename functions.
eval Evaluate analysis output against a ground truth JSON file.
kb Build an Obsidian knowledge base from a saved session JSON.
report Export or display the analysis report from a saved session JSON.
See CLI Reference for details on each command.
Persisting Environment Variables
Add the three exports to your shell profile (~/.zshrc, ~/.bashrc, or equivalent):
export JAVA_HOME=/path/to/jdk-21
export GHIDRA_INSTALL_DIR=/path/to/ghidra_PUBLIC
export ANTHROPIC_API_KEY=sk-ant-...