Vývojové rozhraní příkazového řádku aplikace pro Windows (winapp CLI)

Důležité

Rozhraní příkazového řádku pro vývoj aplikací pro Windows je aktuálně ve verzi veřejná ukázka. Funkce a příkazy se můžou před finální verzí změnit. Podělte se o svůj názor vytvářením problému.

aplikace pro Windows Development CLI (winapp CLI) je nástroj příkazového řádku pro vytváření aplikací pro Windows s frameworkem dle vašeho výběru. Funguje z terminálu, editoru, který preferujete, nebo agenta pro kódování AI.

  • Aplikace WinUI: vytvářet, spouštět, ladit, testovat a balit aplikace WinUI bez otevření Visual Studio.
  • Multiplatformní a další frameworky: přeneste funkce Windows do stávajících aplikací Electron, Flutter, Tauri, Rust, .NET nebo C++ beze změny frameworků. Rozhraní příkazového řádku winapp nastaví sadu Windows App SDK a Windows SDK, přiřadí aplikaci identitu balíčku, abyste mohli volat rozhraní API, jako jsou oznámení a AI na zařízení, a zabalí ji jako MSIX pro Microsoft Store nebo vlastní distribuci.

Klíčové výhody rozhraní příkazového řádku winapp

Ikona příkazového řádku na vyvýšené dlaždici nad modrou vlnou pixelů

Vytvářejte a spouštějte aplikace WinUI z terminálu
winapp new vytvoří aplikaci WinUI z oficiálních šablon, včetně prázdných, NavigationView, TabView a počátečních šablon MVVM. winapp runsestaví projekt, nainstaluje odpovídající aplikace pro Windows Runtime a spustí aplikaci bez ohledu na to, jestli je zabalená nebo nebalená.
Vytvoření první aplikace WinUI

Ikona brouka na vyvýšené dlaždici přes diagonální pruh modrých pixelů

Ladění s využitím identity balíčku a diagnostiky chybových ukončení
Spusťte aplikaci s identitou balíčku, abyste mohli otestovat oznámení, AI na zařízení a další rozhraní API, která vyžadují identitu. Přidejte --debug-output k zachycení zpráv ladění a výpisů pádů. V případě pádů WinUI dekóduje winapp odložené výjimky, které vás nasměrují na obslužnou rutinu události XAML, která selhala.
Ladění s využitím identity balíčku

Bublina chatu s ikonou s jiskrami na vyvýšené dlaždici přes modrou pixelovou vlnu

Ukotvěte AI agenty pro psaní kódu ve skutečném kódu WinUI
winapp find-uivrátí funkční XAML a C# z galerie WinUI 3 a sady nástrojů Windows Community Toolkit. winapp find-apizkontroluje rozhraní API prostředí Windows Runtime, na která odkazuje váš projekt. Agenti je používají k vygenerování kódu z skutečných ukázek a metadat místo odhadu.
Použijte winapp CLI s AI agenty

Ikona ukazatele a dotyková ikona na vyvýšené dlaždici přes diagonální pruh modrých pixelů

Automatizujte a testujte uživatelské rozhraní své aplikace
winapp uikontroluje a interaguje se spuštěnými aplikacemi prostřednictvím model UI Automation a zaznamenává snímky obrazovky a nahrávky. Spusťte aplikaci v Windows Sandboxu a otestujte ji v čistém prostředí.
Automatizace uživatelského rozhraní

Ikona balíčku na vyvýšené dlaždici nad modrou vlnou pixelů

Zabalte, podepište a odešlete
winapp pack sestaví váš projekt, zabalí ho jako MSIX a podepíše ho v jednom kroku. Generujte vývojové certifikáty místně, podepisujte buildy pro vydání pomocí Důvěryhodné podepisování Azure a nainstalujte rozhraní příkazového řádku winapp na GitHub Actions nebo Azure DevOps runnerech.
Zabalte aplikaci

Ikona puzzle na vyvýšené dlaždici přes diagonální pás modrých pixelů

Přeneste funkce Windows do libovolné architektury
Přidejte sadu Windows SDK a Windows App SDK, identitu balíčku a balení MSIX do aplikací vytvořených pomocí .NET, C++, Electron, Flutter, Rust nebo Tauri, aniž byste museli měnit systém sestavení.
Viz podporované frameworky

Začínáme s WinUI

Po instalaci rozhraní příkazového řádku winapp a sady .NET SDK vytvořte a spusťte aplikaci WinUI:

winapp new --name MyWinUIApp --template winui-navview --use-defaults
cd MyWinUIApp
winapp run

Až budete připraveni balíček otestovat místně, vygenerujte vývojový certifikát a vytvořte podepsaný balíček MSIX:

winapp cert generate --manifest ./Package.appxmanifest
winapp pack ./MyWinUIApp.csproj -c Release --cert ./devcert.pfx

Vývojový certifikát používá výchozí heslo a slouží pouze k místnímu testování. Než aplikaci distribuujete, podepište ji pomocí důvěryhodného certifikátu, například pomocí winapp az-sign. Další informace naleznete v tématu Zabezpečení.

Podrobný návod, který zahrnuje nastavení a první změnu uživatelského rozhraní, najdete v tématu Sestavení první aplikace WinUI. Pokud chcete zobrazit všechny dostupné šablony, spusťte winapp new --list. Úplný pracovní postup, včetně ladění, automatizace uživatelského rozhraní a balení, najdete v tématu Použití rozhraní příkazového řádku winapp s WinUI.

Instalace

WinGet

Nejjednodušší způsob instalace rozhraní příkazového řádku je přes WinGet (Windows Správce balíčků):

winget install Microsoft.winappcli --source winget

