Windows App Development CLI — новый инструмент для упрощения разработки Windows-приложений

Автор:

Microsoft выпустила публичную предварительную версию нового инструмента под названием Windows App Development CLI (или winapp), который призван упростить весь цикл разработки приложений для Windows. Утилита имеет открытый исходный код и в первую очередь предназначена для разработчиков, которые не используют Visual Studio или MSBuild. Winapp поддерживает множество фреймворков и инструментов, включая Electron, C++ (с CMake), .NET, Rust и Dart.

Основная цель Windows App Development CLI — упрощение таких сложных задач, как управление SDK, редактирование манифестов, генерация сертификатов и упаковка приложений. Инструмент предоставляет прямой доступ к современным API Windows, включая функции искусственного интеллекта (Windows AI APIs), безопасности и интеграции с оболочкой системы, независимо от используемого технологического стека.

Ключевые возможности инструмента:

  • Инициализация рабочей среды одной командой. Команда winapp init загружает необходимые SDK, генерирует проекты C++/WinRT, создаёт манифесты и настраивает сертификаты. Для работы в команде предусмотрена команда winapp restore, обеспечивающая идентичность сред на разных устройствах. Интеграция с GitHub и Azure DevOps поддерживает рабочие процессы CI/CD.
  • Автоматизация Package Identity для отладки. Использование современных API требует наличия у приложения идентификатора пакета (Package Identity). Ранее для этого требовалась полная упаковка приложения. Команда winapp create-debug-identity добавляет идентификатор прямо к исполняемому файлу, что позволяет вести быструю отладку без установки пакета.
  • Управление манифестами и сертификатами. CLI автоматизирует создание файлов appxmanifest.xml. Команда winapp manifest update-assets обновляет все изображения из одного исходного файла, а winapp cert generate создает самоподписанные сертификаты для локального тестирования.
  • Упрощенная упаковка MSIX. Для упаковки и подписи приложения теперь достаточно команды winapp pack. Она создает готовые пакеты, который подойдут как для публикации в Microsoft Store, так и для распространения в качестве отдельных установочных файлов.

Расширенная поддержка Electron

Для разработчиков Electron доступна специальная версия CLI, распространяемая через npm. Она позволяет создавать нативные дополнения на C++ или C#, предварительно настроенные для Windows SDK. Также с её помощью можно внедрять в продукты, например, модели искусственного интеллекта, такие как Phi Silica.

Команда winapp node add-electron-debug-identity позволяет внедрять Package Identity в запущенные процессы Electron для мгновенного тестирования API.

Как попробовать

Предварительная версия Windows App Development CLI уже доступна для установки через WinGet или npm (для проектов на Electron).

  • Установка через WinGet: winget install microsoft.winappcli
  • Установка через npm (для проектов на Electron): npm install --save-dev @microsoft/winappcli

Документация, примеры для .NET, C++/CMake, Rust и Electron, а также форма для отчета об ошибках доступны в репозитории проекта на GitHub.