# Changelog All notable changes to this project are documented here. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). ## [Unreleased] ### Added - **`windbg` plugin**: focused WinDbg diagnosis workflows, deterministic output validation, contrarian review, and public WinDbg-Feedback guidance. - **`winappcli` plugin** (WinApp CLI 0.7.1: MSIX packaging, signing, package identity, appxmanifest, Windows SDK setup, Store distribution) for Copilot, Claude Code, and Codex, pinned to microsoft/winappCli `v0.7.1`. Install with `copilot plugin install winappcli@win-dev-skills` (or the Claude/Codex equivalent). OpenClaw users install it as a skills-only bundle with `openclaw plugins install winappcli --marketplace microsoft/winappCli`. - Contribution guide for new plugins: add one here under `plugins//`, or pin one maintained in another repo. ### Changed - Broadened the README and contribution guide to Windows development and debugging, including apps, services, and kernel-mode drivers. Existing plugin listings and functionality are unchanged. - **The `winui` plugin now installs from [microsoft/winappCli](https://github.com/microsoft/winappCli)**, pinned to commit `5a064a42`. Its content is unchanged (still 0.7.1: same name, agent, and eight skills). File WinUI issues and PRs in microsoft/winappCli. - This repo now hosts and lists agent plugins for Windows development and debugging ("Agents and skills for Windows development and debugging"). Copilot and Claude Code install commands are unchanged. - **The Codex catalog is renamed from `microsoft-winui` to `win-dev-skills`**, so Codex commands now match the other hosts (`@win-dev-skills`). ### Removed - The local copy of the `winui` plugin (`plugins/winui/`) and its tests, and the `staging` release flow. PRs now target `main`. ### Migration - **Codex:** `codex plugin marketplace upgrade` now fails with "upgraded marketplace name `win-dev-skills` does not match configured marketplace `microsoft-winui`". Installed plugins keep working but stop updating. Move them over once, removing plugins before the marketplace: `codex plugin remove @microsoft-winui` (for each installed plugin), `codex plugin marketplace remove microsoft-winui`, `codex plugin marketplace add microsoft/win-dev-skills`, then `codex plugin add @win-dev-skills`. - **OpenClaw:** reinstall `winui` once with `openclaw plugins install winui --marketplace microsoft/winappCli`. `--marketplace microsoft/win-dev-skills` and `openclaw plugins update` no longer work for this plugin. - **OpenCode:** link the skills from a microsoft/winappCli clone (`plugins/winui/agent-plugin/skills` and `plugins/winapp/skills`). ## [0.7.1] — 2026-09-30 ### Fixed - Replace cross-skill markdown links with plain-text skill names so each skill is self-contained and passes marketplace link validation (vally `valid-refs`), which blocked the awesome-copilot listing update. CI now enforces this. ## [0.7.0] — 2026-09-30 ### Added - Explicit Native AOT run/publish guidance, source-generated WinRT binding patterns, and native toolchain prerequisites. - UI testing that prefers Windows Sandbox when available so synthetic input stays off your desktop, otherwise runs locally; explicit Windows Sandbox requests never fall back. Normal build-and-run launches locally. ### Changed - Require WinApp CLI 0.7+ and recommend the latest `Microsoft.Windows.SDK.BuildTools.WinUIAnalyzer` for app, IDE, and CI builds. If unavailable, continue with a notice that analyzer checks were not run. - Route analyzer and WinApp CLI tool bugs to `microsoft/winappCli`; keep skill and plugin guidance issues here. - Install or upgrade WinApp CLI automatically when missing (no admin needed) instead of asking the user to run setup; still ask before the .NET SDK, Developer Mode, or anything else that needs admin rights or a reboot. - Use direct `winapp run`, project-scoped `winapp find-api`, and native project-mode MSIX packaging, including multi-architecture bundles. - Treat `microsoft/winappCli` as the owner of analyzer and CLI implementation, tests, and package publication. Keep this repository's validation focused on plugin content and PowerShell workflows. ### Fixed ### Removed - `BuildAndRun.ps1`, bundled analyzer DLL/targets, and their provenance jobs. - The local `winmd-cli` source and build/dependency wiring; API discovery is provided by `winapp find-api`. - The remaining analyzer source/tests, `build-tools.ps1`, C# build/CodeQL jobs, and NuGet restore/dependency wiring; there is no local native-tool build. ### Deprecated ## [0.6.1] — 2026-09-09 ### Fixed - Synced `plugins/winui/.claude-plugin/plugin.json` and `plugins/winui/.codex-plugin/plugin.json` versions (previously stuck at `0.3.0` since the Agent Plugins 1.0 package migration) to the current release version. Both files are now written by the release helper and checked by CI alongside the other version fields. ## [0.6.0] — 2026-08-26 ### Added - WinApp CLI 0.6 integration: new projects use `winapp new`, and WinUI control/sample discovery uses `winapp find-ui`. - Added reusable SVG and 512 px PNG WinUI artwork for marketplace listings. ### Changed - Adopted the [Agent Plugins 1.0 specification](https://agent-plugins.org/specification) and [Agent Skills specification](https://agentskills.io/specification) for portable skill packaging. The conforming package now has its own `plugins/winui/agent-plugin` root, while Claude Code, OpenAI Codex, and OpenClaw retain a containing compatibility package because their required legacy root files are not valid Agent Plugins extension namespaces. - The skills now require WinApp CLI 0.6 or later. `BuildAndRun.ps1` is a thin wrapper over project-mode `winapp run`; it keeps only the bundled analyzer injection and default crash diagnostics while WinApp CLI handles restore, build, output discovery, runtime setup, registration, and launch. - `winui-setup` no longer installs the WinUI template pack separately because `winapp new` manages templates on demand. - `winui-setup` now gives harness-neutral post-setup guidance while preserving the GitHub Copilot CLI invocation example. ### Fixed ### Removed - The in-repo `winui-search` source, unsigned executable payload, dependency metadata, and CI provenance job; WinApp CLI 0.6's `winapp find-ui` is now the single supported search surface. ### Deprecated ## [0.5.0] — 2026-07-21 ### Added - `winui-search` now indexes a third source, **Reactor** (`microsoft/microsoft-ui-reactor`): 93 C#-only declarative WinUI controls from the ReactorGallery, surfaced alongside Gallery and Toolkit results. Searchable via `--source reactor`; ships an embedded offline snapshot plus on-demand `update` refresh. - `winui-ui-testing`: documents the new `winapp ui` input and capture verbs — `send-keys` (synthetic keyboard, accelerators, per-character `KeyDown`), `hover`, `drag`, `touch`, `pen`, and `record` (H.264 MP4 capture) — with usage examples plus new rows in the "what to test" and assertion tables, and a `RichEditBox`→`send-keys` gotcha. - `winui-dev-workflow`: documents WinUI crash diagnosis in `winapp run` — the `--debug-output` stowed-exception triage pass (first-run debugger-component download, `WINAPP_DBGTOOLS_DIR`) and the new `--symbols` flag for Microsoft Symbol Server-backed native crash analysis; `BuildAndRun.ps1` gains an opt-in `-Symbols` switch. ### Changed - `winui-ui-testing` now targets **any Windows desktop app** (Win32, WPF, WinForms, WinUI 3, packaged or unpackaged) — the `winapp ui` UI Automation harness is framework-agnostic, not WinUI-only. - `BuildAndRun.ps1` defaults to `dotnet build` (was Visual Studio MSBuild) now that the Windows App SDK XAML-compiler bug is fixed; pass `-UseMSBuild` to opt back in. ### Fixed - `winui-search`: restored the WinUI Gallery data refresh, which broke when upstream `microsoft/WinUI-Gallery` reorganized and reformatted its samples — `ControlInfoData.json` moved to `SampleSupport/Data/`, sample pages moved to per-control `Samples/{UniqueId}/` folders, and the `ControlExample` schema was replaced with `--- header/xaml/c#` `SampleDefinition` `.txt` bundles. `GalleryFetcher` now parses the new format (keeping a fallback for the few legacy inline Accessibility pages) and the embedded gallery snapshot was regenerated. Fixes #120. ## [0.4.0] — 2026-06-25 ### Added - OpenClaw support: the `winui` plugin now ships a native OpenClaw manifest (`openclaw.plugin.json`) and `package.json` entry point so all eight skills load in OpenClaw (`Format: openclaw`). README documents the marketplace and local-clone install routes. ## [0.3.1] — 2026-05-19 ### Added - `winui-dev` agent: window sizing rubric, screenshot validation step, and anti-self-delegation guardrails (#84). - `winui-search`: batched CLI mode, background cache refresh, BM25-based ranking, and upgraded WinUI Gallery + Community Toolkit data fetchers (#83). ### Changed - CI: `pr-validation` workflow now also runs on PRs targeting `staging`. - Bumped `coverlet.collector` from 10.0.0 to 10.0.1 (#87). ## [0.3.0] — 2026-05-13 Baseline entry covering everything currently shipped on `main` at the time the release process was introduced. Future releases will list per-PR changes here. ### Added - Initial public preview of the `winui` plugin: `winui-dev` agent and the eight skills (`winui-dev-workflow`, `winui-design`, `winui-code-review`, `winui-ui-testing`, `winui-packaging`, `winui-wpf-migration`, `winui-session-report`, `winui-setup`). - In-repo tools: `Microsoft.WindowsAppSDK.Analyzers` (Roslyn analyzer), `winui-search` (Native AOT search over WinUI Gallery + Community Toolkit), `winmd-cli` (Native AOT WinRT/.NET metadata indexer). - CI provenance jobs guarding the committed analyzer DLL and `winui-search.exe` against source drift. - Marketplace manifest under `.github/plugin/marketplace.json` and Claude Code marketplace manifest under `.claude-plugin/marketplace.json`.