1.7 KiB
ghidra-cli
A small, dependable command-line interface for read-only Ghidra analysis.
The repository is named ghidra-cli; the installed executable is ghidr.
The project now has its version 0.1 Rust contract foundation. The typed CLI, public envelopes and schemas, bounded Rust/Java protocol, and synchronous execution seam are present; store, process/sandbox, and Ghidra adapter execution remain deliberately unconnected.
Proposed usage:
ghidr doctor
ghidr inspect ./sample
ghidr functions ./sample
ghidr decompile ./sample --name main
Each command will identify the sample by its content, reuse compatible cached
analysis, and produce versioned JSON by default. Human-readable presentation is
available explicitly through --format human.
Documents
- PRD.md defines the product requirements and initial delivery scope.
- CONTEXT.md defines the domain language used throughout the project.
- docs/adr/ records durable architectural decisions.
- docs/research/ records cited prior-art investigations, including the Ghidra MCP comparison that informed protocol safeguards and the post-version-0.1 roadmap.
Status
Foundation only. Every accepted command currently returns a typed
internal_not_implemented runtime error instead of pretending Ghidra analysis
succeeded. Subsequent layers implement the library's synchronous executor
contract while preserving the committed schemas and reviewed fixtures.
License
Licensed under the Apache License 2.0.
Development may use AI assistance. Maintainers remain responsible for reviewing the resulting design and code, verifying provenance, testing behavior, and ensuring dependency-license compatibility.