Install
$ agentstack add skill-camilooscargbaptista-cto-toolkit-csharp-dotnet-review ✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
C# / .NET Code Review
When to Use
- Reviewing C#/.NET code (ASP.NET Core, EF Core, Minimal APIs)
- Evaluating .NET architecture patterns (Clean Architecture, CQRS, MediatR)
- Azure service integration review
Review Checklist
Architecture & Patterns
- [ ] Clean Architecture: Domain independent of infrastructure
- [ ] Dependency Injection used throughout (no
new Service()) - [ ] CQRS separation when appropriate (Commands vs Queries)
- [ ] MediatR or similar for decoupled handlers
- [ ] Repository pattern for data access abstraction
- [ ] Options pattern for configuration (
IOptions)
C# Best Practices
- [ ]
async/awaitused correctly (no.Resultor.Wait()) - [ ]
CancellationTokenpropagated through async chains - [ ]
IDisposableimplemented for unmanaged resources - [ ]
nullhandled with nullable reference types (?,??,?.) - [ ] Records used for immutable DTOs
- [ ]
sealedclasses where inheritance not needed - [ ]
readonlyfor immutable fields - [ ] Pattern matching instead of type casting
EF Core
- [ ] No N+1 queries (use
.Include()or.AsSplitQuery()) - [ ]
AsNoTracking()for read-only queries - [ ] Indexes defined on frequently queried columns
- [ ] Migrations tested and reversible
- [ ] Connection pooling configured
- [ ] Query filters for soft delete / multi-tenancy
Security
- [ ]
[Authorize]on all protected endpoints - [ ] Input validation with data annotations or FluentValidation
- [ ] Anti-forgery tokens for forms
- [ ] CORS configured restrictively
- [ ] User secrets / Azure Key Vault for credentials
- [ ] No SQL string concatenation (parameterized queries)
Performance
- [ ] Response caching where appropriate
- [ ]
IMemoryCacheorIDistributedCachefor hot data - [ ] Minimal API for high-throughput endpoints
- [ ]
System.Text.Jsonconfigured (not Newtonsoft unless needed) - [ ] Pagination on list endpoints
- [ ] Background tasks via
IHostedService/ Hangfire
Output Format
## .NET Review: [Component]
**Health Score**: X/10
### Critical Issues
- [Issue with fix]
### Improvements
- [Suggestion with example]
### Architecture Notes
- [Pattern observations]
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: camilooscargbaptista
- Source: camilooscargbaptista/cto-toolkit
- License: MIT
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.