From x2p-compdb-parser
[EXCLUSIVE] 仅限高通 ADK (Qualcomm ADK) 专属 C/C++ 代码分析工作流。 触发条件:仅当用户要求分析代码,且当前项目存在 `adk/`、`application_common/` 等高通特征目录时才可触发。 强排他约束:绝对禁止在非高通 ADK 项目中使用此技能及相关工具。
How this skill is triggered — by the user, by Claude, or both
Slash command
/x2p-compdb-parser:x2p-workflowThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
高通 ADK 是一个庞大且包含多个子项目(Headset, Earbuds 等)的 Monorepo。为了确保底层宏定义绝对准确并防止项目间的符号交叉污染,你必须严格执行以下交互式 Workflow:
高通 ADK 是一个庞大且包含多个子项目(Headset, Earbuds 等)的 Monorepo。为了确保底层宏定义绝对准确并防止项目间的符号交叉污染,你必须严格执行以下交互式 Workflow:
快速扫描工作区,如果找不到 adk/ 或 application_common/ 等特征目录,立刻停止执行本工作流,按普通 C 项目处理,绝不调用本插件工具。
判断运行环境。如果在 WSL 中运行但操作 Windows 盘符代码(如 /mnt/c/),传入工具的路径必须是 /mnt/ 开头的绝对路径,绝对禁止传入反斜杠 \。
向上寻找,找到包含 adk/、application_common/ 的最顶层代码库根目录。后续所有工具的 output_dir 或 root_dir 参数都必须使用这个根目录的绝对路径。
在生成配置前,你必须按照以下优先级确定分析目标,绝不能盲目瞎猜:
探测环境变量(最高优先级):
静默执行系统命令检查终端是否设置了环境变量 ADK_ACTIVE_X2P。
x2p_file_path。交互式询问项目( Ask Project):
若无环境变量,请立刻调用 scan_adk_projects 工具扫描根目录,获取所有 .x2p 列表。
立即停止工作流,将完整列表呈现给用户,并礼貌询问:“未检测到默认环境变量,请问您当前需要分析列表中的哪一个项目?”
交互式询问配置(Ask Config):
用户明确选择项目后,立刻调用 get_x2p_configs 工具分析该 .x2p 文件,获取所有配置列表。
将配置列表呈现给用户,并询问:“已选择项目,请问您需要激活以下哪种配置?(或直接回复回车使用默认配置)”
得到用户明确答复(或通过环境变量获取)后,必须强制调用 generate_clangd_config 工具:
x2p_file_path:确定的 .x2p 绝对路径。output_dir:第 1 步确定的 ADK 顶级根目录绝对路径。config_name:用户选择的配置名(若用户选择默认,则留空)。
(说明:该工具内置了极速的缓存校验机制。如果 x2p 未发生变更,工具会在毫秒级返回跳过提示,因此你不必担心重复调用会导致性能问题,每次分析前请安心调用以保障环境绝对同步。)工具返回成功或“缓存命中”后,你才可以调用 serena MCP 进行深度的代码检索。由于配置已通过严格把关,Serena 将被完美锁定在当前选定的子项目环境中。
npx claudepluginhub hyfhot/qualcomm-adk-plugins --plugin x2p-compdb-parserRuns cppcheck, clang-tidy, or GCC -fanalyzer static analysis on embedded C/C++ code, with optional MISRA-C 2012 compliance checking.
Maps unfamiliar codebases in phases: structure, entry points, data flow, patterns, landmines. Use before coding in new, inherited, or revisited projects.
Performs preliminary codebase fact-finding and produces structured research reports. Use before cw-spec to understand unfamiliar codebases and generate enriched context.