← ClaudeAtlas

dotnet-overhaullisted

Opinionated .NET code overhaul loop. Establishes a test baseline, modernizes language usage, fixes cross-cutting design issues, runs performance, concurrency, and security reviews, and verifies all CI tests pass. Presents severity-rated findings for user-directed action at each step. Review conventions.md before first use — preferences are configurable. Use iteratively for initial large overhauls, then periodically to catch drift. Triggers on: code overhaul, modernize codebase, .NET modernization, overhaul loop, overhaul pass, fix all warnings, language modernization, primary constructors, collection expressions, overhaul solution.
e128/dotnet-reference · ★ 2 · DevOps & Infrastructure · score 74
Install: claude install-skill e128/dotnet-reference
# .NET Overhaul > **Opinionated.** Enforces specific conventions (deny-by-default analyzers, immutability, MTP runner, > strict code analysis). Review/edit `conventions.md` to match your project before the first run. > > **Iterative.** For large codebases, run in phases — approve a subset of findings per run, commit, > run again. For maintained codebases, run periodically to catch drift. Systematic overhaul loop combining language modernization, design review, and specialist analysis. Every step produces findings for user approval before any code is changed. **Step detail files:** When you reach a step marked `-> read steps/stepN.md`, Read that file from `${CLAUDE_SKILL_DIR}/steps/stepN.md` before proceeding. ## Usage ``` /dotnet-overhaul [scope] ``` Scope is a solution file (`.sln`/`.slnx`) or directory. Resolution order: 1. **Solution file given** -> use directly 2. **Directory given** -> Glob for `.slnx`, then `.sln`; if one found use it; if multiple, ask; if none, search parent directories 3. **No scope** -> treat as `.` In-scope once solution is resolved: all `.cs` files, `.csproj` files, Dockerfiles, CI/CD workflows, and config files (`.editorconfig`, `Directory.Build.props`, `Directory.Packages.props`, `.gitignore`, `renovate.json`, `global.json`, `nuget.config`) at the solution root. Test projects identified by name containing `Test`/`Tests`, referencing xUnit/NUnit/MSTest, or having `<IsTestProject>true</IsTestProject>` in their `.csproj`. ## When NOT to Use