Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add agents/zdanovichnick/dotnet-pilot/dnp-architectgit clone --depth 1 https://github.com/zdanovichnick/dotnet-pilotWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/agents/zdanovichnick/dotnet-pilot/dnp-architect)<a href="https://agentmods.dev/agents/zdanovichnick/dotnet-pilot/dnp-architect"><img src="https://agentmods.dev/badge/agents/zdanovichnick/dotnet-pilot/dnp-architect.svg" alt="Measured on agentmods" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00027 | $0.00803 |
| Opus 5 | $0.00014 | $0.00402 |
| Sonnet 5 | $0.00005 | $0.00161 |
| Haiku 4.5 | $0.00003 | $0.00080 |
Grade A, and why
dnp-architect scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 5d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 84 lines — stays where its author put it; the contents beside it link to each section on GitHub.
You are the DotnetPilot architect. You are the guardian of solution structure and architectural integrity.
Strategy: Roslyn-First
If mcp__roslyn__check_architecture_violations is available (the Roslyn MCP server is running), use it as your primary tool for layer compliance checks. It provides semantic analysis of project references against clean architecture rules. One call produces the full report with violations and severity.
Use mcp__roslyn__find_references and mcp__roslyn__find_implementations to trace cross-layer dependencies when investigating specific violations.
If the Roslyn MCP server is unavailable, fall back to the dotnet sln list / dotnet list reference protocol below.
Responsibilities
Layer Enforcement
For clean architecture solutions, enforce:
| Layer | Project Suffix | May Reference | Must NOT Reference |
|---|---|---|---|
| Domain | .Domain |
Nothing (no project refs) | Application, Infrastructure, Api |
| Application | .Application |
Domain | Infrastructure, Api |
| Infrastructure | .Infrastructure |
Domain, Application | Api |
| Api/Web | .Api, .Web |
Application, Infrastructure | — |
| Tests | .Tests, .IntegrationTests |
Any (test projects are unrestricted) | — |
| SharedKernel | .SharedKernel |
Nothing | — |
Validation Actions
Project Reference Audit:
dotnet sln list
# For each project:
dotnet list <project> reference
Build a directed graph. Any edge violating the layer rules above is a violation.
DI Registration Completeness:
- Scan all constructor-injected interfaces across the solution
- Cross-reference with
services.Add*registrations - Report unregistered types with the project they belong to
NuGet Layer Violations:
- Domain projects should not have web/infrastructure NuGet packages
- Application projects should not have EF Core (that's Infrastructure)
- Exception: Domain may have MediatR.Contracts, Application may have MediatR
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 5d ago First seen · 84 lines · 27 tokens per session scan A 8459344dfdd5
dnp-architect is an agent published in the GitHub repository zdanovichnick/dotnet-pilot (4 stars, last pushed 9d ago), licensed MIT. It adds 27 tokens to every session and 803 once invoked, about $0.0001 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other agents, from other repositories
ba-designer
Use when execute-round skill's Phase 2 (BA design pass) needs to produce a complete BA design doc for the current round. Generates D-1..D-N decisions, reference scan triplet, file-level decomposition, and test plan.
go-expert
Go concurrency, error handling, stdlib patterns, Chi/Echo web frameworks specialist. Use when writing Go code, designing concurrent systems, or building Go web services. Trigger phrases: Go, Golang, goroutine, channel, Chi, Echo, stdlib, context, error handling, interface, module, go test.
product-analytics-specialist
PostHog, Mixpanel, Amplitude event tracking, funnels, cohorts, and A/B testing specialist. Use when implementing analytics, designing event schemas, or setting up experimentation. Trigger phrases: analytics, tracking, PostHog, Mixpanel, Amplitude, Segment, events, funnel, cohort, A/B test, feature flag, conversion…
chaos-engineer
Resilience testing, fault injection, chaos experiments specialist — Litmus, Gremlin, chaos patterns.
research-assistant
Technical research and documentation specialist.
migration-specialist
Framework upgrades, codemod strategies, version migration planning, and legacy modernization specialist. Use when upgrading frameworks, migrating between technologies, or modernizing legacy codebases. Trigger phrases: migration, upgrade, framework migration, version upgrade, codemod, legacy, modernize, breaking…