SuperAPI AI 工具集

ghidra-agent-cli

智能体与模型

查看项目

更新于 10-16 05:01

技能介绍

用途:ghidra-agent-cli 是 Headless Ghidra 技能族自带的 helper,负责命令树、工作区布局、YAML 产物语义、输出封装,以及 Ghidra、Frida、进度与 gate 操作的运行时行为。本技能仅记录该 helper 的命令语义,不定义 P0–P4 工作流顺序、阶段路由或编排策略,后者由 headless-ghidra/SKILL.md 及各阶段技能定义。普通用户通过安装技能族使用,无需在工作流中手动安装、构建或运行此 CLI。

前置条件:Node.js >= 18;本地 Ghidra 安装可被 ghidra-agent-cli ghidra discover 发现;frida * 命令需可选安装 Frida。该 helper 随技能族安装,须与 headless-ghidra 及阶段技能保持同级;若不可用,应要求用户重装或刷新整个技能族,而非在目标工作区安装独立 CLI 包。发布管理包版本为 ghidra-agent-cli@1.8.0,属打包元数据。

调用与输入:ghidra-agent-cli [GLOBAL FLAGS] <COMMAND> [COMMAND FLAGS]。全局标志包括 --format yaml|json|toml(默认 yaml)、--target <id>、--workspace <path>、--config-dir、--data-dir、--state-dir、--cache-dir、--log-dir、--lock-timeout <SECS>(默认 30)、--no-wait、--help。多数命令需要 --target <id> 或通过 context use 设置的活跃上下文。

输出与错误:命令输出结构化封装,含 status、message、data。错误结构化且稳定,含 code、message、source、format;已知代码有 E_ERROR、E_GATE_FAILED、E_LOCK_TIMEOUT。

命令组:workspace(初始化工作区、管理阶段状态)、scope(管理 scope.yaml)、functions/callgraph/types/vtables/constants/strings/imports(管理基线 YAML 元数据)、third-party、runtime、hotpath、metadata、substitute、git-check、execution-log、progress、gate、ghidra(发现、导入分析、导出基线、应用更改、导入自定义头文件/签名、反编译、重建)、frida(设备、捕获、比较、跟踪、运行、调用)、inspect、context、paths、validate/help。

工作区模型:targets/<target-id>/ghidra-projects/ 与 artifacts/<target-id>/ 下含 pipeline-state.yaml、scope.yaml、intake/、baseline/、runtime/、third-party/、metadata/、substitution/、gates/、scripts/ 等;workspace init 创建基础结构并初始化 pipeline-state.yaml 与 scope.yaml。

产物语义:pipeline-state.yaml 记录当前目标、阶段与二进制路径;scope.yaml 记录范围模式与入口;baseline/.yaml 为基线元数据;runtime/run-manifest.yaml、run-records/.yaml、hotpaths/call-chain.yaml 对应 P1 运行时数据;third-party/identified.yaml 及 pristine/compat 目录管理第三方库;metadata/.yaml 与 apply-records 为 P3 元数据;substitution 目录为 P4 替换记录;gates/-report.yaml 为 gate 报告。

示例命令:ghidra-agent-cli workspace init --target libfoo --binary ./libfoo.so;ghidra-agent-cli --target libfoo scope set --mode full --entries 0x1000,0x2000;ghidra import / auto-analyze / export-baseline、functions list、import-types-and-signatures、runtime record、hotpath add、metadata enrich-function、substitute add、gate check、frida device-list、frida trace 等。

边界:本技能用于回答命令名、标志、输出形状、产物路径、文件语义与 CLI 行为,不作为 P0–P4 顺序、阶段归属或工作流决策的权威来源。缺失事实暂未提供。