From xonovex-skill-cmake
Use when editing CMake build files for C/C++ projects on CMake 3.20+. Triggers on `CMakeLists.txt`, `*.cmake` files and on prompts about adding targets, linking libraries, dependency fetching, test setup, install rules, or PUBLIC/PRIVATE/INTERFACE visibility, even when the user doesn't say 'CMake'. Apply for FetchContent, find_package, target_link_libraries, CTest.
How this skill is triggered — by the user, by Claude, or both
Slash command
/xonovex-skill-cmake:cmake-guideThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
- CMake ≥ 3.20; modern target-based usage.
target_link_libraries scope matters: PRIVATE = consumers don't see it, INTERFACE = no compile, PUBLIC = both — wrong scope leaks transitive depsfind_package may use PATHS or HINTS but ignores both if a config file is on a system path; use <Pkg>_ROOT env var to force-locate$<CONFIG:Debug>) only evaluate at build time — debugging by message() won't show their final valuesCMAKE_INSTALL_PREFIX is captured at configure time; changing it after first config requires a clean reconfigureGuides collaborative design exploration before implementation: explores context, asks clarifying questions, proposes approaches, and writes a design doc for user approval.
Creates structured, bite-sized implementation plans from specs or requirements before writing code. Useful for breaking down multi-step tasks into testable steps with file structure and task boundaries.
Resolves in-progress git merge or rebase conflicts by analyzing history, understanding intent, and preserving both changes where possible. Runs automated checks after resolution.
npx claudepluginhub xonovex/platform --plugin xonovex-skill-cmake