Publish Extension
Guide for distributing your Command Palette extension through the Microsoft Store, WinGet, or both.
Install
Quick install
npx skills add https://github.com/microsoft/powertoys/tree/HEAD/src/modules/cmdpal/ExtensionTemplate/TemplateCmdPalExtension/.github/skills/publish-extensionnpx skills add microsoft/powertoys --skill publish-extension --agent claude-codenpx skills add microsoft/powertoys --skill publish-extension --agent cursornpx skills add microsoft/powertoys --skill publish-extension --agent codexnpx skills add microsoft/powertoys --skill publish-extension --agent opencodenpx skills add microsoft/powertoys --skill publish-extension --agent github-copilotnpx skills add microsoft/powertoys --skill publish-extension --agent windsurfMore install options
Shorthand — useful for multi-skill repos:
npx skills add microsoft/powertoys --skill publish-extensionManual — clone the repo and drop the folder into your agent's skills directory:
git clone https://github.com/microsoft/powertoys.gitcp -r powertoys/src/modules/cmdpal/ExtensionTemplate/TemplateCmdPalExtension/.github/skills/publish-extension ~/.claude/skills/publish-extension
Guide for distributing your Command Palette extension through the Microsoft Store, WinGet, or both.
publish-extensionby microsoft
Guide for distributing your Command Palette extension through the Microsoft Store, WinGet, or both.npx skills add https://github.com/microsoft/powertoys --skill publish-extensionDownload ZIPGitHub
Publish Your Command Palette Extension
Guide for distributing your Command Palette extension through the Microsoft Store, WinGet, or both.
When to Use This Skill
- Publishing your extension to the Microsoft Store
- Submitting your extension to WinGet for
winget installdiscovery
- Setting up GitHub Actions to automate builds and releases
- Creating MSIX packages for Store submission
- Creating EXE installers for WinGet submission
Publishing Options
ChannelPackage FormatDiscoveryAuto-UpdatesMicrosoft StoreMSIX bundleStore app, ms-windows-store:// linkYesWinGetEXE installerwinget install, CmdPal browseYes (via manifest)
Recommendation: Publish to both for maximum reach. WinGet enables direct discovery from within Command Palette.
Workflows
Microsoft Store Publishing
See store-publishing.md for the complete step-by-step guide.
Summary:
- Register for Partner Center
- Update
Package.appxmanifestand.csprojwith Partner Center identity
- Build MSIX for x64 and ARM64
- Create MSIX bundle
- Submit to Partner Center
WinGet Publishing
See winget-publishing.md for the complete step-by-step guide.
Summary:
- Switch project to unpackaged mode
- Create Inno Setup installer script
- Build EXE installers
- Submit manifest via
wingetcreate new
- Optionally automate with GitHub Actions
Prerequisites
- Visual Studio with C# and WinUI workloads
- Partner Center account (for Store publishing)
- GitHub CLI (for WinGet publishing)
- WingetCreate —
winget install Microsoft.WingetCreate
- Inno Setup (for WinGet EXE packaging)
Important Notes
- Your extension's CLSID (the
[Guid("...")]in your main .cs file) must be unique and consistent across all files
- WinGet manifests must include the
windows-commandpalette-extensiontag for CmdPal discovery
- MSIX packages require both x64 and ARM64 builds for Store submission
- WindowsAppSdk must be listed as a dependency in WinGet manifests
More skills from microsoft
oss-growthby microsoftOSS growth hacker personapr-description-skillby microsoftTrigger this skill on any of the following intents:python-architectureby microsoftPython architect personasupply-chain-securityby microsoftSupply chain security expert personaskill-nameby microsoftDescription of what the skill does and when to use itwork-iterationsby microsoftList, create, and assign iterations for Azure DevOps projects and teams.djangoby microsoftBest practices for Django web development including models, views, templates, and testing.flaskby microsoftBest practices for Flask web development including routing, blueprints, and testing.---
Source: https://github.com/microsoft/powertoys/tree/HEAD/src/modules/cmdpal/ExtensionTemplate/TemplateCmdPalExtension/.github/skills/publish-extension
Author: microsoft
Discovered via: mcpservers.org
SKILL.md source
---
name: publish-extension
description: Guide for distributing your Command Palette extension through the Microsoft Store, WinGet, or both.
---
# publish-extension
Guide for distributing your Command Palette extension through the Microsoft Store, WinGet, or both.
# publish-extensionby microsoft
Guide for distributing your Command Palette extension through the Microsoft Store, WinGet, or both.
`npx skills add https://github.com/microsoft/powertoys --skill publish-extension`Download ZIPGitHub
## Publish Your Command Palette Extension
Guide for distributing your Command Palette extension through the Microsoft Store, WinGet, or both.
## When to Use This Skill
* Publishing your extension to the Microsoft Store
* Submitting your extension to WinGet for `winget install` discovery
* Setting up GitHub Actions to automate builds and releases
* Creating MSIX packages for Store submission
* Creating EXE installers for WinGet submission
## Publishing Options
ChannelPackage FormatDiscoveryAuto-UpdatesMicrosoft StoreMSIX bundleStore app, `ms-windows-store://` linkYesWinGetEXE installer`winget install`, CmdPal browseYes (via manifest)
Recommendation: Publish to both for maximum reach. WinGet enables direct discovery from within Command Palette.
## Workflows
### Microsoft Store Publishing
See store-publishing.md for the complete step-by-step guide.
Summary:
* Register for Partner Center
* Update `Package.appxmanifest` and `.csproj` with Partner Center identity
* Build MSIX for x64 and ARM64
* Create MSIX bundle
* Submit to Partner Center
### WinGet Publishing
See winget-publishing.md for the complete step-by-step guide.
Summary:
* Switch project to unpackaged mode
* Create Inno Setup installer script
* Build EXE installers
* Submit manifest via `wingetcreate new`
* Optionally automate with GitHub Actions
## Prerequisites
* Visual Studio with C# and WinUI workloads
* Partner Center account (for Store publishing)
* GitHub CLI (for WinGet publishing)
* WingetCreate — `winget install Microsoft.WingetCreate`
* Inno Setup (for WinGet EXE packaging)
## Important Notes
* Your extension's CLSID (the `[Guid("...")]` in your main .cs file) must be unique and consistent across all files
* WinGet manifests must include the `windows-commandpalette-extension` tag for CmdPal discovery
* MSIX packages require both x64 and ARM64 builds for Store submission
* WindowsAppSdk must be listed as a dependency in WinGet manifests
## More skills from microsoft
oss-growthby microsoftOSS growth hacker personapr-description-skillby microsoftTrigger this skill on any of the following intents:python-architectureby microsoftPython architect personasupply-chain-securityby microsoftSupply chain security expert personaskill-nameby microsoftDescription of what the skill does and when to use itwork-iterationsby microsoftList, create, and assign iterations for Azure DevOps projects and teams.djangoby microsoftBest practices for Django web development including models, views, templates, and testing.flaskby microsoftBest practices for Flask web development including routing, blueprints, and testing.
---
**Source**: https://github.com/microsoft/powertoys/tree/HEAD/src/modules/cmdpal/ExtensionTemplate/TemplateCmdPalExtension/.github/skills/publish-extension
**Author**: microsoft
**Discovered via**: mcpservers.org
Related skills 6
caveman
Ultra-compressed communication mode. Cuts token usage ~75% by speaking like caveman while keeping full technical accuracy. Supports intensity levels: lite, full (default), ultra, wenyan-lite, wenyan-full, wenyan-ultra. Use when user says "caveman mode", "talk like caveman", "use caveman", "less tokens", "be brief", or invokes /caveman. Also auto-triggers when token efficiency is requested.
secure-linux-web-hosting
Use when setting up, hardening, or reviewing a cloud server for self-hosting, including DNS, SSH, firewalls, Nginx, static-site hosting, reverse-proxying an app, HTTPS with Let's Encrypt or ACME clients, safe HTTP-to-HTTPS redirects, or optional post-launch network tuning such as BBR.
readme-i18n
Use when the user wants to translate a repository README, make a repo multilingual, localize docs, add a language switcher, internationalize the README, or update localized README variants in a GitHub-style repository.
lark-shared
Use when first setting up lark-cli, running auth login, switching user/bot identity (--as), handling permission denied or scope errors, needing to update lark-cli, or seeing _notice in JSON output.
improve-codebase-architecture
Find deepening opportunities in a codebase, informed by the domain language in CONTEXT.md and the decisions in docs/adr/. Use when the user wants to improve architecture, find refactoring opportunities, consolidate tightly-coupled modules, or make a codebase more testable and AI-navigable.
paper-context-resolver
Optional RigorPilot helper for README-first deep learning repo reproduction. Use only when the README and repository files leave a narrow reproduction-critical gap and the task is to resolve a specific paper detail such as dataset split, preprocessing, evaluation protocol, checkpoint mapping, or runtime assumption from primary paper sources while recording conflicts. Do not use for general paper summary, repo scanning, environment setup, command execution, title-only paper lookup, or replacin...