
A powerful decompiler that lets you reverse-engineer React Native mobile apps by converting their compiled Hermes bytecode (.hbc) files back into readable JavaScript.
| Asset suffix | Platform |
|---|
linux-x86_64 / linux-arm64 | Linux |
macos-arm64 / macos-x86_64 | macOS |
windows-x86_64 | Windows |
Archives include hermes-decomp and hermes-mcp. Verify: shasum -a 256 -c SHA256SUMS.
hermes-decomp update --check # or --install / --version v0.1.7
From source (Rust 1.70+):
git clone https://github.com/SymbioticSec/hermes-decomp.git
cd hermes-decomp && cargo build --release
# → target/release/hermes-decomp target/release/hermes-mcp
hermes-decomp info app.hbc
hermes-decomp disasm app.hbc --function 5 --info --show-offsets
hermes-decomp decompile app.hbc -o out.js # progress on stderr
hermes-decomp decompile app.hbc --function 42
hermes-decomp tui app.hbc
hermes-decomp xref app.hbc --query "loginWithToken"


| Area | Commands (highlights) |
|---|---|
| Read | info, disasm, decompile, tui, extract, modules, deps |
| Analyze | xref, callgraph, graphviz, closures, debug, dump, bin-diff |
| RE helpers | secrets, frida-hooks |
| Write (bytecode only) | emit-hasm, asm, asm-check, patch-string, patch-function, inject-stub, create |
Full flags and examples → docs/USAGE.md.
Notes:
decompile uses an on-disk .hdcache for fast reloads. Pass --no-cache to force.decompile -o … prints pipeline stages on stderr.hermes-mcp) for AI assistants → docs/MCP.mdmcp-config.example.jsonhbc-decomp → docs/LIBRARY.mdcargo build --release -p hbc-decomp-mcp
See CONTRIBUTING.md. Please open an issue before a PR.
cargo build --release --workspace && cargo test --workspace
MIT. See LICENSE.