From dotnet-claude-kit
Guides .NET developers through interactive project initialization with architecture and tech stack selection, CLAUDE.md generation, Roslyn MCP health checks, and .NET version migrations.
npx claudepluginhub codewithmukesh/dotnet-claude-kit --plugin dotnet-claude-kitThis skill uses the workspace's default tool permissions.
1. **Interactive over passive** — Don't dump a generic template. Ask questions, gather context, then generate a customized result tailored to the specific project.
Advises on .NET app architectures via questionnaire on domain complexity, team size, lifetime, compliance, integrations. Recommends Vertical Slice, Clean, DDD+Clean, or Modular Monolith.
Working with .NET, C#, ASP.NET Core, or related frameworks. Routes to specialist skills.
Scans codebase for package managers, tests, CI/CD, deployment, and docs; infers configs with confidence scores; asks only unknowns; generates SDLC files like README and ARCHITECTURE.md. For initial setup.
Share bugs, ideas, or general feedback.
[PLACEHOLDER] values). Every section should reflect the actual project decisions.Interactive conversational flow for new projects. Execute steps in order, waiting for user input at each decision point.
Step 1: Project Identity Ask:
Step 2: Architecture Selection
Delegate to the architecture-advisor skill:
Step 3: Tech Stack Selection Ask about each dimension with a recommended default:
| Dimension | Options | Default |
|---|---|---|
| Database | PostgreSQL, SQL Server, SQLite | PostgreSQL |
| Auth | JWT Bearer, OIDC (Keycloak/Auth0), None | JWT Bearer |
| Caching | HybridCache, Redis, None | HybridCache |
| Messaging | Wolverine (RabbitMQ), MassTransit, None | None (add later) |
| Observability | Serilog + OpenTelemetry, Basic logging | Serilog + OTEL |
| Resilience | Polly v8 pipelines, Basic retry | Polly v8 |
Step 4: Generate CLAUDE.md Generate a customized CLAUDE.md with all choices baked in:
# [ProjectName] — Development Instructions
## Architecture
This project uses [Selected Architecture].
[Architecture-specific conventions and rules]
## Tech Stack
- **Runtime**: .NET 10 / C# 14
- **Database**: [Selected] with EF Core 10
- **Auth**: [Selected]
- **Caching**: [Selected]
- **Observability**: [Selected]
## Conventions
[Architecture-specific patterns, naming, folder structure]
## Skills
[List of relevant skills to load based on choices]
Step 5: Next Steps Suggest:
dotnet new commandsAutomated codebase analysis that produces a graded report card. Run this when asked to "check health", "analyze the project", or "how's the codebase".
Step 1: Solution Analysis
→ get_project_graph
Analyze: project count, dependency direction, target frameworks, naming consistency
Step 2: Anti-pattern Scan
→ detect_antipatterns (scope: solution)
Count and categorize: async void, sync-over-async, DateTime.Now, new HttpClient(), etc.
Step 3: Compiler Diagnostics
→ get_diagnostics (severity: warning, scope: solution)
Count warnings by category: CS8600 (nullability), CS0219 (unused vars), etc.
Step 4: Dead Code Detection
→ find_dead_code (scope: solution)
Identify unused types, methods, and properties that can be removed.
Step 5: Test Coverage Assessment
→ get_test_coverage_map
Check: test project exists, percentage of types with corresponding tests.
Step 6: Report Card
Generate a structured report:
## Codebase Health Report
### Grade: B+ (82/100)
| Category | Score | Issues |
|----------|-------|--------|
| Architecture | 18/20 | Clean dependency direction, 1 questionable reference |
| Anti-patterns | 14/20 | 3 DateTime.Now usages, 1 async void |
| Diagnostics | 20/20 | 0 warnings |
| Dead Code | 16/20 | 4 unused methods found |
| Test Coverage | 14/20 | 70% of types have test coverage |
### Priority Actions
1. **Replace DateTime.Now with TimeProvider** (3 locations) — error-handling skill
2. **Fix async void** in EventService.OnMessage — critical, exceptions will be unobserved
3. **Remove dead code** — 4 unused methods in OrderService, PaymentHelper
4. **Add tests** for ShippingService, NotificationService
Grading scale:
For complete migration workflows (EF Core, NuGet, .NET version upgrades), see the migration-workflow skill.
# BAD — Generating CLAUDE.md without asking about the project
"Here's your CLAUDE.md with VSA architecture..."
# GOOD — Running the full questionnaire first
"Let me understand your project first. What's the domain complexity? How many developers?
How important is independent deployability? ..."
→ Based on answers: "I recommend Clean Architecture because..."
<!-- BAD — User has to fill in everything manually -->
## Architecture
This project uses [ARCHITECTURE].
Database: [DATABASE]
Auth: [AUTH_METHOD]
<!-- GOOD — Fully populated from the conversation -->
## Architecture
This project uses Vertical Slice Architecture.
Database: PostgreSQL with EF Core 10
Auth: JWT Bearer with ASP.NET Core Identity
# BAD — Reading random files and guessing at quality
"I read Program.cs and it looks fine..."
# GOOD — Systematic analysis with MCP tools
→ get_project_graph: 5 projects, clean dependency direction
→ detect_antipatterns: 3 violations (2 warning, 1 error)
→ get_diagnostics: 7 warnings (5 CS8600, 2 CS0219)
→ find_dead_code: 4 unused symbols
→ get_test_coverage_map: 65% coverage
Grade: B (78/100)
# BAD — Just changing the TFM and hoping for the best
sed -i 's/net8.0/net10.0/g' **/*.csproj
dotnet build # 47 errors
# GOOD — Systematic migration with verification at each step
# Phase 1: Update framework → build → fix
# Phase 2: Update packages → build → fix
# Phase 3: Adopt new features → build → test
# Phase 4: Full verification
| Scenario | Workflow | Key Tool |
|---|---|---|
| New greenfield project | Project Init | architecture-advisor skill |
| Joining existing project | Health Check → Init (for CLAUDE.md) | get_project_graph |
| "How's our codebase?" | Health Check | detect_antipatterns, get_diagnostics |
| "Upgrade to .NET 10" | Migration | get_project_graph, breaking-changes.md |
| "Generate CLAUDE.md for this project" | Project Init (skip new project steps) | get_project_graph |
| Code quality declining | Health Check → set baseline → periodic re-check | All MCP tools |
| Onboarding new developers | Health Check + Init (generates CLAUDE.md documenting conventions) | convention-learner skill |