-
-
Notifications
You must be signed in to change notification settings - Fork 0
installation
disrobe is distributed two ways: prebuilt binaries from the GitHub Releases tab, and build from source with a single Rust toolchain. There is intentionally no PyPI/npm/Homebrew/crates.io/Docker channel for the binary itself; GitHub Releases is the canonical distribution point.
Each tagged release attaches prebuilt, statically-linkable binaries for the common targets, alongside SHA256SUMS, a cosign keyless signature, and a minisign signature.
| OS | Architectures |
|---|---|
| Windows 10/11 | x86-64, ARM64 |
| Linux (glibc + musl) | x86-64, ARM64 |
| macOS 13+ | x86-64, ARM64 (Apple Silicon) |
-
Download the archive for your platform from the Releases page.
-
Verify the checksum:
sha256sum -c SHA256SUMS # Linux / macOS -
(Optional) verify the cosign signature against the Sigstore transparency log:
cosign verify-blob \ --certificate-identity-regexp '^https://github.com/1-3-7/disrobe/' \ --certificate-oidc-issuer 'https://token.actions.githubusercontent.com' \ --signature disrobe-<version>-<target>.tar.zst.sig \ --bundle disrobe-<version>-<target>.tar.zst.cosign.bundle \ disrobe-<version>-<target>.tar.zst
-
Extract and place disrobe (
disrobe.exeon Windows) anywhere on yourPATH.
Building requires Rust 1.95 or newer (stable). That is the only build dependency for the core; the optional external backends are fetched separately (see below).
git clone https://github.com/1-3-7/disrobe
cd disrobe
cargo build --release
./target/release/disrobe --versionA release build takes roughly four to six minutes on commodity hardware. The binary lands at target/release/disrobe; copy it onto your PATH.
disrobe --version # print the version
disrobe passes # list every registered pass with a one-line summary
disrobe --help # full subcommand surface
disrobe <pass> --help # drill into any pass, e.g. `disrobe py --help`disrobe's in-house passes run with zero external dependencies. A subset of capabilities, however, wrap mature external tools headlessly: Ghidra for native decompilation; CFR / Vineflower / Procyon / jadx for the JVM and Android; ILSpy / dnSpy / de4dot for .NET; Rizin and friends elsewhere. These are never the product for bytecode languages (disrobe ships its own in-house decompilers there) and are always optional.
Probe what is installed and what is missing:
disrobe doctor # probe ~50 optional external tools
disrobe doctor --auto-install # install every missing tool with a known actionInstall a single tool through your platform's native package manager (winget / brew / apt / dnf / pacman / apk). disrobe never installs itself this way; it only fetches the optional backends:
disrobe install --list # list every known tool + per-platform package name
disrobe install ghidra
disrobe install upxHeavyweight dependencies that ship as upstream release archives rather than OS packages (Ghidra, for instance) have a dedicated installer:
disrobe install-deps ghidra
disrobe install-deps --alldisrobe completions bash --install # also: zsh, fish, powershell, elvish
disrobe man --out ./man # one .1 page per subcommandThis wiki is generated from docs/src in the disrobe repository by scripts/wiki_sync.py. Edit the docs there, not the wiki pages here.
Getting started
Architecture
- Overview
- The five-rung IR ladder
- Passes and the capability model
- The chain runner
- The .dr envelope
- LLM sidecar and provenance
Reverse-engineering toolkit
Language and format guides
- Python
- JavaScript / TypeScript
- WebAssembly
- JVM and Android
- .NET / CIL
- Native (PE / ELF / Mach-O)
- Go
- Lua
- PHP
- Ruby
- BEAM (Erlang / Elixir)
- Swift / Objective-C
- ActionScript 3 / Flash
- Mobile (Hermes / Flutter)
- Python pickle
- Shell / PowerShell
- Containers and archives
Reference
- CLI overview
- Global flags
- Command reference
- Project configuration
- Batch directory processing
- Run reports
- Analysis-depth commands
- Diff and guard tooling
- The daemon: HTTP, gRPC, LSP, MCP
- Use it as a library
- Python bindings
- The browser playground
- Forensics and malware-safety posture
- Threat model
Integrations
Project