NEW Browse AI tools across categories — updated daily. See what's new →

Publish Extension

Guide for distributing your Command Palette extension through the Microsoft Store, WinGet, or both.

Authormicrosoft
Version1.0.0
LicenseMIT
Token count~804
UpdatedJun 5, 2026

Install

Quick install

via npx skills · works with 57+ agents
npx skills add https://github.com/microsoft/powertoys/tree/HEAD/src/modules/cmdpal/ExtensionTemplate/TemplateCmdPalExtension/.github/skills/publish-extension
Or pick agent:
npx skills add microsoft/powertoys --skill publish-extension --agent claude-code
npx skills add microsoft/powertoys --skill publish-extension --agent cursor
npx skills add microsoft/powertoys --skill publish-extension --agent codex
npx skills add microsoft/powertoys --skill publish-extension --agent opencode
npx skills add microsoft/powertoys --skill publish-extension --agent github-copilot
npx skills add microsoft/powertoys --skill publish-extension --agent windsurf
More install options

Shorthand — useful for multi-skill repos:

npx skills add microsoft/powertoys --skill publish-extension

Manual — clone the repo and drop the folder into your agent's skills directory:

git clone https://github.com/microsoft/powertoys.git
cp -r powertoys/src/modules/cmdpal/ExtensionTemplate/TemplateCmdPalExtension/.github/skills/publish-extension ~/.claude/skills/
How to use: Once installed, ask your agent to "use the publish-extension skill" or describe what you want (e.g. "Guide for distributing your Command Palette extension through the Microsoft Stor"). Requires Node.js 18+.

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 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 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.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

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

★ Featured

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.

juliusbrussee 167k
Development

secure-linux-web-hosting

★ Featured

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.

xixu-me 155k
Development

readme-i18n

★ Featured

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.

xixu-me 155k
Development

lark-shared

★ Featured

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.

larksuite 155k
Development

improve-codebase-architecture

★ Featured

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.

mattpocock 151k
Development

paper-context-resolver

★ Featured

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...

lllllllama 127k
Development