dotnet-architecture
Skill2 starsChanged 54 days agoMITView on GitHub
Use for a SYSTEM-LEVEL review of C#/.NET code — "what is stale here", "is this still needed", "clean up after this refactor", "find backwards-compatibility code", "which tests are outdated", "where should this be one abstraction", "consolidate", "simplify the architecture" — and after a substantial architectural change (a removed engine or subsystem, a new subsystem, a cross-project refactor). Launches the dotnet-architecture-review subagent. Use dotnet-review instead when the question is whether code is correct, safe or conventional; the two can run side by side.
4 other projects use a version of this.
Adopted by
Most recently taken up by
- landim32/awesome-ai-skillstheir own version, first seen Nov 1, 2026
- dprakash2101/dotnet-production-agent-skillstheir own version, first seen Sep 23, 2026
- emaginebr/AvaBottheir own version, first seen Apr 8, 2026
- Postpartum-genushyacinthus29/dotnet-skillstheir own version, first seen Mar 16, 2026
Other versions4 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 4
- Postpartum-genushyacinthus29/dotnet-skills★ 13same name
- dprakash2101/dotnet-production-agent-skills★ 4same name
- emaginebr/AvaBot★ 2same name
- landim32/awesome-ai-skills★ 1same name
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository10 other files it gives its agents.
- AGENTS.mdAGENTS.md
- CLAUDE.mdCLAUDE.md
- dotnet-consistencySkill
- dotnet-exploreSkill
- dotnet-initSkill
- dotnet-performanceSkill
- dotnet-readSkill
- dotnet-reviewSkill
- dotnet-selfevalSkill
- dotnet-writeSkill
The file
We split this skill into the rules it gives an agent
1 rule. 0 are common, 0 are distinctive, and 1 is very specific to this project.
0
Common
Most of the 4 edited versions we read keep these.
0
Distinctive
This author's own choices. Worth a look.
1
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 31
Call workspace_status yourself before launching.
“Common” is measured: kept by at least 6 in 10 of the 4 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Delegating to dotnet-architecture-review
dotnet-architecture-review reviews what the system still needs and how it could be simpler:
staleness, compatibility layers, scattering, abstraction fit, stale tests. dotnet-code-review
(dotnet-review) judges each piece of code on its own merits against the standards; this agent judges
the pieces against each other and against what uses them. Both are read-only and report; acting on a
finding is the invoking agent's job, after the user agrees.
Host adapter
Claude Code launches the bundled dotnet-architecture-review agent directly. Codex does not install
custom-agent registrations: there, launch the built-in read-only explorer and start its brief with
"Read <pluginRoot>/agents/dotnet-architecture-review.md and follow its Markdown body; ignore only the
Claude-specific YAML frontmatter." The canonical brief stays under agents/.
Step 0 — workspace readiness
Same gate as skills/dotnet-review/SKILL.md Step 0, and it matters more here: every finding this
agent makes is a usage claim, so a workspace that is not loaded turns live code into "stale" code.
Call workspace_status yourself before launching; take pluginRoot from it for the briefs.
Partitioning
Coarser than a code review — staleness and scattering only show across files:
- One project or one subsystem (a removed engine and its callers, a feature folder): one instance.
- A solution: one instance per project, or per large top-level folder of a big project. Keep a
production folder and its test folder in the same slice, so the
[tests]lens sees both sides. - After a change: diff mode with the baseline, one instance per cluster of changed folders.
Scopes are disjoint and stated as explicit paths.
What to tell each instance
- Scope and
pluginRoot(required); mode (scopeby default, ordiffwith its baseline). - Who consumes the code. The agent assumes a single user and no external consumers unless told otherwise. Say so if a library is published, an API has outside clients, or old files on disk must keep loading.
- Recorded decisions the agent cannot find itself (it has no
git): compatibility the user already chose to keep, families the user confirmed as capability, a decision log path.
Merging and acting
Concatenate by scope; collect Outside scope: lines; sum the totals. Then sort every finding by its
action class:
auto(behaviour-identical, low risk) — the consuming repo's policy decides whether these are applied without asking. Apply them throughdotnet-write, thendotnet buildand the tests.approve— present as one batch for the user to accept or decline item by item. Nothing is removed without a yes.ask— every backwards-compatibility layer and every uncertain capability verdict, as the question the agent phrased.
Present [gate] proposals (an analyzer rule to enable, a ratchet test) as approve items: once on, a
whole class of finding stops needing review. Report what was applied, what was approved, what was
declined, and record declined or kept items where the next run will see them (the agent's memory, or the repo's decision log), so they are not raised
again.
Where the report goes
.claude/dotnet-toolkit/review/<UTC-date>-<HHmmss>-architecture-<target>.md, the same git-ignored
folder dotnet-review uses, and answer inline. Not an Artifact unless the user asks.
What this agent will never do
Edit code, or propose removing a capability family. Like dotnet-code-review, its Write/Edit come
from memory: project and are limited by instruction to its memory namespace.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