Pokud používáte modul WinGet PowerShellu, spusťte Install-WinGetPackage Microsoft.winappcli místo toho.

NPM

Pro projekty Electron nainstalujte prostřednictvím NPM:

npm install @microsoft/winappcli --save-dev

GitHub Actions / Azure DevOps

Pro pipelines CI/CD použijte akci setup-WinAppCli k automatické instalaci rozhraní příkazového řádku na spouštěče nebo agenty.

Ruční stažení

Stáhněte si nejnovější build z GitHub release.

Ověření instalace

Po instalaci ověřte instalaci voláním rozhraní příkazového řádku:

winapp --help

Nebo pokud používáte elektron/Node.js:

npx winapp --help

Použití CLI winapp s agenty AI

winapp CLI je navržené tak, aby dobře fungovalo s agenty pro kódování AI. Příkazy, jako find-ui a find-api, vracejí strojově čitelný výstup s --json, aby agent mohl vyhledat skutečné ukázky WinUI a rozhraní API prostředí Windows Runtime předtím, než zapíše kód.

Nainstalujte modul plug-in winapp, abyste získali dovednosti agenta pro pracovní postup CLI winapp:

# GitHub Copilot CLI
copilot plugin install microsoft/WinAppCli

# Claude Code
claude plugin marketplace add microsoft/WinAppCli
claude plugin install winappcli@winappcli

Pokud pracujete v Visual Studio Code, rozšíření WinApp VS Code spustí příkazy rozhraní příkazového řádku winapp z editoru a spustí aplikaci s identitou balíčku, když stisknete klávesu F5. Nainstalujte ho z Visual Studio Marketplace.

Podporované architektury

Rozhraní příkazového řádku winapp funguje s WinUI a dalšími frameworky aplikací:

.NET Framework Guide
WinUI Začínáme s WinUI
.NET / WPF (Windows Presentation Foundation) / WinForms Začněte s .NET
.NET MAUI Začínáme s .NET MAUI
C++ (CMake) Začínáme s C++
Elektron Začněte s Electronem
Rust Začněte s Rustem
Tauri Začněte s Tauri
Třepetat Začněte s Flutterem

Další příručky:

  • Balení EXE/CLI: podrobný průvodce balením existujícího EXE/CLI jako MSIX
  • Řídké balíčkování: přiřaďte nebalené aplikaci identitu balíčku pomocí MSIX pouze s identitou (řídký) a externího obsahu
  • Doplňování příkazů: Povolení doplňování pro příkazy, možnosti a hodnoty v PowerShellu, bash, zsh a fish.
  • Pokyny k zabezpečení: Jaké vývojové certifikáty a vývojářský režim se na vašem počítači mění, jak se zpracovávají devcert.pfxa jak se podepisují do produkčního prostředí

Přehled příkazů

Kategorie Příkazy
Vytvořit a nastavit nový, inicializovat, obnovit, aktualizovat
Spustit a ladit run, create-debug-identity, embed-identity, unregister
Balení balíček
Manifesty generování manifestu, manifest aktualizace prostředků, manifest přidání aliasu
Certifikáty a podepisování cert generate, cert install, sign, az-sign, create-external-catalog
Vyhledávání kódu pro agenty find-ui, find-api
Automatizace uživatelského rozhraní a sandbox ui, target
nástrojů tool, store, get-winapp-path, complete
Node.js/Elektron node create-addon, node generate-bindings, node add-electron-debug-identity, node clear-electron-debug-identity

Úplné referenční informace k rozhraní příkazového řádku najdete v referenčních informacích k rozhraní příkazového řádku.

Samples

Složka s ukázkami na GitHubu má spustitelný projekt pro každý podporovaný framework:

Sample Description
Aplikace WinUI Aplikace WinUI v balíčku je zaregistrována a spuštěna pomocí winapp run
Nebalená aplikace WinUI Nebalená aplikace WinUI spuštěná pomocí winapp run
Řešení WinUI Řešení s více projekty (aplikace a testovací projekt), které ukazuje, jak winapp run vybírá projekt aplikace
Aplikace C++ WinUI Okno WinUI vytvořené v jazyce C++ pomocí CMake bez XAML nebo MSBuildu
WPF (Windows Presentation Foundation) aplikace desktopová aplikace WPF (Windows Presentation Foundation)
.NET MAUI aplikace Projekt Windows pro .NET MAUI zabalený a podepsaný pomocí rozhraní příkazového řádku winapp
Aplikace C++ Nativní aplikace C++ Win32 vytvořená pomocí CMake
Elektron Aplikace Electron Forge s manifestem, prostředky a nativními doplňky jazyka C++ a C#
Aplikace Rust Aplikace Rust, která volá rozhraní API systému Windows
Aplikace Tauri Aplikace Tauri s back-endem Rustu
Aplikace Flutter Desktopová aplikace Flutter s identitou balíčku a Windows App SDK
Sparse aplikace WPF (Windows Presentation Foundation) aplikace s řídkým balením (MSIX jen pro identitu) a instalačním programem

Proč identita balíčku?

Mnoho Windows rozhraní API vyžaduje, aby vaše aplikace měla identitu balíčku. Díky identitě získá vaše aplikace access k funkcím, jako jsou oznámení, integrace operačního systému a AI na zařízení. Šablony aplikací WinUI obsahují manifest balíčku, takže winapp run jim dává identitu ve výchozím nastavení. Úplný seznam toho, co identita balíčku odemkne, a pomoc s výběrem správného modelu balení, najdete v tématu Přehled balení.

Otevřený zdrojový kód

Příkazový řádek CLI winapp je otevřený zdroj. Zdrojový kód, problémy se soubory a přispívání na GitHub. Nápovědu najdete v tématu Support.