
microsoft/win-dev-skills
8 skills813 installs3k starsGitHub
Install
npx skills add https://github.com/microsoft/win-dev-skillsSkills in this repo
1Winui DesignThe winui-design skill guides WinUI 3 UI planning and XAML correctness for Fluent Design apps. Before writing XAML, agents batch-search features with the bundled winui-search.exe tool indexing WinUI Gallery controls, Windows Community Toolkit scenarios, and platform patterns, then fetch canonical samples with get before coding. UI planning maps app types to anchor controls like NavigationView, TabView, or TreeView, selects inputs and feedback controls, sizes windows with a rubric because WinUI 3 lacks SizeToContent, and avoids anti-patterns such as floating cards or hardcoded colors. XAML correctness covers ThemeResource and StaticResource brush rules, high contrast system color limits, typography styles instead of raw FontSize, 4px spacing grid, acrylic pairings, and data binding with x:Bind plus UpdateSourceTrigger=PropertyChanged on TextBox two-way binds. Accessibility requires AutomationProperties on icon-only controls and correct attached property setters in code-behind. Reference files point to approved brushes, theme resources, and review checklists. Use when designing new WinUI pages, converting from WPF or web, reviewing XAML, or fixing theme issues.131installs2Winui Code ReviewThe winui-code-review skill performs code quality review for WinUI 3 apps covering MVVM compliance, x:Bind correctness, accessibility, theming, security, and performance after the app builds and before committing. It integrates Microsoft.WindowsAppSDK.Analyzers injected via BuildAndRun.ps1 from the winui-dev-workflow skill, surfacing categorized WUI0xxx through WUI4xxx diagnostics for UWP migration, runtime pitfalls, MVVM patterns, and interop issues. MVVM checks require ObservableObject ViewModels with partial ObservableProperty properties, RelayCommand attributes, no UI types in ViewModels, and no business logic in code-behind. x:Bind rules mandate compiled bindings with explicit Mode, x:DataType on DataTemplates, and FallbackValue for nested nullable paths. Accessibility requires AutomationId on interactive controls, names on icon-only buttons, and semantic controls instead of clickable borders. Theming enforces ThemeResource brushes, built-in typography styles, 4px spacing grid, and ControlCornerRadius usage. Security covers secrets in source, unsanitized Process.Start, and validated file paths. Performance checks virtualized lists, x:Load deferral, async UI work, and disposab.114installs3Winui Dev WorkflowThe winui-dev-workflow skill provides the build and run workflow for WinUI 3 apps including project creation, BuildAndRun.ps1 execution, winapp run launching, error diagnosis, and prerequisite verification. New apps scaffold with dotnet new winui-mvvm creating CommunityToolkit.Mvvm MVVM structure with TitleBar, MicaBackdrop, and Frame navigation without pre-creating directories. Package installs use dotnet add package without pinned versions to get latest stable APIs. BuildAndRun.ps1 checks Developer Mode, finds the csproj, auto-detects x64 or ARM64, builds with MSBuild, and launches via winapp run --debug-output. Agents must invoke the script asynchronously because sync mode blocks for the app lifetime, while -Detach and -SkipRun are safe for synchronous calls. Common errors map Developer Mode, missing types, XAML binding failures, OneTime x:Bind blank UI, silent XAML compiler crashes, and package install failures to specific fixes. Prerequisites require Windows 10 v1903+, Developer Mode, .NET SDK 8.0 minimum, winapp CLI, and WinUI templates, with missing tools routed to /winui-setup rather than agent self-install. Critical rules forbid running packaged exe directly, adding Windo.113installs4Winui Ui TestingThe winui-ui-testing skill automates WinUI 3 app validation through scripted batch testing instead of slow interactive exploration. It prefers generating a ui-tests.ps1 script that exercises AutomationId-based elements, navigation, value checks on TextBox, ComboBox, and ToggleSwitch controls, flyouts, dialogs, file pickers, persistence, and accessibility coverage in one pass. The winapp ui CLI provides status, inspect, wait-for, invoke, click, set-value, screenshot, and scroll verbs with JSON output for parsing. Tests use a Test-UI helper that records pass and fail results, captures screenshots per meaningful state, audits missing AutomationId on app controls while excluding OS chrome, and writes test-results.json before exiting non-zero on failures. Agents reuse a running app PID from the build step rather than relaunching, derive HWND from list-windows excluding PopupHost, and use throw inside scriptblocks instead of exit to avoid terminating the suite. Use for WinUI UI regression, automated assertions, and accessibility audits before release.104installs5Winui PackagingThe winui-packaging skill guides MSIX packaging, code signing, and distribution for WinUI 3 applications using the winapp CLI. The end-to-end workflow builds Release configuration via BuildAndRun.ps1, generates a devcert.pfx with winapp cert generate matched to Package.appxmanifest Publisher, trusts the certificate with winapp cert install, and packages plus signs in one step using winapp package. Key rules require Publisher identity alignment, admin elevation for cert install, production timestamp URLs to prevent signature expiry, and optional self-contained bundles that include the Windows App SDK runtime. CI/CD examples use microsoft/setup-WinAppCli with quiet flags and artifact upload. Store submission covers Partner Center registration, age ratings, screenshots, privacy policy, and browser-based MSIX upload. Troubleshooting maps publisher mismatch, untrusted certificates, missing appxmanifest, and stale package installs to concrete fixes. Use when preparing WinUI 3 release builds, creating MSIX installers, managing signing certificates, setting up packaging pipelines, or publishing to the Microsoft Store.95installs6Winui SetupThe winui-setup skill installs and verifies prerequisites every other winui skill assumes on a Windows machine. It is idempotent: each step checks first, skips when satisfied, and prints status before installing anything. Detection batches checks for .NET SDK 8 or newer, WinApp CLI version 0.3 plus, WinUI 3 dotnet templates, and Developer Mode registry state, then shows a one-shot status table. Installation uses winget for Microsoft.DotNet.SDK.10 when no SDK 8 plus exists, always upgrades WinApp CLI to latest, refreshes PATH after winget installs, and reinstalls Microsoft.WindowsAppSDK.WinUI.CSharp.Templates for current templates. Developer Mode requires explicit user consent before UAC elevation because admin is needed only for that registry change. The skill forbids installing Visual Studio, GitHub Copilot CLI, or elevating the entire session. A final summary table reports what changed and suggests next steps with winui-dev-workflow. Use on new machines, after Windows reset, or when winapp or dotnet commands are missing.95installs7Winui Session ReportThe winui-session-report skill generates a diagnostic report for agent coding sessions by running the bundled Analyze-Session.ps1 script. It auto-detects whether the session came from GitHub Copilot CLI or Claude Code using environment variables and on-disk transcript formats, then parses turns, token usage, skill invocations, build attempts, stuck patterns, and tooling issues into session-report.md. Detection prefers explicit COPILOT_AGENT_SESSION_ID or CLAUDE_SESSION_ID over most-recently-modified files so parallel terminals do not shadow the active session. The agent must surface privacy guidance because reports embed unredacted transcripts including file paths, prompts, secrets, and local environment values. Users may request high-level metric summaries instead of sharing the full file. Report sections cover overview, prompt, turn breakdown, skills, subagents for Claude Code, build analysis, stuck patterns, tooling issues, and per-turn detail. After script output the agent adds observations on app quality, missing work, and WinUI tooling improvements. Triggers include session feedback, debugging agent behavior, or reviewing what happened during a build session.82installs8Winui Wpf MigrationThe winui-wpf-migration skill guides converting WPF applications to WinUI 3 on Windows. It audits System.Windows usage, creates a winui-mvvm project, and maps namespaces from System.Windows to Microsoft.UI.Xaml. Control tables cover DataGrid to ListView, WrapPanel to ItemsRepeater, TabControl to TabView, menus to MenuBar, and ToolBar to CommandBar. Threading replaces Dispatcher with DispatcherQueue via GetForCurrentThread. Imaging migration removes PresentationCore references early because they crash the WinUI XAML compiler, using BitmapImage or Windows.Graphics.Imaging. MVVM converts to CommunityToolkit.Mvvm with ObservableProperty and RelayCommand, DynamicResource to ThemeResource, and resx to resw. Critical rules forbid UseWPF, deleting Package.appxmanifest, and overwriting App.xaml boilerplate. Launch with winapp run. Use when converting WPF code or fixing WinUI migration build errors.79installs