Reviewing credential handling in Azure SDK .NET samples
Error pattern analysis for .NET Azure SDK samples
Documentation compliance check for .NET Azure SDK samples
Aspire orchestration review for Azure SDK .NET samples
DO NOT USE FOR
General .NET code review unrelated to Azure SDK samples
Production application code review
Azure service configuration
Context
Base template: Inherits from azure-sdk-sample-review for shared review patterns (credentials, error handling, documentation, infrastructure). This skill adds .NET-specific rules below.
Reviews .NET code samples for Azure SDKs intended for publication as Microsoft Azure samples. Covers: Azure SDK client patterns (Track 2 Azure.*), authentication (DefaultAzureCredential), service-specific best practices, .NET Aspire orchestration, sample hygiene, documentation accuracy, infrastructure-as-code, and azd integration.
acrolinx-score-improvement — Article quality and style
Summary
Applies 71 rules across project setup, Azure SDK clients, AI/data/messaging services, Aspire orchestration, infrastructure, and documentation to ensure .NET samples are secure, accurate, and publication-ready.
References
References location: All reference files for this skill live inside the skill directory at .github/skills/data-plus-ai-sdk-dotnet-sample-review/. Paths like references/file.md resolve to .github/skills/data-plus-ai-sdk-dotnet-sample-review/references/file.md. Paths are relative to the skill folder, not the repo root.
1---2name: azure-sdk-dotnet-sample-review3description: Reviews Azure SDK .NET code samples for best practices, credential handling, error patterns, Aspire orchestration, and documentation compliance. Trigger: "review .NET Azure SDK sample", "check dotnet sample", "Azure SDK .NET review".4---56## USE FOR78- "review .NET Azure SDK sample"9- "check dotnet sample for best practices"10- "Azure SDK .NET code review"11- Reviewing credential handling in Azure SDK .NET samples12- Error pattern analysis for .NET Azure SDK samples13- Documentation compliance check for .NET Azure SDK samples14- Aspire orchestration review for Azure SDK .NET samples1516## DO NOT USE FOR1718- General .NET code review unrelated to Azure SDK samples19- Production application code review20- Azure service configuration2122## Context2324> **Base template:** Inherits from [azure-sdk-sample-review](../azure-sdk-sample-review/SKILL.md) for shared review patterns (credentials, error handling, documentation, infrastructure). This skill adds .NET-specific rules below.2526Reviews **.NET code samples** for Azure SDKs intended for publication as Microsoft Azure samples. Covers: Azure SDK client patterns (Track 2 `Azure.*`), authentication (`DefaultAzureCredential`), service-specific best practices, .NET Aspire orchestration, sample hygiene, documentation accuracy, infrastructure-as-code, and azd integration.2728**Total rules: 71** (9 CRITICAL, 25 HIGH, 33 MEDIUM, 4 LOW)2930---3132## Quick Pre-Review Checklist (5-Minute Scan)3334- [ ] **.csproj**: Track 2 packages (`Azure.*`, exception: `Microsoft.Azure.Cosmos`)35- [ ] **Auth**: `DefaultAzureCredential` (not connection strings/hardcoded keys)36- [ ] **.gitignore**: Includes `bin/`, `obj/`, `.env`, `appsettings.Development.json`37- [ ] **No secrets**: No hardcoded credentials, API keys, or tokens38- [ ] **README.md**: Prerequisites, setup steps, expected output39- [ ] **LICENSE**: MIT license present40- [ ] **Security**: No critical/high CVEs (`dotnet list package --vulnerable`)41- [ ] **Nullable**: `<Nullable>enable</Nullable>`42- [ ] **Error handling**: Proper exception types, troubleshooting hints43- [ ] **Cleanup**: `await using` / `IAsyncDisposable`44- [ ] **Lock file**: `packages.lock.json` committed when enabled45- [ ] **Target**: `net8.0`, `net9.0`, or `net10.0`46- [ ] **Builds**: `dotnet build` succeeds4748---4950## Blocker Issues (Auto-Reject)51521. **Hardcoded secrets** — credentials, API keys, connection strings in code532. **Missing authentication** — no auth or insecure methods543. **No error handling** — unhandled exceptions, silent failures554. **Broken references** — missing NuGet packages, build errors565. **Security vulnerabilities** — critical/high CVEs576. **Missing LICENSE** — no MIT LICENSE at any repo level587. **Secrets committed** — live credentials tracked in git598. **Track 1 packages** — legacy `Microsoft.Azure.*` (exception: `Microsoft.Azure.Cosmos` v3.x is current)6061---6263## Severity Legend6465- **CRITICAL**: Security vulnerability or sample won't run. Block publication.66- **HIGH**: Major quality issue causing confusion or production failures. Fix before merge.67- **MEDIUM**: Best practice violation. Fix before publication.68- **LOW**: Polish item. Address during review cycles.6970---7172## Detailed Rules737475### Language-Specific References (.NET code examples)7677| # | Section | Reference File |78|---|---------|---------------|79| 1 | Project Setup — .NET | [references/project-setup.md](references/project-setup.md) |80| 2 | SDK Client Patterns — .NET | [references/sdk-client-patterns.md](references/sdk-client-patterns.md) |81| 3 | AI Services — .NET | [references/ai-services.md](references/ai-services.md) |82| 4 | Data Services — .NET | [references/data-services.md](references/data-services.md) |83| 5 | Messaging — .NET | [references/messaging.md](references/messaging.md) |84| 6 | Key Vault — .NET | [references/keyvault.md](references/keyvault.md) |85| 7 | Vector Search — .NET | [references/vector-search.md](references/vector-search.md) |86| 8 | Error Handling — .NET | [references/error-handling.md](references/error-handling.md) |87| 9 | Data Management — .NET | [references/data-management.md](references/data-management.md) |88| 10 | Sample Hygiene — .NET | [references/sample-hygiene.md](references/sample-hygiene.md) |89| 11 | Documentation — .NET | [references/documentation.md](references/documentation.md) |90| 12 | Infrastructure — .NET | [references/infrastructure.md](references/infrastructure.md) |91| 13 | azd — .NET | [references/azd.md](references/azd.md) |92| 14 | .NET Aspire, DI & Functions (.NET-unique) | [references/aspire-di-functions.md](references/aspire-di-functions.md) |93| 15 | CI/CD & Testing — .NET | [references/cicd-testing.md](references/cicd-testing.md) |9495---9697## Companion Skills9899- **azure-sdk-typescript-sample-review** — TypeScript Azure SDK sample review100- **azure-sdk-java-sample-review** — Java 17/21 + Spring Boot101- **azure-sdk-python-sample-review** — Python 3.9+ async102- **acrolinx-score-improvement** — Article quality and style103104---105106## Summary107108Applies 71 rules across project setup, Azure SDK clients, AI/data/messaging services, Aspire orchestration, infrastructure, and documentation to ensure .NET samples are secure, accurate, and publication-ready.109110## References111112> **References location:** All reference files for this skill live inside the skill directory at `.github/skills/data-plus-ai-sdk-dotnet-sample-review/`. Paths like `references/file.md` resolve to `.github/skills/data-plus-ai-sdk-dotnet-sample-review/references/file.md`. Paths are relative to the skill folder, not the repo root.113
Run npx skillmds@latest add azure-samples/azure-sdk-dotnet-sample-review in your terminal (requires Node.js), paste this page's agent-chat prompt into Claude, Cursor, or any MCP-connected agent, or download the SKILL.md file and copy it into your agent's skills directory.
Reviews Azure SDK .NET code samples for best practices, credential handling, error patterns, Aspire orchestration, and documentation compliance. Trigger: "review .NET Azure SDK sample", "check dotnet sample", "Azure SDK .NET review". It is listed under DevOps & Infra on SkillMD.
This skill has not completed SkillMD's automated safety review yet. SkillMD never runs a skill's scripts for you; review the SKILL.md before installing.
This skill is tagged as working with Claude Code, Claude.ai, OpenAI Codex. SKILL.md is an open format, so most agents that read a skills directory can load it too.
Yes. Installing skills from SkillMD is free, and the skill stays under its author's original license.
Azure-Samples (@azure-samples) published this skill. Their other Agent Skills are listed on their SkillMD profile.