aplikace pro Windows Development CLI (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.

Rozhraní příkazového řádku pro vývoj aplikace pro Windows Development CLI (WinApp CLI) je nástroj příkazového řádku pro vytváření aplikací pro Windows s frameworkem, který zvolíte. 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í Windows App SDK a sadu WINDOWS SDK, udělí vaší 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

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

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 WinApp CLI dekóduje 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

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žívejte WinApp CLI s AI agenty

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í

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 WinApp CLI na runnerech GitHub Actions nebo Azure DevOps. Zabalte aplikaci

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 WinApp CLI 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í WinApp CLI 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í nástroje WinApp CLI s agenty AI

Rozhraní příkazového řádku WinApp 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 moduly plug-in agenta, abyste získali dovednosti agenta pro WinApp CLI a WinUI:

  • winappcli: agent a dovednosti pro příkazy WinApp CLI, pracovní postupy a řešení potíží.
  • winui: dovednosti pro vytváření, balení a testování aplikací WinUI 3.
# GitHub Copilot CLI
copilot plugin marketplace add microsoft/WinAppCli
copilot plugin install winappcli@winappcli
copilot plugin install winui@winappcli

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

# OpenAI Codex
codex plugin marketplace add microsoft/WinAppCli
codex plugin add winappcli@winappcli
codex plugin add winui@winappcli

Pokud pracujete v Visual Studio Code, rozšíření WinApp VS Code spustí příkazy WinApp CLI 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 architekturami 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
  • .NET aplikace založené na souborech: Spusťte jeden .cs soubor s identitou balíčku, nevyžaduje se žádný soubor projektu ani manifest.
  • Ří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.
  • DevTools: Kontrola spuštěné aplikace WinUI 3, vyzkoušení živých změn vlastností a ponechání komentářů pro agenta (pokročilé)
  • 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, devtools, target
nástrojů tool, store, get-winapp-path, config, 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 .NET MAUI Windows projekt zabalený a podepsaný pomocí WinApp CLI
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
Minimalistická 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

Rozhraní příkazového řádku WinApp je open source. Zdrojový kód, problémy se soubory a přispívání na GitHub. Nápovědu najdete v tématu Support.