dotnet-patterns SKILL.md skillA

dotnet-patterns from jdanigo/hydraia is an agent skill: a SKILL.md folder an AI agent loads when a task calls for it.

Install it, pinned
mdr add jdanigo/hydraia/dotnet-patterns@git:20260703.2ff8155

Pins git:20260703.2ff8155 in mdr.lock. Pin the fingerprint instead.

Audit grade
A, 17 of 17 checks passed
Kind
SKILL.md skill
Repository
jdanigo/hydraia
Path
skills/dotnet-patterns/SKILL.md
Versions recorded
1
Latest version
git:20260703.2ff8155, committed Jul 3, 2026
Size
2,855 bytes
Repository stars
8
License
MIT

Use when writing C#/.NET backend code — ASP.NET Core APIs (minimal APIs or MVC), workers, EF Core data access. Builder playbook: layout, DI lifetimes, async/cancellation, EF Core discipline, options pattern, error contract, testing shape. Complements csharp-reviewer.

Collected from public GitHub. Every version is saved exactly as it was and never changes. Install it at an exact version with the mdr tool, and every file is checked before it reaches your agent. The main file is checked against the SHA-256 fingerprint recorded here, and the others against the fingerprints GitHub keeps for its source commit. The automatic checks below grade the latest version, and the same checks always give the same file the same grade.

What the file says

# C#/.NET Backend Patterns

## Layout

- Vertical slices (feature folders: endpoint + handler + models per feature) for API-shaped services; full Clean Architecture layering only when the domain genuinely warrants it — record the choice as an ADR either way.
- Minimal APIs for small/medium surfaces; MVC controllers when filters/model-binding complexity earns it.

## DI lifetimes (the classic traps)

- Scoped services must NEVER be captured by singletons (captive dependency — resolve via `IServiceScopeFactory` inside the singleton instead).
- `HttpClient` via `IHttpClientFactory`, never `new HttpClient()` per call (socket exhaustion).
- Register by interface at the boundary you intend to fake in tests; concrete elsewhere is fine.

## Async all the way

- No `.Result`/`.Wait()`/`GetAwaiter().GetResult()` on async paths — deadlock and threadpool starvation fuel.
- `CancellationToken` flows from the endpoint through every service and EF call: `await db.Orders.ToListAsync(ct)`. Endpoints accept it; libraries propagate it.
- `ValueTask` only where profiling justifies it; default is `Task`.

## EF Core discipline
…

Read the whole file at its exact version.

How to install

The exact contents, by fingerprint
mdr add jdanigo/hydraia/dotnet-patterns@sha256:713bf467d072cdb8

The line at the top of this page pins the label git:20260703.2ff8155, which is what most people want. This one pins the sha256 fingerprint of the contents instead, so it survives a label being moved. Either way the exact version is written to mdr.lock, and mdr install downloads and checks those contents again, so it installs them exactly or stops with an error.

Badge

mdr badge

