Eleven: агент сам керує реверс-інжинірингом бінарників
Відкритий застосунок для macOS, Windows, Linux: завантажуєш бінарник, APK, GPU-ядро чи модель — і будь-який ACP-агент (Claude, Codex, Cursor, Copilot, Gemini) через власні MCP-інструменти Eleven відкриває функцію, перейменовує, лишає нотатки й пропонує байт-патч, а ви приймаєте чи відхиляєте зміну в тому ж вікні. Нативний код читає Ghidra або Rizin, Android — jadx. Підтримує Mach-O, ELF, PE, APK, CUDA/HIP, GGUF/safetensors/ONNX. Проєкт зберігається одним файлом `.eleven`, кожна зміна логується з автором і скасовується, оригінал бінарника патч не торкає.
Як агент керує вікном, а не просто відповідає
Eleven не просто показує код — вона віддає агенту власні MCP-інструменти, якими він сам відкриває функцію, перемикає вигляд між псевдокодом, асемблером і графом переходів, перейменовує символи, змінює типи та лишає нотатки. Ви не вказуєте адресу вручну: описуєте, що потрібно зробити, а агент сам навігує по бінарнику, і кожен його крок видно у вікні.
Окремо є режим «запитати про код»: виділяєте рядки у псевдокоді, асемблері чи файлі із відновленим сирцем і просите пояснити або скопіювати. Відповідь з'являється прямо під виділеними рядками, а якщо агент пропонує перейменування — воно приходить карткою з кнопками прийняти/відхилити, а не застосовується одразу.
На одному проєкті можна тримати кілька агентів одночасно — Aster, Claude, Codex, Gemini, Cursor, Copilot, OpenCode чи інший ACP-агент — кожен у своєму чаті. Наприклад, один розбирає Mach-O функції, інший паралельно перевіряє рядки в APK.
Що саме можна відкрити і подивитись
Для нативних бінарників (Mach-O, ELF, PE) доступні функції, псевдокод, асемблер, граф керування потоком, перехресні посилання, рядки, сегменти й hex. Тип рядка (код, процедура, дані, рядок) і формат чисел змінюються клавішами Hopper.
Android-застосунки відкриваються з Java від jadx, smali від apktool (якщо він встановлений), рядковими ресурсами, маніфестом, `res`, assets і native-бібліотеками у списку Resources. Split-бандли `.xapk` і `.apks` відкриваються з усіма спліт-частинами на місці.
GPU-код: CUDA і HIP fat-бінарники відкриваються як підсвічений PTX з нотатками біля кожного блоку. Metal-шейдери та файли ML-моделей (`GGUF`, `safetensors`, `PyTorch`, `ONNX`) відкриваються у workbench із прив'язкою до коду, який їх завантажує, і профілюються через Instruments.
Два сценарії поза перейменуванням функцій
Перший — відновлення вихідного коду: Eleven шукає сирцеві файли, з яких зібрано бінарник, читає Swift-типи прямо з бінарника, а агент може відновити цілий файл, де кожна функція прив'язана до своєї адреси в бінарнику. Це корисно, коли потрібен не просто псевдокод, а читабельний проєкт із релізної збірки.
Другий — переписування функції іншою мовою: агент бере псевдокод функції й переписує його на C, C++, Rust, Go, Swift, Python, TypeScript, Java, C# або Zig. Третій — diffing: порівняння двох збірок по функціях, де зміни читаються як код-ревʼю, а не як бінарний diff байт за байтом.
Контроль змін і що перевірити
Проєкт в Eleven — це один застосунок чи бінарник, який тримає всі чати, агентів, перейменування, закладки, нотатки й патчі. `⌘S` зберігає все в один файл `.eleven`, яким можна поділитись; на диск нічого не пишеться, поки ви самі не збережете.
Патчинг працює так: редагуєте байти за адресою і записуєте патчену копію — оригінал бінарника патч не торкає. Кожна зміна, ваша чи агента, логується з автором і може бути скасована.
- Перевіряйте в логу, хто саме зробив перейменування чи патч — автор завжди видимий
- Перед прийняттям байт-патча дивіться на сам diff, а не лише на назву, яку запропонував агент
- Для Android зі split-бандлами перевірте, що всі частини `.xapk`/`.apks` відкрились разом
Дати релізу й ціни в матеріалі немає.