JPSoftworks.CommandPalette.Extensions.Toolkit
0.9.3-preview.1
dotnet add package JPSoftworks.CommandPalette.Extensions.Toolkit --version 0.9.3-preview.1
NuGet\Install-Package JPSoftworks.CommandPalette.Extensions.Toolkit -Version 0.9.3-preview.1
<PackageReference Include="JPSoftworks.CommandPalette.Extensions.Toolkit" Version="0.9.3-preview.1" />
<PackageVersion Include="JPSoftworks.CommandPalette.Extensions.Toolkit" Version="0.9.3-preview.1" />
<PackageReference Include="JPSoftworks.CommandPalette.Extensions.Toolkit" />
paket add JPSoftworks.CommandPalette.Extensions.Toolkit --version 0.9.3-preview.1
#r "nuget: JPSoftworks.CommandPalette.Extensions.Toolkit, 0.9.3-preview.1"
#:package JPSoftworks.CommandPalette.Extensions.Toolkit@0.9.3-preview.1
#addin nuget:?package=JPSoftworks.CommandPalette.Extensions.Toolkit&version=0.9.3-preview.1&prerelease
#tool nuget:?package=JPSoftworks.CommandPalette.Extensions.Toolkit&version=0.9.3-preview.1&prerelease

Extension Toolkit for Command Palette
An opinionated set of hosting, lifecycle, startup, and diagnostics utilities for Command Palette extensions built on Microsoft.CommandPalette.Extensions.
The API may evolve alongside Command Palette. Preview releases can contain breaking changes.
Highlights
- Complete host bootstrap — register the COM class factories and run the server message loop with minimal application code.
- Correct lifetime and shutdown handling — monitor application lifetime, stop when the extension is disposed, unregister the COM server cleanly, and give Command Palette priority to release the extension during system shutdown.
- Efficiency Mode support — optionally lower process priority and enable Windows Efficiency Mode (EcoQoS) for the extension process.
- A useful direct-launch experience — open Command Palette or guide users to PowerToys instead of leaving an apparently unresponsive process.
- Consistent host conventions — centralize debug detection and canonical data paths across every extension.
- Logging without lock-in — use the built-in rolling file and Command Palette diagnostics, logging-neutral sinks, or optional Microsoft.Extensions.Logging and Serilog integrations.
- Modern deployment support — target .NET 9 or .NET 10, including trimming and Native AOT on x64 and Arm64.
Compatibility
The Toolkit targets .NET 9 and .NET 10 on Windows. It is Native AOT-compatible and trimmable, with win-x64 and
win-arm64 publishes verified for both target frameworks.
The main package does not pin a Windows SDK package version and does not depend on Windows App SDK, WebView2, Microsoft.Extensions.Logging, or Serilog.
Quick start
[MTAThread]
public static async Task Main(string[] args)
{
await ExtensionHostRunner
.CreateBuilder(
args,
new ExtensionHostRunnerParameters
{
PublisherMoniker = "MyCompany",
ProductMoniker = "MyExtension",
})
.AddHostedExtensionFactory(context =>
new MyExtension(context.ExtensionDisposedEvent))
.RunAsync();
}
The default runner provides the COM server lifecycle, process monitoring, direct-launch fallback, Efficiency Mode,
daily rolling files, and Command Palette diagnostics. Pass -Debug or set
ExtensionHostRunnerParameters.IsDebug to enable debug entries consistently.
Packages
| Package | NuGet | Purpose |
|---|---|---|
JPSoftworks.CommandPalette.Extensions.Toolkit |
Hosting, lifecycle, startup, and built-in diagnostic sinks. | |
JPSoftworks.CommandPalette.Extensions.Toolkit.Logging.Abstractions |
Logging-neutral contracts. | |
JPSoftworks.CommandPalette.Extensions.Toolkit.Logging.MicrosoftExtensions |
Microsoft.Extensions.Logging providers and host bridge. | |
JPSoftworks.CommandPalette.Extensions.Toolkit.Logging.Serilog |
Serilog sinks and host bridge. |
Documentation
License
Apache 2.0
Author
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net9.0-windows10.0.22621 is compatible. net10.0-windows was computed. net10.0-windows10.0.22621 is compatible. |
-
net10.0-windows10.0.22621
- JPSoftworks.CommandPalette.Extensions.Toolkit.Logging.Abstractions (>= 0.9.3-preview.1)
- Microsoft.CommandPalette.Extensions (>= 0.9.260303001)
- Shmuelie.WinRTServer (>= 2.2.1)
-
net9.0-windows10.0.22621
- JPSoftworks.CommandPalette.Extensions.Toolkit.Logging.Abstractions (>= 0.9.3-preview.1)
- Microsoft.CommandPalette.Extensions (>= 0.9.260303001)
- Shmuelie.WinRTServer (>= 2.2.1)
NuGet packages (2)
Showing the top 2 NuGet packages that depend on JPSoftworks.CommandPalette.Extensions.Toolkit:
| Package | Downloads |
|---|---|
|
JPSoftworks.CommandPalette.Extensions.Toolkit.Logging.MicrosoftExtensions
Bidirectional adapters between Command Palette extension host diagnostics and Microsoft.Extensions.Logging. |
|
|
JPSoftworks.CommandPalette.Extensions.Toolkit.Logging.Serilog
Bidirectional adapters between Command Palette extension host diagnostics and Serilog. |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 0.9.3-preview.1 | 33 | 7/31/2026 |
| 0.9.0 | 211 | 3/23/2026 |
| 0.5.0 | 269 | 9/5/2025 |
| 0.3.0-preview.5 | 182 | 8/19/2025 |
| 0.3.0-preview.4 | 173 | 8/19/2025 |
| 0.3.0-preview.3 | 169 | 7/27/2025 |
| 0.3.0-preview.2 | 302 | 7/26/2025 |
| 0.3.0-preview.1 | 308 | 7/26/2025 |
| 0.0.2 | 244 | 5/11/2025 |
| 0.0.1 | 204 | 5/11/2025 |