К основному содержанию
правило официальный · GitHub

cmake-vcpkg — правило для GitHub Copilot: сборка C++ и пакеты

Правило задаёт Copilot контекст проекта на C++: vcpkg в режиме манифеста, настройки через CMakePresets.json и сборка под MSVC, Clang и GCC.

Установить в GitHub Copilot · Вручную: положить файлы Все способы и платформы ↓
.github/instructions/cmake-vcpkg.instructions.md
Открыть на GitHub

Что делает cmake-vcpkg

Правило подключается к файлам *.cmake, CMakeLists.txt, *.cpp, *.h и *.hpp и меняет то, что Copilot предлагает в этих файлах. Главное: проект использует vcpkg в режиме манифеста, поэтому советы вида vcpkg install library не сработают — зависимости описываются в манифесте, а не ставятся командой вручную.

Настройки Copilot советует задавать через CMakePresets.json, а не разбрасывать по CMakeLists.txt. Если предлагаемая переменная зависит от политик CMake, правило требует упомянуть эти политики — иначе значение может вести себя иначе, чем ожидается. Проект должен собираться под MSVC, Clang и GCC, так что советы в духе «только для одной платформы» тут не подходят.

Отдельный пункт про OpenCV: в примерах с чтением файлов правило требует абсолютные пути. То есть video.open("C:/project/file.mp4"), а не video.open("file.mp4") — иначе пример развалится при запуске из другой рабочей папки.

Какие задачи решает

  • объяснить Copilot, что vcpkg работает в режиме манифеста
  • получить советы по зависимостям без ручного vcpkg install
  • вынести настройки сборки в CMakePresets.json
  • учесть политики CMake при правке переменных
  • писать примеры с OpenCV, которые не зависят от рабочей папки

Примеры запросов агенту

  • добавь в проект зависимость от библиотеки через манифест vcpkg
  • перенеси эти переменные сборки в CMakePresets.json
  • проверь, что пример с OpenCV использует абсолютный путь к файлу

Как установить cmake-vcpkg

Вручную: положить файлы

.github/instructions/cmake-vcpkg.instructions.md

Поле applyTo задаёт, к каким файлам применять

По шагам, с командами для каждой платформы: AGENTS.md и CLAUDE.md: что это, кто читает и какой выбрать

Вопросы о cmake-vcpkg

Как установить cmake-vcpkg в GitHub Copilot?

Положите файл по пути .github/instructions/cmake-vcpkg.instructions.md в репозитории. Правило подхватится для файлов, указанных в applyTo.

Что делает cmake-vcpkg?

Задаёт Copilot контекст C++-проекта: vcpkg в режиме манифеста, настройки через CMakePresets.json, сборка под MSVC, Clang и GCC. Ещё требует упоминать политики CMake и использовать абсолютные пути в примерах с OpenCV.

Почему правило запрещает советы вида vcpkg install?

Проект использует vcpkg в режиме манифеста, поэтому такая команда не даст ожидаемого результата. Зависимости описываются в манифесте.

Исходный текст

cmake-vcpkg.instructions.md · MIT
---
description: 'C++ project configuration and package management'
applyTo: '**/*.cmake, **/CMakeLists.txt, **/*.cpp, **/*.h, **/*.hpp'
---

This project uses vcpkg in manifest mode. Please keep this in mind when giving vcpkg suggestions. Do not provide suggestions like vcpkg install library, as they will not work as expected.
Prefer setting cache variables and other types of things through CMakePresets.json if possible.
Give information about any CMake Policies that might affect CMake variables that are suggested or mentioned.
This project needs to be cross-platform and cross-compiler for MSVC, Clang, and GCC.
When providing OpenCV samples that use the file system to read files, please always use absolute file paths rather than file names, or relative file paths. For example, use `video.open("C:/project/file.mp4")`, not `video.open("file.mp4")`.

© github · MIT · github/awesome-copilot

Похожие правила IDE

Все правила IDE по теме «Языки программирования» →
cmake mohitmishra786 Скилл настраивает сборку проектов на C и C++ по правилам современного CMake. Пригодится при написании CMakeLists.txt, подключении библиотек и сборке с санитайзерами. CX Codex +1 1 700установок qt-cmake-project qt-ai-skills Скилл собирает и правит CMake для проектов на Qt 6: цели, QML-модули, ресурсы. Пригодится, когда агент путает команды Qt 5 и Qt 6. CX Codex +1 530установок cpp-modules mohitmishra786 Скилл для работы с модулями C++20: именованные модули, партиции, header units, сборка через CMake и флаги компиляторов. CX Codex +1 555установок cpp-pro https://github.com/Jeffallan Пишет, оптимизирует и отлаживает C++ с concepts, ranges, корутинами, SIMD и шаблонной метапрограммированием. Пригодится для проектов на C++20/23, где нужна производительность и чёткая типизация. CX Codex +1 5 300установок cpp-testing affaan-m Скилл ведёт агента по циклу red-green-refactor в тестах на C++17/20 и настраивает GoogleTest с CMake/CTest. Пригодится, когда тесты падают или ведут себя нестабильно. CX Codex +1 4 700установок ghostling-libghostty-terminal reason-machines Скилл показывает, как собрать минимальный терминальный эмулятор на C-библиотеке libghostty-vt с окнами и отрисовкой через Raylib. CX Codex +1 1 100установок

Из того же набора732

Весь набор →
coldfusion-cfm Правило задаёт стандарты для ColdFusion-файлов *.cfm: синтаксис, безопасность запросов и структуру приложения. Оно срабатывает при работе с такими файлами. ★ 40 418звёзд репо coldfusion-cfc Правило задаёт Copilot стандарты кода для ColdFusion-компонентов: CFScript, cfqueryparam, аккуратные геттеры и сеттеры. Пригодится, если в проекте есть файлы .cfc. ★ 40 418звёзд репо codexer Инструкция превращает GitHub Copilot в строгого Python-исследователя: требует изоляции окружений, аннотаций типов, тестов на pytest и ищет документацию через Context 7 MCP. ★ 40 418звёзд репо code-review-generic Правило задаёт Copilot порядок ревью: сначала безопасность и корректность, потом качество кода, тесты и производительность. ★ 40 418звёзд репо clojure Правило настраивает GitHub Copilot на REPL-ориентированную разработку на Clojure через плагин Calva и выравнивание скобок. ★ 40 418звёзд репо centos-linux Правило задаёт подход к администрированию CentOS: пакеты, systemd, firewalld и SELinux. Пригодится для команд, скриптов и документации. ★ 40 418звёзд репо blazor Задаёт стандарты вёрстки Razor-компонентов, внедрения зависимостей, кэширования и управления состоянием в Blazor для GitHub Copilot. ★ 40 418звёзд репо bicep-code-best-practices Правило задаёт рекомендации для Bicep-файлов: от имён параметров до ссылок на ресурсы и работы с секретами. Помогает Copilot придерживаться единого стиля при написании инфраструктурного кода. ★ 40 418звёзд репо

Спонсоры проекта

Компании, которые помогают держать аналитику открытой