Tool Diagnostics & Metrics v1.0.0

QuickDup for .NET

Use the open-source free `QuickDup` clone detector for .NET repositories. Use when a repo needs duplicate C# code discovery, structural clone detection, DRY refactoring candidates, or repeatable duplication. USE FOR: the repo wants QuickDup; the team needs repeatable duplicate-code scans for C#; the user asks about DRY cleanup, copy-paste detection, clone detection, or duplicate. DO NOT USE FOR: formatting-only work; repos that intentionally use a different clone detector and do not want overlap. INVOKES: inspect the repository context, edit targeted files, and run relevant build, test, lint, or validation commands when changes are made.

Trigger On

  • the repo wants QuickDup
  • the team needs repeatable duplicate-code scans for C#
  • the user asks about DRY cleanup, copy-paste detection, clone detection, or duplicate logic removal in a .NET repo

Workflow

  1. Choose the scan target deliberately:

- whole solution for broad discovery - bounded folders for targeted cleanup

  1. Scan C# with .cs only unless the repo explicitly wants Razor, generated XML, or other extensions too.
  2. Exclude generated and transient paths before trusting the results:

- bin/ - obj/ - Migrations/ when scaffold churn dominates - *.g.cs - *.generated.cs - *.Designer.cs

  1. Review the top patterns before refactoring anything.
  2. Classify duplication before changing code:

- real structural duplication worth extraction - domain-shape duplication that documents intent - generated or acceptable duplication that should be ignored

  1. Prefer small extractions, named helpers, shared value objects, or focused abstractions over flag-heavy merge methods.
  2. Re-run QuickDup after the refactor and then run the repo's normal quality pass.

Deliver

  • repeatable duplicate-code detection for C#
  • explicit exclude and suppression strategy
  • concrete refactoring candidates instead of vague maintainability advice

Validate

  • the scan target and excludes match the repo's real source boundaries
  • generated-code noise is filtered before acting on findings
  • duplication cleanup preserves behavior and is backed by relevant tests
  • QuickDup output is used as input to review, not as an automatic rewrite authority

Load References

Related skills

Use the open-source free `Asynkron.Profiler` dotnet tool for CLI-first CPU, allocation, exception, contention, and heap profiling of .NET commands or existing trace artifacts.

Asynkron.Profiler

These are the skills our senior team ships with. Want us to build your system? Book a 15-min call.