Run a comprehensive 7-phase verification pipeline for .NET projects: build, analyzers, antipattern detection, tests, security, formatting, and diff review.

MITAuto-check: notesTesting & QA

Install Verify

skills CLI
$ npx skills add codewithmukesh/dotnet-claude-kit --skill verify -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install codewithmukesh/dotnet-claude-kit verify --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/codewithmukesh/dotnet-claude-kit.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/verify .claude/skills/verify && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
verify
GitHub stars
751
Token cost
~2k tokens
SKILL.md length
777 words
Files
1
Skills in repo
47
Repo updated
First seen
Licence
MIT

At a glance

Run a comprehensive 7-phase verification pipeline for .NET projects: build, analyzers, antipattern detection, tests, security, formatting, and diff review.

  • Works in 7 steps: Build (CRITICAL -- short-circuits) → Diagnostics → Antipattern Detection → …
  • Check everything
  • SKILL.md covers What, When, How and Example, plus 1 more section
  • Calls dotnet and git

What it does

Verify is an agent skill from codewithmukesh/dotnet-claude-kit. Run a comprehensive 7-phase verification pipeline for .NET projects: build, analyzers, antipattern detection, tests, security, formatting, and diff review. Each phase produces PASS/FAIL with actionable output and the pipeline short-circuits on critical failures. Also the authority on verification strategy: which phases to run for a given change, quality gates, and fix-and-retry loops. Use when: "verify", "check everything", "is this ready", "pre-PR check", "run all checks", "quality gate", "verification…

Its SKILL.md is about 2k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Testing & QA, covering Quality gates and Refactoring. It works with .NET. The repository describes itself as: Make Claude Code a .NET 10 Expert. The licence is MIT.

When your agent uses it

  • Check everything
  • Verification strategy
  • Which checks should run
  • After completing a feature

Example prompts

  • “verify”
  • “check everything”
  • “is this ready”
  • “/verify”

Workflow steps

7 steps, taken from the step headings in SKILL.md.

  1. Build (CRITICAL -- short-circuits)
  2. Diagnostics
  3. Antipattern Detection
  4. Tests (CRITICAL -- short-circuits)
  5. Security Scan
  6. Format Check
  7. Diff Review

What it can do on your machine

Read from SKILL.md and the folder at commit 2330089. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • dotnet
    • git

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use git, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Verify loads about 2k tokens when it runs. Until then it costs about 149 tokens; SKILL.md has 777 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~149
When it runs · the whole SKILL.md, loaded when a task matches
~2k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check: notes

The automated check noted patterns worth knowing about, such as sudo or a known installer.

  • NoteMentions a .env fileSKILL.md:133
    d file changes (`.vs/`, `bin/`, `obj/`, `.env`, secrets)

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from codewithmukesh/dotnet-claude-kit at commit 2330089, republished under its MIT licence (© codewithmukesh). 777 words, ~1,955 tokens.

