Docs
Documentation
Hydra Engine is Ghidra run as one long-lived daemon that many clients use at once. These pages are short on purpose: how to run it, why it behaves the way it does when two agents meet, and a reference to look things up. Start with Install and Quick start.
- 01InstallDownload the Windows x64 headless install, check its SHA-256, give it a JDK 25, and start the daemon. Linux and macOS build from source for now.Download and check the zip · Give it a JDK · Start the daemon · Linux and macOS · The client on its own
- 02Quick startFrom an unzipped install to decompiled C in three steps, then a second client joining the same warm daemon and running into the first one's program.1. Make a project · 2. Ask a question · 3. Add a second client · Next
- 03The shared daemonOne JVM per user serves every client: how clients find it, the quick and long lanes, per-program locks, request labels, and what a dying client costs.How a client finds it · Two lanes · Locks are per program · Labels: who is asking · When a client dies
- 04Projects and revisionsRead-only views that take no lock, writable projects shared inside the daemon, revisions and refresh, and what happens to projects saved by an older Ghidra.A read-only view takes no lock · A writable project is shared inside the daemon · Revisions, stale views and refresh · Projects saved by an older Ghidra · What a project view does not do
- 05Several writersWhen two agents want to change one program, Hydra Engine offers a private overlay, a copy-on-write fork, or shared writing with an author journal.Pick one · Overlays: private annotations · Forks: a working copy · Shared mode: several writers, one program · Limits
- 06ImportsImporting binaries through the daemon. SHA-256 deduplication, parallel imports with maxImports, a visible import queue, cancelling, and what a crash leaves.Never twice · Several at once · The queue · Cancelling and crashes · Limits
- 07Scripts and exportsRun any GhidraScript through the daemon, as owner or contained and rolled back, and write large exports with progress, cancel and an inspectable partial file.Owner or contained · Where scripts come from · Exports: a script that writes a large file · What scripts can reach
- 08IntegrateA checklist for tools that drive the daemon. One connection, a label per agent, adopting projects by hash, handling refusals, the wire, and pinning a release.One connection per process · One label per agent · Adopt a project, do not import · Handle refusals by code · Long work
- 09ReferenceLookup reference for the Hydra Engine daemon. The JSON-lines wire format, every command and its fields, error codes, launcher commands and configuration keys.Wire format · Commands: session · Commands: projects · Commands: programs · Commands: reading
Every measurement with its method, the test suites and the module's design notes are in the module README on GitHub.