dotnet-cli-packaging

Package .NET CLI tools for Homebrew, apt, winget, Scoop, Chocolatey, and dotnet tools.

71|10|Updated Feb 11, 2026
One-click install
npx skills add https://github.com/wshaddix/dotnet-skills --skill dotnet-cli-packaging-wshaddix
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: dotnet-cli-packaging
Source: https://github.com/wshaddix/dotnet-skills/tree/main/skills/dotnet-cli-packaging
Command: npx skills add https://github.com/wshaddix/dotnet-skills --skill dotnet-cli-packaging-wshaddix

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes scripts (resource) and references (resource) components.

What problem does it solve?

This Skill streamlines the process of packaging .NET CLI tools for distribution across various package managers and platforms, ensuring your tools are easily installable by users.

Core Features & Use Cases

  • Multi-Platform Packaging: Create packages for Homebrew (macOS/Linux), apt/deb (Debian/Ubuntu), winget (Windows), Scoop (Windows), Chocolatey (Windows), and .NET's own dotnet tool distribution.
  • Format Guidance: Provides examples and structure for manifest files (YAML, JSON, .nuspec) and build scripts.
  • Use Case: You've built a new .NET CLI tool and need to make it available to users on macOS, Windows, and Linux. This Skill guides you through creating the necessary Homebrew formula, winget manifest, and dotnet tool NuGet package.

Quick Start

Use the dotnet-cli-packaging skill to generate a Homebrew formula for a .NET CLI tool.

Frequently Asked Questions about dotnet-cli-packaging

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I package a .NET CLI tool for multiple package managers?

Packaging a .NET CLI tool for multiple package managers involves creating specific manifests and build scripts for each target platform. You generate Homebrew formulas, winget manifests, Chocolatey nuspecs, and dotnet tool NuGet packages to distribute your command-line application.

What's the best way to distribute a .NET CLI tool on Windows?

Distributing a .NET CLI tool on Windows is best handled by creating packages for winget, Scoop, and Chocolatey. This approach provides manifests and build scripts that allow users to easily install your tool using their preferred Windows package manager.

Can I package a Native AOT .NET CLI application for Homebrew?

Yes, you can package a Native AOT .NET CLI application for Homebrew. The packaging process addresses Native AOT deployments by guiding you through creating the appropriate Homebrew formula and build scripts required to distribute the self-contained executable.

Do I need a different manifest format for each package manager?

Yes, you need a different manifest format for each package manager. Packaging requires specific file structures like YAML for winget and Scoop, JSON for Homebrew formulas, and .nuspec files for Chocolatey to ensure proper installation.

How do I create a dotnet tool package for global installation?

Creating a dotnet tool package for global installation requires packaging your CLI application into a NuGet package. This Skill provides the structure and build scripts needed to generate the NuGet manifest for dotnet tool distribution.

When should I use framework-dependent versus self-contained packaging for .NET CLI tools?

Framework-dependent packaging for .NET CLI tools requires the .NET runtime on the target machine, while self-contained packaging includes it. The packaging process addresses both deployment strategies to support different distribution requirements across package managers.