End-to-end .NET Code Review
Lean entrypoint for high-signal .NET review. Detailed commands/checklists/output requirements are split into reference files for progressive disclosure.
On Claude Code with this plugin installed, prefer /dotnet-episteme-skills:dotnet-review for parallel multi-agent review (4 domain specialists + a generalist + adversarial maintainer verification). This file remains the complete single-context procedure for all other tools.
Requirements
This skill requires:
- Git for diff and commit analysis
- Bash/Zsh (Linux/macOS) or PowerShell 5.1+ (Windows)
- Agent tools with file read capability and shell command execution
Optional but recommended:
rg (ripgrep) for faster dependency searches on Linux/macOS
dotnet CLI for build verification
When to use this skill
Use this skill when the user asks for:
- PR / branch / diff / commit-range review
- "code review this implementation"
- "critical review of ..."
- "cynical review of ..."
- adversarial / devil's-advocate review
- production-readiness review (performance, AOT/trimming, security, observability, DB, messaging)
Reference files (read on demand)
references/scripts-and-context.md
- Read first when gathering change context and choosing script commands.
references/domain-checklists.md
- Read after context is loaded; focus on only the relevant sections for changed components.
references/output-contract.md
- Read before writing the final review output.
references/maintainer-playbook.md
- Read during the falsification pass (Step 3) to pressure-test findings before output.
Review modes
Standard mode (default)
- Balanced review focused on correctness, maintainability, and risk.
Cynical mode (adversarial)
Use when request language is explicitly skeptical: "critical review", "cynical review", "tear this apart", "assume this is broken", "devil's advocate".
Mandates:
- Assume defects exist until disproven.
- Prefer failure-mode discovery over style nits.
- Generate at least 5 issue hypotheses before finalizing.
- Validate each hypothesis with evidence; remove weak/speculative findings.
Core workflow
Step -1: Receive content
- Load content from provided input or current context.
- If content is empty (no diff/branch/files/document), ask for clarification and stop.
- Identify content type: diff, branch, uncommitted changes, commit range, or document/spec.
Step 0: Gather context
- Read
references/scripts-and-context.md.
- Run the baseline context commands.
- Read changed files with your file-read tool.
Step 1: Select review mode
- Use Cynical mode for explicitly skeptical requests.
- Otherwise use Standard mode.
Step 2: Establish component context
- Identify component type(s): API, worker, repository, domain, messaging, etc.
- Identify critical paths: request path, message path, DB path.
- Identify invariants: idempotency, correlation, ordering, transaction boundaries.
Step 3: Adversarial hypothesis pass
- Generate candidate defects (at least 5 in cynical mode).
- For each hypothesis, collect direct evidence (
file:line, snippet, or command output).
- Try to falsify each hypothesis (tests, guards, explicit design intent, invariants).
- Apply
references/maintainer-playbook.md to each surviving finding (maintainer persona, five checks, evidence-backed verdicts).
- Keep only confirmed/high-signal findings.
Step 4: Domain checklist pass
- Read
references/domain-checklists.md.
- Apply only relevant sections based on changed files and architecture.
- If scope is unclear, run all sections but prioritize correctness/security/data-loss risks first.
Step 5: Produce findings
- Read
references/output-contract.md.
- Format output exactly as specified there.
1---2name: dotnet-techne-code-review3description: Use when reviewing PRs/diffs/branches/documents for .NET quality, correctness, performance, security, data access, messaging, and observability. Includes adversarial critical-thinking mode for skeptical/cynical review requests. Keywords: code review, review PR, review diff, critical review, cynical review, adversarial review, production readiness, low GC, AOT, security review.4license: MIT5---6# End-to-end .NET Code Review78Lean entrypoint for high-signal .NET review. Detailed commands/checklists/output requirements are split into reference files for progressive disclosure.910On Claude Code with this plugin installed, prefer `/dotnet-episteme-skills:dotnet-review` for parallel multi-agent review (4 domain specialists + a generalist + adversarial maintainer verification). This file remains the complete single-context procedure for all other tools.1112## Requirements13This skill requires:14- **Git** for diff and commit analysis15- **Bash/Zsh** (Linux/macOS) or **PowerShell 5.1+** (Windows)16- **Agent tools** with file read capability and shell command execution1718Optional but recommended:19- `rg` (ripgrep) for faster dependency searches on Linux/macOS20- `dotnet` CLI for build verification2122## When to use this skill23Use this skill when the user asks for:24- PR / branch / diff / commit-range review25- "code review this implementation"26- "critical review of ..."27- "cynical review of ..."28- adversarial / devil's-advocate review29- production-readiness review (performance, AOT/trimming, security, observability, DB, messaging)3031## Reference files (read on demand)32- `references/scripts-and-context.md`33 - Read first when gathering change context and choosing script commands.34- `references/domain-checklists.md`35 - Read after context is loaded; focus on only the relevant sections for changed components.36- `references/output-contract.md`37 - Read before writing the final review output.38- `references/maintainer-playbook.md`39 - Read during the falsification pass (Step 3) to pressure-test findings before output.4041## Review modes4243### Standard mode (default)44- Balanced review focused on correctness, maintainability, and risk.4546### Cynical mode (adversarial)47Use when request language is explicitly skeptical: "critical review", "cynical review", "tear this apart", "assume this is broken", "devil's advocate".4849Mandates:50- Assume defects exist until disproven.51- Prefer failure-mode discovery over style nits.52- Generate **at least 5 issue hypotheses** before finalizing.53- Validate each hypothesis with evidence; remove weak/speculative findings.5455## Core workflow5657### Step -1: Receive content58- Load content from provided input or current context.59- If content is empty (no diff/branch/files/document), ask for clarification and stop.60- Identify content type: diff, branch, uncommitted changes, commit range, or document/spec.6162### Step 0: Gather context63- Read `references/scripts-and-context.md`.64- Run the baseline context commands.65- Read changed files with your file-read tool.6667### Step 1: Select review mode68- Use **Cynical** mode for explicitly skeptical requests.69- Otherwise use **Standard** mode.7071### Step 2: Establish component context72- Identify component type(s): API, worker, repository, domain, messaging, etc.73- Identify critical paths: request path, message path, DB path.74- Identify invariants: idempotency, correlation, ordering, transaction boundaries.7576### Step 3: Adversarial hypothesis pass77- Generate candidate defects (at least 5 in cynical mode).78- For each hypothesis, collect direct evidence (`file:line`, snippet, or command output).79- Try to falsify each hypothesis (tests, guards, explicit design intent, invariants).80- Apply `references/maintainer-playbook.md` to each surviving finding (maintainer persona, five checks, evidence-backed verdicts).81- Keep only confirmed/high-signal findings.8283### Step 4: Domain checklist pass84- Read `references/domain-checklists.md`.85- Apply only relevant sections based on changed files and architecture.86- If scope is unclear, run all sections but prioritize correctness/security/data-loss risks first.8788### Step 5: Produce findings89- Read `references/output-contract.md`.90- Format output exactly as specified there.