
Мощный декомпилятор, который позволяет реверс-инжинирить мобильные приложения React Native, преобразуя их скомпилированные файлы байт-кода Hermes (.hbc) обратно в читаемый JavaScript.

Rust-декомпилятор для байт-кода Hermes (.hbc) — движка JavaScript, на котором работает React Native. Поддерживает HBC 40–99.
Готовые бинарные сборки (Linux / macOS / Windows) из Releases или Actions:
| Суффикс ассета | Платформа |
|---|---|
linux-x86_64 / linux-arm64 | Linux |
macos-arm64 / macos-x86_64 | macOS |
windows-x86_64 | Windows |
Архивы содержат hermes-decomp и hermes-mcp. Проверка: shasum -a 256 -c SHA256SUMS.
hermes-decomp update --check # or --install / --version v0.1.7
Из исходного кода (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"


Полный список флагов и примеры → docs/USAGE.md.
Примечания:
decompile полного бандла использует .hdcache на диске для быстрой перезагрузки. Передайте --no-cache, чтобы принудительно отключить кэш.decompile -o … выводит этапы конвейера в stderr.hermes-mcp) для ИИ-ассистентов → docs/MCP.mdmcp-config.example.jsonhbc-decomp → docs/LIBRARY.mdcargo build --release -p hbc-decomp-mcp
См. CONTRIBUTING.md. Пожалуйста, откройте issue перед отправкой PR.
cargo build --release --workspace && cargo test --workspace
MIT. См. LICENSE.
| Область | Команды (основные) |
|---|
| Чтение | info, disasm, decompile, tui, extract, modules, deps |
| Анализ | xref, callgraph, graphviz, closures, debug, dump, bin-diff |
| Помощники реверса | secrets, frida-hooks |
| Запись (только байт-код) | emit-hasm, asm, asm-check, patch-string, patch-function, inject-stub, create |