Download SKILL.mdSave it as .claude/skills/verify/SKILL.md (or your agent's skills folder).
name
verify
description
Run a comprehensive 7-phase verification pipeline for .NET projects: build, analyzers, antipattern detection, tests, security, formatting, and diff review. Each phase produces PASS/FAIL with actionable output and the pipeline short-circuits on critical failures. Also the authority on verification strategy: which phases to run for a given change, quality gates, and fix-and-retry loops. Use when: "verify", "check everything", "is this ready", "pre-PR check", "run all checks", "quality gate", "verification strategy", "which checks should run", or after completing a feature or refactor.

/verify -- 7-Phase Verification Pipeline

What

Runs a sequential, 7-phase verification pipeline that catches issues at every level -- from compiler errors to subtle antipatterns to formatting drift. Each phase produces an explicit PASS, WARN, or FAIL with details. "It looks fine" is not a verification result; a table of statuses is. Critical failures (Phase 1 build, Phase 4 tests) short-circuit the pipeline because later phases cannot produce meaningful results on broken code.

The pipeline answers one question: "Is this code ready for review?"

PhaseToolWhat It CatchesCritical
1. Builddotnet buildCompilation errors, missing referencesYes
2. Diagnosticsget_diagnostics (MCP)New analyzer warnings, nullability issuesFAIL on new errors
3. Antipatternsdetect_antipatterns (MCP)async void, sync-over-async, DateTime.Now, moreNo
4. Testsdotnet testFailing tests, regressionsYes
5. Securitydotnet list package --vulnerable + scanSecrets, SQL injection, missing auth, vulnerable packagesFAIL on critical/high
6. Formatdotnet format --verify-no-changesStyle drift, formatting inconsistenciesNo
7. Diff Reviewgit diff analysisAccidental changes, debug leftovers, TODOsNo

When

  • After completing a feature, bug fix, or major refactor
  • Before creating a pull request -- non-negotiable, full pipeline
  • After merging upstream changes or updating dependencies
  • When the user says "verify", "check everything", "is this ready", "run all checks"
  • As the final step before marking a task complete
Which Phases to Run

Full pipeline is the default. For scoped changes, run a subset:

ScenarioPhasesNotes
Feature complete / Pre-PR / new endpointAll 7No shortcuts
Bug fix1, 2, 4Add a test first if none covers it
After refactor1, 2, 3, 4Correctness focus; add 5-7 if security-sensitive
Dependency update1, 4, 5Build, tests, vulnerability scan
Config or test-only change1, 4Build and test
Formatting only6Format check is sufficient

When in doubt, run all 7. Extra phases cost minutes; a missed security issue costs days of incident response. Never cherry-pick phases because a change "looks safe".

How

Phase 1: Build (CRITICAL -- short-circuits)
bash
dotnet build --no-restore --verbosity quiet
  • If the build fails, STOP. Report errors and fix before continuing -- nothing downstream is meaningful on code that does not compile.
  • Capture the warning count even on PASS; new warnings are tracked in Phase 2.
  • Output: PASS (0 errors) or FAIL (with error list)
Phase 2: Diagnostics

Use the Roslyn MCP get_diagnostics tool, scoped to changed files/projects (full solution for cross-cutting changes). Compare against baseline -- flag only NEW warnings introduced by the current changes. Common findings: CS8600/CS8602 (nullability), CS0219 (unused variable).

Output: PASS (0 new) / WARN (new warnings) / FAIL (new errors). Treat new warnings as work -- today's CS8600 is next month's production NullReferenceException.

Phase 3: Antipattern Detection

Use the Roslyn MCP detect_antipatterns tool on changed files (full project for broad changes). Catches: async void, sync-over-async (.Result, .GetAwaiter().GetResult()), new HttpClient(), DateTime.Now/UtcNow instead of TimeProvider, broad catch (Exception), string interpolation in logging, missing CancellationToken, EF read queries without AsNoTracking.

Output: PASS (0 findings) / WARN (findings) / FAIL (critical antipatterns)

Show full SKILL.md (297 more words)Show less
Phase 4: Tests (CRITICAL -- short-circuits)
bash
dotnet test --no-build --verbosity quiet
  • Full suite, or scoped to affected test projects for large solutions.
  • Any failing test is a FAIL -- no exceptions. Stop and fix before later phases.
  • If no test project exists: SKIP with a recommendation to add tests.

Output: PASS (all green) or FAIL (failing test names + error messages)

Phase 5: Security Scan
bash
dotnet list package --vulnerable --include-transitive

Then review changed files for: hardcoded secrets/connection strings/API keys, SQL injection (raw SQL without parameterization), missing [Authorize] on endpoints that need it, permissive CORS, missing input validation, disabled HTTPS or certificate validation.

Output: PASS / WARN (medium/low findings) / FAIL (critical/high vulnerabilities)

Phase 6: Format Check
bash
dotnet format --verify-no-changes --verbosity quiet

Reports drift without auto-fixing. To resolve, run dotnet format and include the changes in the commit. If no .editorconfig exists, note it as a recommendation.

Output: PASS / WARN (with file list)

Phase 7: Diff Review

Analyze git diff --stat and git diff (staged + unstaged) for:

  • Accidental or unrelated file changes (.vs/, bin/, obj/, .env, secrets)
  • Debug leftovers (Console.WriteLine, #if DEBUG in production paths)
  • Unresolved TODO/HACK/FIXME markers
  • Scope mismatch -- changes must match the task/PR description

Output: PASS (clean, matches intent) / WARN (with findings)

Fix-and-Retry Loop

A single pass rarely produces all-green. The loop is the point:

  1. IDENTIFY -- which phase failed, and the specific error
  2. FIX -- make the minimal change that resolves it
  3. RE-RUN -- from Phase 1 if the fix changed code; otherwise from the failed phase
  4. REPEAT -- until all phases pass, or an issue needs user input
Final Summary
## Verification Results

| Phase | Result | Details |
|-------|--------|---------|
| 1. Build | PASS | 0 errors, 0 warnings |
| 2. Diagnostics | PASS | 0 new diagnostics |
| 3. Antipatterns | WARN | 1 missing CancellationToken |
| 4. Tests | PASS | 47 passed, 0 failed |
| 5. Security | PASS | No findings |
| 6. Format | PASS | Clean |
| 7. Diff Review | WARN | 1 TODO marker found |

**Verdict: READY FOR REVIEW** (with 2 non-blocking warnings)

Verdicts: READY FOR REVIEW (all PASS, or only non-blocking WARNs) or NEEDS FIXES (any FAIL, with specific remediation steps). For pre-PR runs, include the verification report in the PR description.

Example

User: /verify

Claude: Running 7-phase verification pipeline...

Phase 1: Build ............ PASS (0 errors)
Phase 2: Diagnostics ...... PASS (0 new warnings)
Phase 3: Antipatterns ..... WARN
  - src/Features/Orders/CreateOrder.cs:42 -- DateTime.Now usage, use TimeProvider
Phase 4: Tests ............ PASS (23 passed, 0 failed, 0 skipped)
Phase 5: Security ......... PASS
Phase 6: Format ........... PASS
Phase 7: Diff Review ...... PASS

Verdict: READY FOR REVIEW (1 non-blocking warning)

Recommendation: Replace DateTime.Now with TimeProvider on line 42 before
merging. Not blocking, but it will fail the antipattern check in CI.
  • /build-fix -- Auto-fix build errors when Phase 1 fails
  • /code-review -- Multi-dimensional review once verification passes
  • /health-check -- Whole-project graded assessment (beyond this change set)

© codewithmukesh, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in skills/verify of codewithmukesh/dotnet-claude-kit.

Open the folder on GitHubat commit 2330089

Compare with similar skills

Verify next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Verify compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Verify this skillcodewithmukesh/dotnet-claude-kit751—~2kAutomated safety check: NotesMIT
Triage Sonarqubenetdata/netdata81k—~2.8kAutomated safety check: NotesGPL-3.0
Sonarqube Analysishbmartin/graphviz2drawio275—~508Automated safety check: NotesGPL-3.0
Ccg Workflowfengshao1227/ccg-workflow5.9k—~2.3kAutomated safety check: PassMIT
Developing MarchatCod-e-Codes/marchat137—~870Automated safety check: PassMIT
Verify Tests Catch the Bugdotnet/maui23k—~2.7kAutomated safety check: PassMIT

Similar skills

  • Triage Sonarqube

    netdata/netdata

    Inspect, review, or apply authorized triage decisions to SonarCloud issues and security hotspots; also review the Sonar helpers.

    81k GitHub stars~2.8k tokensUpdated today
    Testing & QAAuto-check: notes
  • Sonarqube Analysis

    hbmartin/graphviz2drawio

    Inspect SonarQube Cloud/SonarCloud findings for this repository using local .env credentials.

    275 GitHub stars~508 tokensUpdated 2 mo ago
    Testing & QAAuto-check: notes
  • Ccg Workflow

    fengshao1227/ccg-workflow

    How to run a non-trivial change end to end with the CCG role tools (ccganalyze / ccgdesign / ccgbuild / ccgdebug / ccgoptimize / ccgreview / ccgtest) and the verify- quality gates.

    5.9k GitHub stars~2.3k tokensUpdated 22 days ago
    Testing & QAAuto-check passed
  • Developing Marchat

    Cod-e-Codes/marchat

    Implements and refactors marchat Go code with project toolchain and quality gates.

    137 GitHub stars~870 tokensUpdated 4 days ago
    Testing & QAAuto-check passed
  • Official

    Confirms that newly added tests actually fail without the fix, auto-detecting UI, device, unit or XAML tests and running the matching runner.

    23k GitHub stars~2.7k tokensUpdated today
    Testing & QAAuto-check passed
  • Code Completion

    facioquo/stock-indicators-dotnet

    Quality gates for finishing work in this repository — dead-code cleanup, Roslynator and dotnet format fixes, markdownlint, build, unit tests, documentation, and Obsolete migration shims — with the…

    1.2k GitHub stars~1.2k tokensUpdated today
    Testing & QAAuto-check passed

More from codewithmukesh/dotnet-claude-kit

All 47 skills in this repo
  • API Versioning

    codewithmukesh/dotnet-claude-kit

    API versioning strategies for ASP.NET Core. An agent skill from codewithmukesh/dotnet-claude-kit.

    751 GitHub starsUsed in 1 repo~1.2k tokens
    Auto-check passed
  • Scaffold

    codewithmukesh/dotnet-claude-kit

    Architecture-aware feature scaffolding for .NET 10 projects.

    751 GitHub stars~1.7k tokensUpdated 2 mo ago
    Auto-check passed
  • Architecture Advisor

    codewithmukesh/dotnet-claude-kit

    Architecture selection advisor for .NET applications. An agent skill from codewithmukesh/dotnet-claude-kit.

    751 GitHub starsUsed in 1 repo~2.9k tokens
    Auto-check passed
  • Aspire

    codewithmukesh/dotnet-claude-kit

    .NET Aspire for cloud-native orchestration. An agent skill from codewithmukesh/dotnet-claude-kit.

    751 GitHub starsUsed in 1 repo~1.5k tokens
    Auto-check passed
  • Authentication

    codewithmukesh/dotnet-claude-kit

    Authentication and authorization for ASP.NET Core. An agent skill from codewithmukesh/dotnet-claude-kit.

    751 GitHub starsUsed in 1 repo~1.9k tokens
    Auto-check passed
  • Caching

    codewithmukesh/dotnet-claude-kit

    Caching strategies for .NET 10 applications. An agent skill from codewithmukesh/dotnet-claude-kit.

    751 GitHub starsUsed in 1 repo~1.4k tokens
    Auto-check passed

Works with

Categories

Questions about Verify

What does Verify do?

Run a comprehensive 7-phase verification pipeline for .NET projects: build, analyzers, antipattern detection, tests, security, formatting, and diff review. Verify is an agent skill from codewithmukesh/dotnet-claude-kit.NET projects: build, analyzers, antipattern detection, tests, security, formatting, and diff review.

When should I use Verify?

Verify fits situations like: check everything; verification strategy; which checks should run; after completing a feature.

How do I install Verify in Claude Code?

Run `npx skills add codewithmukesh/dotnet-claude-kit --skill verify -a claude-code`. Or copy the skill folder (skills/verify in codewithmukesh/dotnet-claude-kit) into .claude/skills/verify in your project. Claude Code loads it when a task matches its description.

How do I install Verify in Codex?

Run `npx skills add codewithmukesh/dotnet-claude-kit --skill verify -a codex`. Or copy the skill folder (skills/verify in codewithmukesh/dotnet-claude-kit) into .agents/skills/verify in your project. Codex loads it when a task matches its description.

Can I use Verify in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add codewithmukesh/dotnet-claude-kit --skill verify -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/verify, .gemini/skills/verify, .github/skills/verify and .opencode/skills/verify in your project.

What does Verify need to run?

Going by SKILL.md and its folder, Verify needs the command-line tools its instructions call (dotnet and git).

Does Verify access the network?

SKILL.md contains no URLs. Its commands use git, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Verify safe to install?

Our automated static check of SKILL.md found notes only (mentions a .env file), nothing it rates as a warning. It is not a guarantee. Review the folder before installing.

What licence does Verify use?

Verify is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Verify use?

About 2k tokens (SKILL.md is roughly 7.8k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Verify?

Skills that share tags, products or a category with Verify: Triage Sonarqube (netdata/netdata, 81k stars), Sonarqube Analysis (hbmartin/graphviz2drawio, 275 stars), Ccg Workflow (fengshao1227/ccg-workflow, 5.9k stars) and Developing Marchat (Cod-e-Codes/marchat, 137 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Verify?

codewithmukesh (a GitHub organization) maintains it in codewithmukesh/dotnet-claude-kit, which has 751 GitHub stars. The repository holds 47 skills in this directory. The repository was last updated on August 7, 2026.

Source: codewithmukesh/dotnet-claude-kit on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.