[![mdr](https://markdownregistry.com/badge/art_p5kptpik3n62ww3p.svg)](https://markdownregistry.com/a/art_p5kptpik3n62ww3p)

5 badge image fetches in 30 days. What the badge shows.

Versions

The registry has recorded 1 version of this file, committed on Jul 3, 2026.

versioncommittedcommitsizeaudit
git:20260703.2ff8155 latest2026-07-03 2ff8155 2,855 BA view

Audit of the latest version

A  17 of 17 checks passed. Fixed automatic checks with no AI involved, so the same checks give the same answer every run.
  • pass: Frontmatter block present
  • pass: Frontmatter declares a name
  • pass: Frontmatter declares a description
  • pass: Size between 200 bytes and 200 KB (2855 bytes)
  • pass: No zero-width or bidi control characters
  • pass: No instruction hidden inside an HTML comment
  • pass: No link to an exfiltration or paste host
  • pass: No credential-shaped string
  • pass: No instruction to send local credentials anywhere
  • pass: No text hidden with inline styles
  • pass: No prompt-injection phrasing
  • pass: No curl or wget piped into a shell
  • pass: No recursive delete of root, home or parent
  • pass: No instruction to read or print local credentials
  • pass: No base64 blob over 200 characters
  • pass: No link to a raw IP address
  • pass: No script tag

Source

GitHub

jdanigo/hydraia · 8 stars · license MIT · pushed 2026-09-24 · branch main

API

GET https://markdownregistry.com/api/v1/artifacts/art_p5kptpik3n62ww3p
GET https://markdownregistry.com/api/v1/resolve?ref=jdanigo/hydraia/dotnet-patterns
GET https://markdownregistry.com/api/v1/blob/713bf467d072cdb8e2fbebf90f8d9c07781fb54390d624ee2ca281499dacd04b

Your AI assistant does the legwork. You hear about the deals worth your word. Hand yours the standing instructions at modelranch.com and it joins the network that reads files like this one.

Guides: the SKILL.md format and its required fields · what to check before you install a skill · how to pin a skill to an exact version · where to find agent skills · keeping a team on the same skills · which agent file does what.

More from jdanigo/hydraia

hydraia SKILL.md skill
jdanigo/hydraia · codex/skills/hydraia/SKILL.md · Codex-native hydraia pipeline. Use when the user asks to build, add, implement, or change a feature, brings a…
git:20260912.9f5add4 · audit A · 8 stars
adr SKILL.md skill
jdanigo/hydraia · skills/adr/SKILL.md · Use when a design decision is made that is expensive to reverse, affects multiple components, or rejects a plausible…
git:20260703.c5a2b92 · audit A · 8 stars
agency-tier-ui SKILL.md skill
jdanigo/hydraia · skills/agency-tier-ui/SKILL.md · Teaches the AI to design like a high-end agency. Defines the exact fonts, spacing, shadows, card structures, and…
git:20260819.5575aa5 · audit A · 8 stars
api-design SKILL.md skill
jdanigo/hydraia · skills/api-design/SKILL.md · Use when designing or reviewing an API surface — REST, GraphQL, or gRPC. Contract-first methodology: the contract…
git:20260703.c5a2b92 · audit A · 8 stars
banner-design SKILL.md skill
jdanigo/hydraia · skills/banner-design/SKILL.md · Design banners for social media, ads, website heroes, creative assets, and print. Multiple art direction options with…
v1.0.0 · audit A · 8 stars
brainstorming SKILL.md skill
jdanigo/hydraia · skills/brainstorming/SKILL.md · You MUST use this before any creative work - creating features, building components, adding functionality, or modifying…
git:20260911.13e2dcf · audit A · 8 stars
brand SKILL.md skill
jdanigo/hydraia · skills/brand/SKILL.md · Brand voice, visual identity, messaging frameworks, asset management, brand consistency. Activate for branded content…
v1.0.0 · audit A · 8 stars
caveman SKILL.md skill
jdanigo/hydraia · skills/caveman/SKILL.md · Ultra-compressed communication mode. Cuts token usage ~75% by speaking like caveman while keeping full technical…
git:20260702.9dc0119 · audit A · 8 stars
coding-standards SKILL.md skill
jdanigo/hydraia · skills/coding-standards/SKILL.md · Baseline cross-project coding conventions for naming, readability, immutability, and code-quality review. Use detailed…
git:20260702.69ee5ed · audit A · 8 stars
db-optimization SKILL.md skill
jdanigo/hydraia · skills/db-optimization/SKILL.md · Use when the bottleneck is database-shaped — slow queries, lock timeouts, connection exhaustion, N+1 patterns, index…
git:20260703.44486a5 · audit A · 8 stars
design-system SKILL.md skill
jdanigo/hydraia · skills/design-system/SKILL.md · Token architecture, component specifications, and slide generation. Three-layer tokens (primitive→semantic→component)…
v1.0.0 · audit B · 8 stars
design-to-code SKILL.md skill
jdanigo/hydraia · skills/design-to-code/SKILL.md · Elite render-to-code skill. The user brings a finished website design render (jpg/png); this skill distills it into…
git:20260819.357915e · audit A · 8 stars

Every file in jdanigo/hydraia

Browse by kind, by grade A, or by owner.