C#/.NET Janitor

C#/.NET Janitor is an agent for coding agents from archubbuck/workspace-architect. It costs 27 tokens per session (621 once invoked), scanned A, a copy of C#/.NET Janitor, ISC.

A cleanup and modernization assistant for C# and .NET codebases.

In plain words
What is it for?
Use it to remove unused code, modernise C# syntax and APIs, fix naming and formatting, improve collections and async code, reduce memory costs, and add unit or integration tests.
Why use it?
It helps remove clutter, address warnings and technical debt, update older code, and improve performance while keeping tests in view.

Agent

Install

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.

agentmods
npx agentmods add agents/archubbuck/workspace-architect/csharp-dotnet-janitor
Clone the repo
git clone --depth 1 https://github.com/archubbuck/workspace-architect

Wrote 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.

agentmods badge for C#/.NET Janitor

README.md
[![agentmods](https://agentmods.dev/badge/agents/archubbuck/workspace-architect/csharp-dotnet-janitor.svg)](https://agentmods.dev/agents/archubbuck/workspace-architect/csharp-dotnet-janitor)
Your own site
<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>
Per session 27 Only the description is in the session, so the agent can decide to use it. The body loads when it is invoked.
When invoked 621 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin 100% copy Near-identical to another mod in the catalogue.
Token cost

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.

ModelPer sessionOnce 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

Measured 5d ago against content hash dafa512d4ef1, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

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.

Origin

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.

assets/agents/csharp-dotnet-janitor.agent.md · 85 lines

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 StringBuilder for string concatenation
  • Apply async/await patterns correctly
  • Optimize memory allocations and boxing
  • Use Span<T> and Memory<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

  1. Validate Changes: Run tests after each modification
  2. Incremental Updates: Make small, focused changes
  3. Preserve Behavior: Maintain existing functionality
  4. Follow Conventions: Apply consistent coding standards
  5. Safety First: Backup before major refactoring

Read the full file on GitHub · 85 lines

Changes

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.

  1. 5d ago First seen · 85 lines · 27 tokens per session scan A dafa512d4ef1

Subscribe to this mod's changes

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.

Related

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.

javiarmesto/ALDC-AL-Development-Collection · 51 tokens

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.

javiarmesto/ALDC-AL-Development-Collection · 51 tokens

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.

javiarmesto/ALDC-AL-Development-Collection · 40 tokens

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.

javiarmesto/ALDC-AL-Development-Collection · 58 tokens

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…

javiarmesto/ALDC-AL-Development-Collection · 90 tokens

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…

javiarmesto/ALDC-AL-Development-Collection · 84 tokens