Winui Dev Workflow
Ciclo di build-and-run per app WinUI 3: BuildAndRun.ps1, winapp run, tabella di correzione errori di build
Richiede configurazione
Cosa fa
La skill di Microsoft per il ciclo interno di WinUI 3 / Windows App SDK: scaffolding di un progetto con `dotnet new winui-mvvm`, build e avvio tramite il BuildAndRun.ps1 in bundle (controllo Modalità Sviluppatore, rilevamento automatico x64/ARM64, `winapp run --debug-output`) e diagnosi dei crash tramite triage delle eccezioni stowed di WinUI. Include una tabella di ricerca che mappa codici di errore concreti (XLS0414, MSB3073, 0x8000FFFF, 0x8007000B, finestra vuota da x:Bind OneTime) a correzioni. Si attiva quando si sta costruendo, eseguendo o correggendo errori di build/avvio in un progetto WinUI 3. Solo Windows: richiede PowerShell, .NET SDK e la CLI winapp.
Rapporto di test
Clonato il repository e trovato la skill in plugins/winui/skills/winui-dev-workflow; frontmatter analizzato in modo pulito tramite yaml.safe_load con esattamente nome + descrizione, e copiando la cartella in una HOME temporanea SKILL.md è stato posizionato in ~/.claude/skills/winui-dev-workflow/SKILL.md. Recuperati raw SKILL.md, BuildAndRun.ps1 e analyzer/Microsoft.WindowsAppSDK.Analyzers.targets — tutti HTTP 200; ho letto tutte le 267 righe di BuildAndRun.ps1 e confermato ognuno dei sei comportamenti che SKILL.md dichiara per esso (controllo AppModelUnlock registro Modalità Sviluppatore, scoperta single-csproj, rilevamento piattaforma PROCESSOR_ARCHITECTURE, dotnet build con /restore, ricerca output bin\<Platform>\<Config>\net*\win-<rid>, `winapp run --debug-output`), più un blocco `finally` che elimina la Directory.Build.props temporanea e una guardia che si rifiuta di sovrascrivere una preesistente. Nessun curl|sh, nessun base64, nessuna chiamata di rete, nessun segreto, nessun percorso macchina hardcoded — solo una DLL analyzer precompilata da 49KB la cui sorgente si trova in-repo in src/tools/winui-analyzer. La fase OUTPUT non è stata eseguibile: questo Mac non ha pwsh/powershell, né dotnet, né winapp (`pwsh -File ./BuildAndRun.ps1 -SkipRun` → "command not found"), e il controllo Modalità Sviluppatore legge HKLM, quindi nessuna build è mai stata eseguita; ho invece scritto due artefatti di testo (scratchpad/wdw_baseline.md vs wdw_skill.md) per una diagnosi di finestra vuota + 0x8000FFFF — la baseline ha cercato Visual Studio F5, Add-AppxPackage e try/catch intorno a InitializeComponent e ha elencato quattro cause speculative di finestra vuota, mentre la versione della skill sostituisce l'intero ciclo con una singola chiamata BuildAndRun.ps1 asincrona, nomina la singola causa radice "x:Bind defaults to OneTime — add Mode=OneWay", e aggiunge fatti che la baseline non ha mai prodotto (WINAPP_DBGTOOLS_DIR per saltare il download degli strumenti di debug del primo crash, MSB3073 XamlCompiler exit-1 = aggiorna Microsoft.WindowsAppSDK a >= 2.1.3). Queste sono differenze di contenuto documentato, non comportamento runtime verificato, quindi outputMeasured rimane falso e il verdetto è setup. Frasi di attivazione giudicate: DOVREBBE caricare — "My WinUI 3 app won't build, I'm getting XLS0414 on a custom control" (sì), "Scaffold a new WinUI 3 desktop app and get it running" (sì), "The Windows App SDK app launches then instantly closes with 0x8000FFFF" (sì); NON DOVREBBE — "Sign my MSIX and submit it to the Microsoft Store" (no, quella è la skill sorella winui-packaging), "My React Native Windows app fails to build on x64" (no, non WinUI 3). 5/5 corretto.
Testato il: 2026-07-21 · Claude Code 2.x (agent harness)
Installazione
git clone --depth 1 https://github.com/microsoft/win-dev-skills.git /tmp/winui-dev-workflow-src mkdir -p ~/.claude/skills cp -R /tmp/winui-dev-workflow-src/plugins/winui/skills/winui-dev-workflow ~/.claude/skills/winui-dev-workflow # Windows-only skill. Runtime prerequisites (not installed by the copy above): # .NET SDK >= 8.0 (10 recommended): winget install Microsoft.DotNet.SDK.10 # winapp CLI >= 0.3: winget install Microsoft.WinAppCLI # WinUI templates: dotnet new install Microsoft.WindowsAppSDK.WinUI.CSharp.Templates # Developer Mode: Settings > System > For developers > On # The skill ships BuildAndRun.ps1 plus a prebuilt analyzer/Microsoft.WindowsAppSDK.Analyzers.dll # (source in the same repo at src/tools/winui-analyzer) that the script injects into your build # via a temporary Directory.Build.props and removes afterwards. # Plugin-marketplace alternative (installs all 7 winui skills + agents): # claude plugin marketplace add microsoft/win-dev-skills && claude plugin install winui@win-dev-skills
Comandi e prompt di esempio
/winui-dev-workflowCiclo di build-and-run per app WinUI 3: BuildAndRun.ps1, winapp run, tabella di correzione errori di build
Gli skill si attivano con richieste in linguaggio naturale, senza comandi da ricordare. Dopo l'installazione, prompt come questi lo attivano (in inglese):
Fix this WinUI 3 build errorRun my WinUI app with BuildAndRun.ps1Diagnose why winapp run is failing