Zfinix/eleven
Agent-first reverse engineering for macOS, Windows and Linux: any ACP agent reads, renames and patches binaries, Android apps and GPU kernels next to you.
About Zfinix/eleven
Zfinix/eleven is an open-source project on GitHub, mainly written in TypeScript. Agent-first reverse engineering for macOS, Windows and Linux: any ACP agent reads, renames and patches binaries, Android apps and GPU kernels next to you. It currently holds 407 stars and 63 forks with 0 open issues, and was last pushed on an unknown date (repository created unknown).
Project Overview
AI Homed tracks it on the Today's Trending board, currently at rank #94 with 0 new stars today.
GitHub Repository Details
README
Eleven
An agent-first reverse-engineering app for macOS, Windows and Linux.
English · 简体中文 · 繁體中文 · 日本語 · 한국어 · Türkçe · Русский · Tiếng Việt · ไทย · Deutsch · Español · Français · Українська · Polski · Português (Brasil) · العربية · فارسی · Bahasa Indonesia · Italiano
Eleven is a reverse-engineering app built around agents. Drop in an app, a binary, an Android APK, a GPU kernel, a shader or a model and ask what it does. Any agent that speaks the Agent Client Protocol can read the code, follow references, rename functions, leave notes and suggest patches, while you watch and approve in the same window.
Native code is read by Ghidra through REA, or by Rizin when you want files to open in seconds. Android apps are read by jadx. The UI is React rendered natively on GPUI by GPUIX.
Features
- Bring your own agent. Aster, Claude, Codex, Gemini, Cursor, Copilot, OpenCode and any other ACP agent. Run several on the same project, each in its own chat.
- Agents drive the window. Eleven serves its own MCP tools so an agent can open a function, switch views, rename, add notes, change types and propose patches.
- Ask about any code. Select lines in pseudocode, assembly or a source file and ask, explain or copy them. The answer opens under the lines, and a suggested rename arrives as a card you accept or decline.
- You stay in control. Every change by you or an agent is logged with its author and can be undone. Byte patches from agents arrive as suggestions you accept or decline.
- Mach-O, ELF and PE. Functions, pseudocode, assembly, control-flow graph, cross-references, strings, segments and hex. Change a line's type (code, procedure, data, string) and number format with Hopper's keys.
- Android apps. APKs open with Java from jadx, smali from apktool when it's installed, string resources, and the manifest,
res, assets and native libraries in a Resources list. Split bundles (.xapk,.apks) open with every split in place. - Source files. Eleven finds the source files a binary was built from, reads Swift types straight from the binary, and has your agent recreate a whole file, with each function linked back to its address.
- Rewrite in any language. Show a function's pseudocode rewritten by your agent in C, C++, Rust, Go, Swift, Python, TypeScript, Java, C# or Zig.
- GPU kernels. CUDA and HIP fat binaries open as highlighted PTX, with notes beside each block and rewrites in CUDA C++, HIP C++ or Metal.
- Shaders, models and GPU profiles. Metal shaders and ML model files (GGUF, safetensors, PyTorch, ONNX) open in the workbench, linked to the code that loads them. Profile with Instruments.
- Projects. A project is one app or binary and holds its chats, agents, renames, bookmarks, notes and patches. Press ⌘S to save it as a single
.elevenfile you can share. Nothing is written there until you do. - Patching. Edit bytes at an address and write a patched copy. The original is never touched.
- Diffing. Compare two builds by function and read the changes like a code review.
- Debugging. Run a program under LLDB, break on the function you are looking at, step and read locals.
- Playbooks. Built-in skills such as first look, name functions, trace a feature and network map work with any agent.
- Export. Pseudocode, assembly, control-flow graphs as PDF and Objective-C class inventories.
Install
macOS 14 or later on Apple Silicon:
curl -fsSL https://eleven.chizi.app/install.sh | bash
This installs Eleven.app into /Applications. Builds are not notarized yet, so the installer clears the download quarantine for you.
Windows x64, in PowerShell:
irm https://eleven.chizi.app/install.ps1 | iex
Linux x64: download the AppImage or the .tar.gz from the latest release.
On first run Eleven walks you through picking an engine and an agent, and installs what's missing for you:
- Rizin opens most apps in seconds.
- Ghidra 12.x with Java 21 is slower and gives the clearest pseudocode. Eleven downloads both, or uses copies it finds in
~/.local/share,~/ApplicationsorGHIDRA_INSTALL_DIR. - An agent. Eleven installs ACP adapters when they are needed.
Build from source
You need Bun, Node 20 or newer, Ghidra and a JDK as above, and a checkout of REA 6.x next to this repo (../rea), or ELEVEN_REA pointing at one.
git clone https://github.com/Zfinix/eleven
git clone https://github.com/Zfinix/rea
cd eleven/app
bun install
bun run dev
| Command | What it does |
| --- | --- |
| bun run dev [file] | Runs the app with hot reload, optionally opening a file |
| bunx tsc --noEmit --noUnusedLocals | Typechecks the app, tests and scripts |
| ./script/test | Runs the test suite one file at a time |
| ./script/bundle-macos | Builds build/Eleven.app |
| ./script/bundle-windows, ./script/bundle-linux | Builds the Windows and Linux apps on those systems |
| ./script/package | Builds, signs and zips a release |
Environment
All of these are optional. Eleven finds the usual install spots on its own.
| Variable | Use |
| --- | --- |
| GHIDRA_INSTALL_DIR | Ghidra install to use |
| JAVA_HOME | JDK to run Ghidra with |
| ELEVEN_REA | REA to use instead of the bundled one |
| ELEVEN_RIZIN | Rizin to use |
| ELEVEN_JADX | jadx to use for Android apps |
| ELEVEN_APKTOOL | apktool to use for smali |
| ELEVEN_LLDB_DAP | lldb-dap for the debugger |
| ELEVEN_SUPPORT | Where Eleven keeps projects and settings |
| ELEVEN_CACHE | Where Eleven caches decompiled code |
| ELEVEN_PROJECTS_DIR | Where the save dialog starts (default ~/Documents/Eleven) |
| ELEVEN_EXPORT_DIR | Where exports and patched copies go (default ~/Downloads/Eleven) |
| ELEVEN_SIGN_IDENTITY | Code-signing identity for ./script/package |
Documentation
- MCP tools: every tool agents get in Eleven, what each one takes and returns, permissions and privacy.
- Skills: the built-in playbooks and how to write your own.
Repository
app/is the app: React and TypeScript on GPUIX.crates/is an earlier Rust prototype, kept for reference. The app does not use it.launch/is the launch video, made with Remotion.install.shis the installer.
License
Eleven is released under the Apache License 2.0. Bundled third-party code is listed in THIRD_PARTY_NOTICES.md. Agent logos belong to their owners and appear only to identify those agents.