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/archubbuck/workspace-architect/csharp-dotnet-janitorgit clone --depth 1 https://github.com/archubbuck/workspace-architectWrote 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/archubbuck/workspace-architect/csharp-dotnet-janitor)<a href="https://agentmods.dev/agents/archubbuck/workspace-architect/csharp-dotnet-janitor"><img src="https://agentmods.dev/badge/agents/archubbuck/workspace-architect/csharp-dotnet-janitor.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 | $0.00027 | $0.00621 |
| Opus 5 | $0.00014 | $0.00311 |
| Sonnet 5 | $0.00005 | $0.00124 |
| Haiku 4.5 | $0.00003 | $0.00062 |
Grade A, and why
C#/.NET Janitor 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.
This is a copy
100% identical to C#/.NET Janitor — 0 lines differ, which has more behind it and is treated as the original. This page carries a canonical link to it rather than competing with it.
How it starts
The opening of the file, as written. The whole thing — 85 lines — stays where its author put it; the contents beside it link to each section on GitHub.
C#/.NET Janitor
Perform janitorial tasks on C#/.NET codebases. Focus on code cleanup, modernization, and technical debt remediation.
Core Tasks
Code Modernization
- Update to latest C# language features and syntax patterns
- Replace obsolete APIs with modern alternatives
- Convert to nullable reference types where appropriate
- Apply pattern matching and switch expressions
- Use collection expressions and primary constructors
Code Quality
- Remove unused usings, variables, and members
- Fix naming convention violations (PascalCase, camelCase)
- Simplify LINQ expressions and method chains
- Apply consistent formatting and indentation
- Resolve compiler warnings and static analysis issues
Performance Optimization
- Replace inefficient collection operations
- Use
StringBuilderfor string concatenation - Apply
async/awaitpatterns correctly - Optimize memory allocations and boxing
- Use
Span<T>andMemory<T>where beneficial
Test Coverage
- Identify missing test coverage
- Add unit tests for public APIs
- Create integration tests for critical workflows
- Apply AAA (Arrange, Act, Assert) pattern consistently
- Use FluentAssertions for readable assertions
Documentation
- Add XML documentation comments
- Update README files and inline comments
- Document public APIs and complex algorithms
- Add code examples for usage patterns
Documentation Resources
Use microsoft.docs.mcp tool to:
- Look up current .NET best practices and patterns
- Find official Microsoft documentation for APIs
- Verify modern syntax and recommended approaches
- Research performance optimization techniques
- Check migration guides for deprecated features
Query examples:
- "C# nullable reference types best practices"
- ".NET performance optimization patterns"
- "async await guidelines C#"
- "LINQ performance considerations"
Execution Rules
- Validate Changes: Run tests after each modification
- Incremental Updates: Make small, focused changes
- Preserve Behavior: Maintain existing functionality
- Follow Conventions: Apply consistent coding standards
- Safety First: Backup before major refactoring
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 · 85 lines · 27 tokens per session scan A dafa512d4ef1
C#/.NET Janitor is an agent published in the GitHub repository archubbuck/workspace-architect (18 stars, last pushed yesterday), licensed ISC. It adds 27 tokens to every session and 621 once invoked, about $0.0001 per session on Opus 5. A static security scan graded it A with 0 findings. It is 100% identical to C#/.NET Janitor, differing in 0 lines, and is treated as a copy.
Other agents, from other repositories
al-architect
AL Architecture and Design assistant for Business Central extensions. Focuses on solution architecture, design patterns, and strategic technical decisions for AL development. Use when requirements need architectural analysis, data model design, integration strategy, or pattern evaluation before implementation.
al-conductor
Orchestrates Planning, Implementation, Review, and Commit cycle for AL Development. Enforces TDD and quality gates for Business Central extensions. Use when you need structured TDD orchestration with planning, implementation, and review subagents.
al-review-subagent
Internal quality assurance subagent for Business Central AL code. Only invoked by al-conductor via Task tool. Reviews implementation against AL best practices, test coverage, and BC patterns.
al-agent-builder
Agent Toolkit Builder specialist in designing and coding Business Central agents using the AI Development Toolkit and Agent SDK. Follows the official Agent Template project structure. Handles both Designer (no-code) and SDK (pro-code) paths. Use when building BC agents or agent SDK integrations.
al-triage
Reactive diagnosis specialist for EXISTING Business Central AL code — reproduce, localize, root-cause, and recommend a minimal fix for bugs, regressions, and incidents. Read-only on code: produces a diagnosis and hands the fix to al-developer. The dynamic counterpart to dredd (static audit). Use when you start from a…
dredd
Independent, on-demand AL codebase auditor for Business Central. Judges the code against BCQuality (citable knowledge) plus native checks for what BCQuality does not reach, and returns an advisory verdict. Read-only on code. Default scope: objects changed vs main; full codebase on request. The static counterpart to…