ghidra-cli/README.md
2026-07-28 19:49:43 +00:00

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.