mirror of
https://github.com/github/awesome-copilot.git
synced 2026-03-12 20:25:11 +00:00
* feat: add winmd-api-search skill for Windows desktop API discovery Add a skill that helps find and explore Windows desktop APIs (WinRT/WinAppSDK). It searches a local WinMD metadata cache to discover APIs for platform capabilities like camera, file access, notifications, UI controls, AI/ML, sensors, and networking. Includes bundled scripts: - Update-WinMdCache.ps1: generates the JSON cache from SDK and NuGet packages - Invoke-WinMdQuery.ps1: searches types, members, enums, and namespaces - cache-generator: .NET tool that parses WinMD files into JSON Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * feat: sync winmd-api-search with latest upstream changes Updates from PowerToys source branch: - Detect installed WinAppSDK runtime via Get-AppxPackage - Respect NUGET_PACKAGES env var for global packages path - Use OS architecture for runtime package detection - Fix method/event visibility to use MemberAccessMask equality - Fix EnumerationOptions, TypeSpecification decoding, search sort - Robust scan with case-insensitive dedup and multi-path search - Deduplicate packages by (Id, Version) - Fix assets.json selection and pin SRM version - Fix SDK version sorting and global namespace handling Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * fix: remove en-us locale from Microsoft Learn URLs Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * feat: filter assets.json by package type; unique scan-mode manifests - Filter assets.json libraries by type==package to skip project references - Append short path hash to manifest names in scan mode to avoid collisions - Support prefix match in query script for scan-mode manifest names Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --------- Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
30 lines
1.4 KiB
XML
30 lines
1.4 KiB
XML
<Project Sdk="Microsoft.NET.Sdk">
|
|
<PropertyGroup>
|
|
<OutputType>Exe</OutputType>
|
|
<!-- Default fallback; Update-WinMdCache.ps1 overrides via -p:TargetFramework=net{X}.0 -->
|
|
<TargetFramework Condition="'$(TargetFramework)' == ''">net8.0</TargetFramework>
|
|
<Nullable>enable</Nullable>
|
|
<ImplicitUsings>enable</ImplicitUsings>
|
|
</PropertyGroup>
|
|
<!-- System.Reflection.Metadata is inbox in net9.0+, only needed for net8.0 -->
|
|
<ItemGroup Condition="'$(TargetFramework)' == 'net8.0'">
|
|
<PackageReference Include="System.Reflection.Metadata" Version="8.0.1" />
|
|
</ItemGroup>
|
|
|
|
<!--
|
|
Baseline WinAppSDK packages: downloaded during restore so the cache generator
|
|
can always index WinAppSDK APIs, even if the target project hasn't been restored.
|
|
ExcludeAssets="all" means they're downloaded but don't affect this tool's build.
|
|
|
|
When the repo has a known version (passed via -p:WinAppSdkVersion=X.Y.Z from
|
|
Update-WinMdCache.ps1), prefer that version to avoid unnecessary NuGet downloads.
|
|
Falls back to Version="*" (latest) on fresh clones with no restore.
|
|
-->
|
|
<ItemGroup Condition="'$(WinAppSdkVersion)' != ''">
|
|
<PackageReference Include="Microsoft.WindowsAppSDK" Version="$(WinAppSdkVersion)" ExcludeAssets="all" />
|
|
</ItemGroup>
|
|
<ItemGroup Condition="'$(WinAppSdkVersion)' == ''">
|
|
<PackageReference Include="Microsoft.WindowsAppSDK" Version="*" ExcludeAssets="all" />
|
|
</ItemGroup>
|
|
</Project>
|