Repository navigation
Version: 0.8.0
Commit: e5cedcc04921f6f74535cf45668292203e439d45
What's Changed
Other Changes
- Fix two flaky execution-target tests by Alexandre Zollinger Chohfi (@azchohfi) in #950
- Fix
winapp new -t reactorwhen another template pack also registersreactorby Alexandre Zollinger Chohfi (@azchohfi) in #949 - Hold and verify every WinUI triage debugger DLL until triage finishes by Alexandre Zollinger Chohfi (@azchohfi) in #954
- Stop certificate tests leaking dev certificates into CurrentUser\My by Alexandre Zollinger Chohfi (@azchohfi) in #953
- Use absolute URLs for winapp-sandbox doc links by Nikola Metulev (@nmetulev) in #960
- Fix release-build timeout in GuestProcessHost output-drain test by Nikola Metulev (@nmetulev) in #962
- Update AI agent detection to the env vars agents set today by Nikola Metulev (@nmetulev) in #963
- Bump version to 0.7.2 for development by Nikola Metulev (@nmetulev) in #944
- Skip a Windows App SDK release until its pinned sub-packages are published by Alexandre Zollinger Chohfi (@azchohfi) in #956
- Capture windowed popups when recording or screenshotting an element by Nikola Metulev (@nmetulev) in #967
- Keep winapp usable when %USERPROFILE%.winapp is not writable by Nikola Metulev (@nmetulev) in #941
- Bump Electron Forge to 8 and @electron/fuses to 2 in Electron samples by Nikola Metulev (@nmetulev) in #961
- Emit JSON when
cert generate --if-exists skip --jsonkeeps an existing file by Zach Teutsch (@zateutsch) in #970 - Fix
winapp run <dir>ambiguity error listing non-runnable projects by Zach Teutsch (@zateutsch) in #971 - Add CI checks for agent skill packages by Nikola Metulev (@nmetulev) in #972
- Fix intermittent Cli-2 test failures and bound the winui-unpackaged sample wait by Nikola Metulev (@nmetulev) in #980
- List WinUI templates first in
winapp newby Alexandre Zollinger Chohfi (@azchohfi) in #989 - Fix
ui get-propertyreporting ordinary text boxes as password fields by Nikola Metulev (@nmetulev) in #965 - winapp run: suggest --debug-output when an attached app exits nonzero by Zach Teutsch (@zateutsch) in #991
- send-keys: hold capslock/insert for screen-reader commands; reject unknown modifiers by Zach Teutsch (@zateutsch) in #990
- Fix flaky real MP4 encoder tests (MF_E_SINK_NO_SAMPLES_PROCESSED) by Nikola Metulev (@nmetulev) in #966
- Stop leaking a private-key container on every PFX sign by Zach Teutsch (@zateutsch) in #992
- Reorder root help around the app development workflow by Niels Laute (@niels9001) in #987
- Add local agent plugin benchmark (v1) by Nikola Metulev (@nmetulev) in #973
- Import WinUI agent plugin from win-dev-skills (unchanged) by Nikola Metulev (@nmetulev) in #976
- Add WinUI to the Claude/OpenClaw catalog and move WinUI skill script tests by Nikola Metulev (@nmetulev) in #1007
- Stop tracking generated command wrappers and schema snapshots by Nikola Metulev (@nmetulev) in #997
- Make the AtomicFile reader-holds-destination test deterministic by Nikola Metulev (@nmetulev) in #998
- Fix windowed-popup screenshot test flake: wait for the popup to be composited by Nikola Metulev (@nmetulev) in #1003
- Benchmark v1.1: agent selection, credit cap, 42 scenarios, comparisons by Nikola Metulev (@nmetulev) in #981
- Don't downgrade a newer template pack with --template-version latest by Zach Teutsch (@zateutsch) in #1017
- Add -V short alias for --version by Zach Teutsch (@zateutsch) in #1018
- Fix ui -a for hosted apps and show editable elements in inspect --interactive by Nikola Metulev (@nmetulev) in #993
- Fix Sandbox "Access is denied" failures and keep the Sandbox window on screen by Nikola Metulev (@nmetulev) in #964
- Support C++ (.vcxproj) projects in winapp run by Nikola Metulev (@nmetulev) in #984
- Add --type/--root/--class-name to every single-element ui command by Nikola Metulev (@nmetulev) in #932
- Agent-first
winapp uihelp and unknown-command suggestions by Nikola Metulev (@nmetulev) in #942 - Benchmark v2: capability-based realistic scenarios and held-out set by Nikola Metulev (@nmetulev) in #982
- Replace the winapp plugin agent with a short skill router by Nikola Metulev (@nmetulev) in #983
- Print help and CLI schema locally when --on is given by Zach Teutsch (@zateutsch) in #1034
- winapp run --on sandbox --json: don't also forward --quiet to the guest by Nikola Metulev (@nmetulev) in #1033
- winapp run: fix packaged C++ Debug apps failing on the debug CRT path by Nikola Metulev (@nmetulev) in #1030
- Skill descriptions ≤300 chars, WinUI scope rule, and 'give the command' line by Nikola Metulev (@nmetulev) in #985
- Remove the winui-session-report skill by Nikola Metulev (@nmetulev) in #1036
- Add worktree-isolated identity to winapp run by Nikola Metulev (@nmetulev) in #872
- Report the actual crash in --debug-output dumps, not an earlier handled exception by Zach Teutsch (@zateutsch) in #1019
- Explain why a
winapp uicommand is waiting by Zach Teutsch (@zateutsch) in #1026 - Make closing winapp's Sandbox window end the Sandbox, after Windows asks by Nikola Metulev (@nmetulev) in #1047
- Benchmark: demand scenario set, outcome judging, and reference-read tracking by Nikola Metulev (@nmetulev) in #1050
- Read Toolkit samples from the index the Toolkit publishes by Jaylyn Barbee (@Jaylyn-Barbee) in #988
- Handle minimized windows in
winapp uiby Nikola Metulev (@nmetulev) in #1054 - find-ui: search control descriptions and add an API list to the sample index by Jaylyn Barbee (@Jaylyn-Barbee) in #1048
- Stop winapp run hanging when several packaged launches deploy at once by Zach Teutsch (@zateutsch) in #1058
- Show host prerequisites in
target snapshot sandboxby Zach Teutsch (@zateutsch) in #1028 - Fix winapp new picking a stale template cache's --dotnetVersion option by Nikola Metulev (@nmetulev) in #1063
- Make winapp run output as clean as dotnet build by Nikola Metulev (@nmetulev) in #1037
- feat: add WinUI ETW performance recording and analysis by Morten Nielsen (@dotMorten) in #837
- Fix
winapp run --unregister-on-exitleaving the package registered when not elevated by Zach Teutsch (@zateutsch) in #1067 - Simpler PRs and issues, and reviews that don't grow simple changes by Nikola Metulev (@nmetulev) in #1074
- Read winapp new's template cache from DOTNET_CLI_HOME when it is set by Nikola Metulev (@nmetulev) in #1068
- Add .NET file-based app sample and guide by Zach Teutsch (@zateutsch) in #1066
- Pin System.Security.Cryptography.Pkcs to 10.0.13 for GHSA-846f-f764-76mx / GHSA-2fmv-rv2c-59x7 by Nikola Metulev (@nmetulev) in #1079
- Fix winapp run/package building a referenced library twice (APPX1101/PRI252) by Nikola Metulev (@nmetulev) in #1032
- Add --at x,y to ui click and ui hover by Nikola Metulev (@nmetulev) in #1103
- Prefer an element named exactly the selector text in single-element ui commands by Nikola Metulev (@nmetulev) in #1102
- Fix
winapp uihanging on WinUI 3 apps with a WebView2 by Nikola Metulev (@nmetulev) in #1101 - Let --type and --class-name be the whole
winapp uiquery by Nikola Metulev (@nmetulev) in #1104 - Add
--wheel-horizontaltowinapp ui scrollby Nikola Metulev (@nmetulev) in #1100 - Fix ui --json reporting invokableAncestor as disabled at 0,0 by Nikola Metulev (@nmetulev) in #1099
- Add --angle to ui touch pinch/stretch by Nikola Metulev (@nmetulev) in #1098
- winapp run: detect the Windows App SDK in C++ projects that import it through packages.config by Nikola Metulev (@nmetulev) in #1086
- Sign packages with the hash algorithm they were built with by Nikola Metulev (@nmetulev) in #1097
- Add the app benchmark (benchmarks/apps) by Nikola Metulev (@nmetulev) in #1108
- Honor -p:Configuration for C++ projects in winapp run by Nikola Metulev (@nmetulev) in #1085
- Add a task-completion benchmark for the agent plugins by Nikola Metulev (@nmetulev) in #1052
- WinUI DevTools: inspect, comment on and live-edit a running WinUI app by Nikola Metulev (@nmetulev) in #943
- Add UI automation benchmarks (agent-driven and scripted perf) under benchmarks/ui by Nikola Metulev (@nmetulev) in #1053
- Benchmark: score the winapp-performance and winui-devtools skills by Nikola Metulev (@nmetulev) in #1111
- winapp new: suggest
winapp run <name>.csfor single-file templates by Alexandre Zollinger Chohfi (@azchohfi) in #1109 - Avoid per-rule firewall queries during Sandbox preparation by Gleb Khmyznikov (@khmyznikov) in #1106
- find-ui: more synonyms, loaded from the shared search vocabulary by Jaylyn Barbee (@Jaylyn-Barbee) in #1072
- Resolve winapp.exe's own DLL imports from System32 only by Nikola Metulev (@nmetulev) in #1073
- xaml-triage child: verify what it loads instead of trusting its arguments by Nikola Metulev (@nmetulev) in #1046
- Build C#/WinRT apps when the targeted Windows SDK version isn't installed by Nikola Metulev (@nmetulev) in #1069
- Show WinUI menus, flyouts and tooltips in recordings by Gordon Lam (@yeelam-gordon) in #1061
- Help: Quick start in root help, and a readable, colored layout for every command by Nikola Metulev (@nmetulev) in #1116
- find-ui: return TableView for table, data grid and spreadsheet queries by Jaylyn Barbee (@Jaylyn-Barbee) in #1121
- Fix plated taskbar icon and missing title bar icon for file-based apps by Niels Laute (@niels9001) in #1080
- ui record: add --cursor to show the mouse pointer and clicks by Zach Teutsch (@zateutsch) in #1123
- Clear error when packaged winapp runs from a layout under AppData by Zach Teutsch (@zateutsch) in #1117
- Docs: use alert syntax for callouts so they render on Learn by Jaylyn Barbee (@Jaylyn-Barbee) in #1127
- find-api: use the project's NuGet packages folder and the registered Windows SDK location by Jaylyn Barbee (@Jaylyn-Barbee) in #1114
- Fix winapp run restoring the app twice when a test project references it by Zach Teutsch (@zateutsch) in #1124
- Fix DevTools comments: wrong save folder, lost drafts, confusing list output by Zach Teutsch (@zateutsch) in #1158
- Fix DevTools picking in dialogs and flyouts, and make the toolbar pill usable by Zach Teutsch (@zateutsch) in #1172
- DevTools: let query writes target a single match by Zach Teutsch (@zateutsch) in #1168
- Fix named-color confirmation in DevTools set-property by Chiara Mooney (@chiaramooney) in #1167
- Fix DevTools size and spacing explanations for margins and fixed widths by Zach Teutsch (@zateutsch) in #1171
- Fix ui/devtools window targeting and unclear error messages by Zach Teutsch (@zateutsch) in #1161
- Fix DevTools value-source reporting for unset properties, live edits and XAML lines by Zach Teutsch (@zateutsch) in #1160
- DevTools: show inspector tree hover as a thin outline, not the selection box by Zach Teutsch (@zateutsch) in #1173
- Publish winui to every plugin marketplace and check listings in CI by Jaylyn Barbee (@Jaylyn-Barbee) in #1185
- Fix DevTools selected buttons in High Contrast by Chiara Mooney (@chiaramooney) in #1189
- Fix DevTools: show re-enable hint when 'Don't start DevTools' is selected by Akhil Gupta (@akhil9tiet) in #1170
- Make DevTools property headers expandable and announce current values by Chiara Mooney (@chiaramooney) in #1178
- Fix DevTools inspector toggle states and accessible visual tree by Chiara Mooney (@chiaramooney) in #1190
- Bind Sandbox commands to an expected instance GUID by Gleb Khmyznikov (@khmyznikov) in #1105
- DevTools: keep the binding panel accurate after edits and restores by Zach Teutsch (@zateutsch) in #1159
- Fix DevTools toolbar menu crash that breaks validate-devtools on main by Jaylyn Barbee (@Jaylyn-Barbee) in #1192
- benchmarks: add cli-only arm and align arm names across apps and tasks by Jaylyn Barbee (@Jaylyn-Barbee) in #1184
- DevTools: stop picking after selecting an element by Zach Teutsch (@zateutsch) in #1191
- Fix repeated roles in DevTools accessible names by Chiara Mooney (@chiaramooney) in #1193
- winapp package: accept a C++ .vcxproj by Zach Teutsch (@zateutsch) in #1122
- Improve DevTools resource suggestions and editing errors by Zach Teutsch (@zateutsch) in #1196
- Redact escaped password literals in DevTools authored output by Zach Teutsch (@zateutsch) in #1237
- Refocus docs overview and README on WinUI developers by Niels Laute (@niels9001) in #986
- DevTools: save unsaved edits to the right element and make Restore reliable by Zach Teutsch (@zateutsch) in #1162
- Keep open DevTools property details in sync after edits by Zach Teutsch (@zateutsch) in #1241
- Fix ARM64 C++ WinUI toolchain selection by Zach Teutsch (@zateutsch) in #1234
- find-ui: disclose undefined event handlers instead of deleting them by Jaylyn Barbee (@Jaylyn-Barbee) in #1207
- DevTools: new toolbar and inspector icons by Niels Laute (@niels9001) in #1248
- Fix DevTools comment targeting and captured identity checks by Zach Teutsch (@zateutsch) in #1240
- Release retired inspector row and editor state by Zach Teutsch (@zateutsch) in #1245
- Keep DevTools comment panels reachable after resizing or moving a window by Zach Teutsch (@zateutsch) in #1242
- Fix DevTools source-link recovery by Zach Teutsch (@zateutsch) in #1243
- Reject ambiguous DevTools targets and correct query JSON by Zach Teutsch (@zateutsch) in #1244
- Keep DevTools binding edits tied to live state and confirm page-wide Restore by Zach Teutsch (@zateutsch) in #1247
- Keep live DevTools tree captions searchable by Zach Teutsch (@zateutsch) in #1246
- Prepare the winui and winappcli plugins for marketplace listings by Niels Laute (@niels9001) in #1261
- DevTools inspector: side rail and single-card layout by Niels Laute (@niels9001) in #1265
- Build ADO CI on windows-2025 so it uses the same compiler as GitHub Actions by Zach Teutsch (@zateutsch) in #1268
- Fail fast when
winapp run --aotcan't publish Native AOT by Zach Teutsch (@zateutsch) in #1288 - Fix DevTools inspector memory growing with each selection by Zach Teutsch (@zateutsch) in #1285
- Keep an existing ui-comments.json.bak when the comments store is corrupt by Zach Teutsch (@zateutsch) in #1284
- Check DevTools before stopping or launching apps by Zach Teutsch (@zateutsch) in #1239
- Place source-linked DevTools comments on verified live elements by Zach Teutsch (@zateutsch) in #1266
- Honor -p Configuration for .NET projects in run and package by Zach Teutsch (@zateutsch) in #1282
- Enable Control Flow Guard for WinApp.DevTools.Native.dll by Alexandre Zollinger Chohfi (@azchohfi) in #1293
- Fix winapp new when two copies of the WinUI template pack are installed by Zach Teutsch (@zateutsch) in #1290
- List both agent plugins in llms.txt by Niels Laute (@niels9001) in #1272
- Include UiTargetArgs in Sandbox DevTools run results by Jaylyn Barbee (@Jaylyn-Barbee) in #1294
- Fix DevTools menu and inspector theming, and simplify launch preferences by Zach Teutsch (@zateutsch) in #1287
- Keep partial WinUI crash triage output when the analyzer crashes by Zach Teutsch (@zateutsch) in #1289
- Fix DevTools layout with enlarged Windows text by Chiara Mooney (@chiaramooney) in #1195
New Contributors
- Morten Nielsen (@dotMorten) made their first contribution in #837
- Gleb Khmyznikov (@khmyznikov) made their first contribution in #1106
- Akhil Gupta (@akhil9tiet) made their first contribution in #1170
Full Changelog: v0.7.1...v0.8.0
Installation Options
MSIX Installer (Recommended)
- Download
winappcli_x64.msixfor x64 orwinappcli_arm64.msixfor ARM64 - Double-click to install
- Automatically added to PATH
Standalone CLI Binaries
- Download
winappcli-x64.zipfor x64 orwinappcli-arm64.zipfor ARM64 - Extract to your desired location
- Add to PATH or run directly:
winapp.exe
NPM Package (for Electron or NodeJS)
npm install microsoft-winappcli.tgzWhat's Included
- MSIX installer packages (x64 and ARM64)
- Standalone CLI binaries (x64 and ARM64)
- NPM package for NodeJS/Electron integration