About headless-ghidra-intake
An intake workflow skill that prepares a binary or archive as a target for a headless Ghidra pipeline. It initializes the workspace, discovers Ghidra, inspects the binary, and records the analysis scope without running Ghidra analysis.
Key features
- 01Initialize a target workspace
- 02Discover Ghidra and inspect binaries
- 03Set and review analysis scope
- 04Record intake and pipeline state
- 05Check the P0 phase gate
Use cases
- 01Preparing a binary for a Ghidra workflow
- 02Setting function or whole-target scope
- 03Reviewing target and environment readiness
- 04Recording initial analysis inputs
Install
Copy the command and run it in a terminal.
$
npx skills add https:/ / github.com/ bytelandtechnology/ headless-ghidra --skill headless-ghidra-intakeAfter installing, type/headless-ghidra-intakein Claude Code to confirm it loaded.
Bundled files
References and scripts installed along with SKILL.md.
planning-brief.mdREADME.ja-JP.mdREADME.mdREADME.zh-CN.mdexamples/intake-speckit-handoff.mdDetails
From the project READMEHeadless Ghidra Intake — P0
P0 prepares a target for the rest of the workflow. It is responsible for
turning an input binary or archive path into a valid ghidra-agent-cli
workspace target and recording the initial analysis scope.
Required ghidra-agent-cli Commands
ghidra-agent-cli workspace initghidra-agent-cli ghidra discoverghidra-agent-cli inspect binaryghidra-agent-cli scope showghidra-agent-cli scope setghidra-agent-cli scope add-entryghidra-agent-cli scope remove-entryghidra-agent-cli gate check --phase P0
Archive normalization and any target-specific bootstrap scripts may still run as backend details until the CLI exposes them directly.
Inputs
- User-provided binary or archive path
- Workspace root
- Local environment needed for Ghidra discovery
Outputs
targets/<target-id>/ghidra-projects/artifacts/<target-id>/pipeline-state.yamlartifacts/<target-id>/scope.yaml- Optional phase-owned intake records under
artifacts/<target-id>/intake/
Exit Expectations
- Target workspace exists and is addressable through
--target <id>. pipeline-state.yamlrecords the selected binary path.scope.yamlrecords the selected functions, addresses, symbols, or explicit whole-target scope.- Ghidra discovery and binary inspection have been run and reviewed.
Constraints
- Do not run actual Ghidra analysis in this phase.
- Do not write baseline, evidence, decompilation, or verification outputs.
- Do not bypass
ghidra-agent-cli workspace init,ghidra discover, orinspect binaryfor supported steps. - Do not create or run a new Ghidra script if the CLI lacks a capability; pause and ask the user first.
Next Step
- P0 gate passes →
headless-ghidra-baseline
Comments
Markdown supported