akka-aspire-configurat…
Configure Akka.NET with .NET Aspire for local development and production deployments. Covers actor system setup, clustering, persistence, Akka.Management…
Managing local .NET tools with dotnet-tools.json for consistent tooling across development environments and CI/CD pipelines.
$ npx -y skills add aaronontheweb/dotnet-skills --skill local-tools --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/local-toolsContext preview
The summary Claude sees to decide when to auto-load this skill.
Managing local .NET tools with dotnet-tools.json for consistent tooling across development environments and CI/CD pipelines.
name: dotnet-local-tools description: Managing local .NET tools with dotnet-tools.json for consistent tooling across development environments and CI/CD pipelines. invocable: false
Use this skill when:
Local tools are .NET CLI tools that are installed and versioned per-repository rather than globally. They're defined in `.config/dotnet-tools.json` and restored with `dotnet tool restore`.
| Aspect | Global Tools | Local Tools | |--------|--------------|-------------| | Installation | `dotnet tool install -g` | `dotnet tool restore` | | Scope | Machine-wide | Per-repository | | Version control | Manual | In `.config/dotnet-tools.json` | | CI/CD | Must install each tool | Single restore command | | Conflicts | Can have version conflicts | Isolated per project |
---
# Create .config/dotnet-tools.json dotnet new tool-manifest
This creates:
.config/ └── dotnet-tools.json
# Install a tool locally dotnet tool install docfx # Install specific version dotnet tool install docfx --version 2.78.3 # Install from a specific source dotnet tool install MyTool --add-source https://mycompany.pkgs.visualstudio.com/_packaging/feed/nuget/v3/index.json
# Restore all tools from manifest dotnet tool restore
---
{
"version": 1,
"isRoot": true,
"tools": {
"docfx": {
"version": "2.78.3",
"commands": [
"docfx"
],
"rollForward": false
},
"dotnet-ef": {
"version": "9.0.0",
"commands": [
"dotnet-ef"
],
"rollForward": false
},
"incrementalist.cmd": {
"version": "1.2.0",
"commands": [
"incrementalist"
],
"rollForward": false
},
"dotnet-reportgenerator-globaltool": {
"version": "5.4.1",
"commands": [
"reportgenerator"
],
"rollForward": false
}
}
}| Field | Description | |-------|-------------| | `version` | Manifest schema version (always 1) | | `isRoot` | Marks this as the root manifest (prevents searching parent directories) | | `tools` | Dictionary of tool configurations | | `tools.<name>.version` | Exact version to install | | `tools.<name>.commands` | CLI commands the tool provides | | `tools.<name>.rollForward` | Allow newer versions (usually false for reproducibility) |
---
# DocFX - API documentation generator dotnet tool install docfx
"docfx": {
"version": "2.78.3",
"commands": ["docfx"],
"rollForward": false
}**Usage:**
dotnet docfx docfx.json dotnet docfx serve _site
# EF Core CLI for migrations dotnet tool install dotnet-ef
"dotnet-ef": {
"version": "9.0.0",
"commands": ["dotnet-ef"],
"rollForward": false
}**Usage:**
dotnet ef migrations add InitialCreate dotnet ef database update
# ReportGenerator for coverage reports dotnet tool install dotnet-reportgenerator-globaltool
"dotnet-reportgenerator-globaltool": {
"version": "5.4.1",
"commands": ["reportgenerator"],
"rollForward": false
}**Usage:**
dotnet reportgenerator -reports:coverage.cobertura.xml -targetdir:coveragereport -reporttypes:Html
# Incrementalist - build only changed projects dotnet tool install incrementalist.cmd
"incrementalist.cmd": {
"version": "1.2.0",
"commands": ["incrementalist"],
"rollForward": false
}**Usage:**
# Get projects affected by changes since main branch incrementalist --branch main
# CSharpier - opinionated C# formatter dotnet tool install csharpier
"csharpier": {
"version": "0.30.3",
"commands": ["dotnet-csharpier"],
"rollForward": false
}**Usage:**
dotnet csharpier . dotnet csharpier --check . # CI mode - fails if changes needed
# JB dotnet-inspect (requires license) dotnet tool install jb
"jb": {
"version": "2024.3.4",
"commands": ["jb"],
"rollForward": false
}---
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Setup .NET
uses: actions/setup-dotnet@v4
with:
global-json-file: global.json
- name: Restore tools
run: dotnet tool restore
- name: Build
run: dotnet build
- name: Test with coverage
run: dotnet test --collect:"XPlat Code Coverage"
- name: Generate coverage report
run: dotnet reportgenerator -reports:**/coverage.cobertura.xml -targetdir:coveragereport
- name: Build documentation
run: dotnet docfx docs/docfx.jsonsteps:
- task: UseDotNet@2
inputs:
useGlobalJson: true
- script: dotnet tool restore
displayName: 'Restore .NET tools'
- script: dotnet build -c Release
displayName: 'Build'
- script: dotnet test -c Release --collect:"XPlat Code Coverage"
displayName: 'Test'
- script: dotnet reportgenerator -reports:**/coverage.cobertura.xml -targetdir:$(Build.ArtifactStagingDirectory)/coverage
displayName: 'Generate coverage report'---
# Update to latest version dotnet tool update docfx # Update to specific version dotnet tool update docfx --ve
A comprehensive AI coding plugin with 30 skills and 5 specialized agents for professional .NET development. Battle-tested patterns from production systems covering C#, Akka.NET, Aspire, EF Core, testing, and performance optimization.
Configure Akka.NET with .NET Aspire for local development and production deployments. Covers actor system setup, clustering, persistence, Akka.Management…
Critical Akka.NET best practices including EventStream vs DistributedPubSub, supervision strategies, error handling, Props vs DependencyResolver, work…
Patterns for building entity actors with Akka.Hosting - GenericChildPerEntityParent, message extractors, cluster sharding abstraction, akka-reminders, and…
Akka.Management for cluster bootstrapping, service discovery (Kubernetes, Azure, Config), health checks, and dynamic cluster formation without static seed…
Write unit and integration tests for Akka.NET actors using modern Akka.Hosting.TestKit patterns. Covers dependency injection, TestProbes, persistence testing,…
Guidelines for making .NET libraries and applications trimming-safe and Native AOT compatible. Covers the trimming/AOT model, the MSBuild properties that…