Agent skill

Roslynator

by managedcode in managedcode/dotnet-skills

Use the open-source free Roslynator analyzer packages and optional CLI for .NET.

MITAuto-check passedDevelopment

Install Roslynator

skills CLI
$ npx skills add managedcode/dotnet-skills --skill roslynator -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install managedcode/dotnet-skills roslynator --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/managedcode/dotnet-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/catalog/Tools/Roslynator/skills/roslynator .claude/skills/roslynator && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
roslynator
GitHub stars
486
Token cost
~1.3k tokens
SKILL.md length
604 words
Files
5 (incl. references)
Skills in repo
81
Repo updated
First seen
Licence
MIT

At a glance

Use the open-source free Roslynator analyzer packages and optional CLI for .NET.

  • Works in 3 steps: Read the nearest AGENTS.md and confirm… → Run this skill's Workflow through the… → Return the Required Result Format with…
  • : Roslynator.Analyzers setup
  • SKILL.md covers Trigger On, Value, Do Not Use For and Inputs, plus 8 more sections
  • Calls dotnet and rg

What it does

Roslynator is an agent skill from managedcode/dotnet-skills. Use the open-source free Roslynator analyzer packages and optional CLI for .NET. USE FOR: Roslynator.Analyzers setup; Roslynator CLI checks or cleanup; C linting, static analysis, and code-fix automation. DO NOT USE FOR: overlapping analyzer packs with no consolidation plan; formatting-only work owned by another formatter. INVOKES: inspect the repository context, edit targeted files, and run relevant build, test, lint, or validation commands when changes are made.

Its SKILL.md is about 1.3k tokens, which your agent loads only when the skill is triggered. The skill folder holds 5 other files, including reference files (for example `manifest.json`, `references/config.md` and `references/roslynator.md`). Compatibility notes: Requires a .NET SDK-based repository; respects the repo's AGENTS.md commands first.

It sits in Development, covering Linting and formatting, Static analysis and SAST and Codebase knowledge for agents. It works with .NET and C#. The repository describes itself as: Installable .NET skill catalog and CLI for Codex, Claude Code, GitHub Copilot, and Gemini. The licence is MIT.

When your agent uses it

  • : Roslynator.Analyzers setup
  • Roslynator CLI checks
  • Static analysis
  • Code-fix automation

Example prompts

  • “/roslynator”

Requirements

  • Compatibility (from SKILL.md): Requires a .NET SDK-based repository; respects the repo's `AGENTS.md` commands first.

Workflow steps

3 steps, taken from the first numbered list in SKILL.md.

  1. Read the nearest AGENTS.md and confirm scope and constraints.
  2. Run this skill's Workflow through the Ralph Loop until outcomes are acceptable.
  3. Return the Required Result Format with concrete artifacts and verification evidence.

What it can do on your machine

Read from SKILL.md and the folder at commit 535dd55. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • dotnet
    • rg

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

  • Compatibility

    Requires a .NET SDK-based repository; respects the repo's `AGENTS.md` commands first.

    From compatibility in the SKILL.md frontmatter.

Context cost

Roslynator loads about 1.3k tokens when it runs, and up to ~8.5k if it reads all its reference files. Until then it costs about 121 tokens; SKILL.md has 604 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~121
When it runs · the whole SKILL.md, loaded when a task matches
~1.3k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~8.5k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from managedcode/dotnet-skills at commit 535dd55, republished under its MIT licence (© managedcode). 604 words, ~1,310 tokens.

Download SKILL.mdSave it as .claude/skills/roslynator/SKILL.md (or your agent's skills folder). This skill also uses 4 other files; get the full folder from GitHub.
name
roslynator
description
Use the open-source free `Roslynator` analyzer packages and optional CLI for .NET. USE FOR: Roslynator.Analyzers setup; Roslynator CLI checks or cleanup; C# linting, static analysis, and code-fix automation. DO NOT USE FOR: overlapping analyzer packs with no consolidation plan; formatting-only work owned by another formatter. INVOKES: inspect the repository context, edit targeted files, and run relevant build, test, lint, or validation commands when changes are made.
compatibility
Requires a .NET SDK-based repository; respects the repo's `AGENTS.md` commands first.

Roslynator

Trigger On

  • the repo uses or wants Roslynator.Analyzers
  • the team wants Roslynator CLI or extra Roslyn-based rules
  • the user asks about C# linting, static analysis, code cleanup, or unused code

Value

  • produce a concrete project delta: code, docs, config, tests, CI, or review artifact
  • reduce ambiguity through explicit planning, verification, and final validation skills
  • leave reusable project context so future tasks are faster and safer

Do Not Use For

  • repos that already have overlapping analyzer packs with no consolidation plan
  • formatting-only work when the repo already standardized on dotnet format or CSharpier

Inputs

  • the nearest AGENTS.md
  • current analyzer packages
  • .editorconfig

Quick Start

  1. Read the nearest AGENTS.md and confirm scope and constraints.
  2. Run this skill's Workflow through the Ralph Loop until outcomes are acceptable.
  3. Return the Required Result Format with concrete artifacts and verification evidence.

Workflow

  1. Prefer the NuGet analyzer packages for build-enforced checks.
  2. Use the CLI when the repo needs one of these flows explicitly:
    • analyze
    • fix
    • find-unused
    • format
  3. Build first when Roslynator needs compiled context.
  4. Configure rule severity and Roslynator behavior in .editorconfig.
  5. Avoid duplicating the same rules across multiple analyzer packs without a severity plan.
  6. Treat CLI auto-fix as a controlled change:
    • run it on a bounded target first
    • rebuild
    • rerun tests

Bootstrap When Missing

If Roslynator is not configured yet:

  1. Detect current state:
    • rg -n "Roslynator\\.Analyzers" -g '*.csproj' .
    • rg --files -g '.config/dotnet-tools.json'
    • dotnet tool list --local
    • dotnet tool list --global
    • command -v roslynator
  2. Choose the install path deliberately:
    • analyzer package: dotnet add PROJECT.csproj package Roslynator.Analyzers
    • optional CLI: dotnet new tool-manifest (if missing) and dotnet tool install roslynator.dotnet.cli
  3. Configure ownership in root .editorconfig so Roslynator does not fight SDK analyzers, StyleCop, or Meziantou.
  4. If the CLI is adopted, add exact commands in AGENTS.md and CI, such as:
    • dotnet tool run roslynator analyze SOLUTION_OR_PROJECT
    • dotnet tool run roslynator fix SOLUTION_OR_PROJECT
  5. Run dotnet build SOLUTION_OR_PROJECT and the selected Roslynator command, then return status: configured or status: improved.
  6. If the repo wants only the current analyzer baseline and no Roslynator-specific CLI workflow, return status: not_applicable.
Show full SKILL.md (254 more words)Show less

Deliver

  • Roslynator package or CLI setup that fits the repo
  • explicit ownership of rule severity
  • repeatable commands for analyze, fix, or unused-code workflows when the repo adopts them

Validate

  • Roslynator adds value beyond the current analyzer baseline
  • CI commands remain reviewable and reproducible
  • the repo is not confusing Roslynator CLI with the analyzer package itself

Ralph Loop

Use the Ralph Loop for every task, including docs, architecture, testing, and tooling work.

  1. Plan first (mandatory):
    • analyze current state
    • define target outcome, constraints, and risks
    • write a detailed execution plan
    • list final validation skills to run at the end, with order and reason
  2. Execute one planned step and produce a concrete delta.
  3. Review the result and capture findings with actionable next fixes.
  4. Apply fixes in small batches and rerun the relevant checks or review steps.
  5. Update the plan after each iteration.
  6. Repeat until outcomes are acceptable or only explicit exceptions remain.
  7. If a dependency is missing, bootstrap it or return status: not_applicable with explicit reason and fallback path.
Required Result Format
  • status: complete | clean | improved | configured | not_applicable | blocked
  • plan: concise plan and current iteration step
  • actions_taken: concrete changes made
  • validation_skills: final skills run, or skipped with reasons
  • verification: commands, checks, or review evidence summary
  • remaining: top unresolved items or none

For setup-only requests with no execution, return status: configured and exact next commands.

Load References

Example Requests

  • "Add Roslynator analyzers."
  • "Use Roslynator CLI in CI."
  • "Find unused code with Roslynator."
  • "Auto-fix Roslynator issues in this solution."

© managedcode, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 4 other files (references) in catalog/Tools/Roslynator/skills/roslynator of managedcode/dotnet-skills.

  • SKILL.md
  • manifest.json
  • references/config.md
  • references/roslynator.md
  • references/rules.md

Open the folder on GitHubat commit 535dd55

Compare with similar skills

Roslynator next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Roslynator compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Roslynator this skillmanagedcode/dotnet-skills486—~1.3kAutomated safety check: PassMIT
Git HooksProrise-cool/Claude-Code-Multi-Agent305—~3.6kAutomated safety check: NotesNone
Precheckayutaz/piper-plus218—~647Automated safety check: PassMIT
Mcaf Dotnet Csharpiermanagedcode/Storage138—~961Automated safety check: PassMIT
Mcaf Dotnet Roslynatormanagedcode/Storage138—~1.2kAutomated safety check: PassMIT
Find Untested Sourcesdotnet/skills5.6k1 repos~3.3kAutomated safety check: PassMIT

Similar skills

  • Git Hooks

    Prorise-cool/Claude-Code-Multi-Agent

    Central authority on git hook implementations, modern best practices, and tooling for .NET/C, JavaScript/TypeScript, Python, and polyglot repositories.

    305 GitHub stars~3.6k tokensUpdated 21 days ago
    DevelopmentAuto-check: notes
  • Precheck

    ayutaz/piper-plus

    PR 作成前の lint + format + test 一括実行。引数で scope (python/rust/cs/go/js/cpp/all) を指定可能。未指定なら git diff から自動判定。

    218 GitHub stars~647 tokensUpdated yesterday
    DevelopmentAuto-check passed
  • Mcaf Dotnet Csharpier

    managedcode/Storage

    Use the open-source free CSharpier formatter for C and XML. An agent skill from managedcode/Storage.

    138 GitHub stars~961 tokensUpdated today
    Agent WorkflowsAuto-check passed
  • Mcaf Dotnet Roslynator

    managedcode/Storage

    Use the open-source free Roslynator analyzer packages and optional CLI for .NET.

    138 GitHub stars~1.2k tokensUpdated today
    Agent WorkflowsAuto-check passed
  • Official

    Statically pairs source files with test files to list code that no test references, using Roslyn for C# or tree-sitter for many languages, with no build.

    5.6k GitHub starsUsed in 1 repo~3.3k tokens
    Testing & QAAuto-check passed
  • Speckit Constitution

    WeihanLi/WeihanLi.Common

    Create or update the project constitution from interactive or provided principle inputs, ensuring all dependent templates stay in sync.

    242 GitHub starsUsed in 11 repos~2.1k tokens
    DevelopmentAuto-check passed

More from managedcode/dotnet-skills

All 81 skills in this repo
  • Analyzer Config

    managedcode/dotnet-skills

    Use a repo-root .editorconfig to configure free .NET analyzer and style rules.

    486 GitHub stars~1.3k tokensUpdated today
    Auto-check passed
  • Archunitnet

    managedcode/dotnet-skills

    Use the open-source free ArchUnitNET library for architecture rules in .NET tests.

    486 GitHub stars~1.2k tokensUpdated today
    Auto-check passed
  • Aspire

    managedcode/dotnet-skills

    Build, upgrade, and operate Aspire 13.5.x C or TypeScript application hosts with the current CLI, AppHost, ServiceDefaults, integrations, dashboard, testing, MCP, and deployment patterns for…

    486 GitHub stars~3.6k tokensUpdated today
    Auto-check passed
  • Aspnet Core

    managedcode/dotnet-skills

    Build, debug, modernize, or review ASP.NET Core applications with correct hosting, middleware, security, configuration, logging, and deployment patterns on current .NET.

    486 GitHub stars~2.1k tokensUpdated today
    Auto-check passed
  • Asynkron Profiler

    managedcode/dotnet-skills

    Use the open-source free Asynkron.Profiler dotnet tool for CLI-first CPU, allocation, exception, contention, and heap profiling of .NET commands or existing trace artifacts.

    486 GitHub stars~1.7k tokensUpdated today
    Auto-check passed
  • Azure Functions

    managedcode/dotnet-skills

    Build, review, or migrate Azure Functions in .NET with correct execution model, isolated worker setup, bindings, DI, and Durable Functions patterns.

    486 GitHub stars~2.6k tokensUpdated today
    Auto-check passed

Works with

Questions about Roslynator

What does Roslynator do?

Use the open-source free Roslynator analyzer packages and optional CLI for .NET. Roslynator is an agent skill from managedcode/dotnet-skills.NET.

When should I use Roslynator?

Roslynator fits situations like: : Roslynator.Analyzers setup; roslynator CLI checks; static analysis; code-fix automation.

How do I install Roslynator in Claude Code?

Run `npx skills add managedcode/dotnet-skills --skill roslynator -a claude-code`. Or copy the skill folder (catalog/Tools/Roslynator/skills/roslynator in managedcode/dotnet-skills) into .claude/skills/roslynator in your project. Claude Code loads it when a task matches its description.

How do I install Roslynator in Codex?

Run `npx skills add managedcode/dotnet-skills --skill roslynator -a codex`. Or copy the skill folder (catalog/Tools/Roslynator/skills/roslynator in managedcode/dotnet-skills) into .agents/skills/roslynator in your project. Codex loads it when a task matches its description.

Can I use Roslynator in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add managedcode/dotnet-skills --skill roslynator -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/roslynator, .gemini/skills/roslynator, .github/skills/roslynator and .opencode/skills/roslynator in your project.

What does Roslynator need to run?

Going by SKILL.md and its folder, Roslynator needs the command-line tools its instructions call (dotnet and rg). Compatibility (from SKILL.md): Requires a .NET SDK-based repository; respects the repo's `AGENTS.md` commands first..

Does Roslynator access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Roslynator safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Roslynator use?

Roslynator is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Roslynator use?

About 1.3k tokens (SKILL.md is roughly 5.2k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 7.2k tokens, read only when the agent opens those files.

What are the alternatives to Roslynator?

Skills that share tags, products or a category with Roslynator: Git Hooks (Prorise-cool/Claude-Code-Multi-Agent, 305 stars), Precheck (ayutaz/piper-plus, 218 stars), Mcaf Dotnet Csharpier (managedcode/Storage, 138 stars) and Mcaf Dotnet Roslynator (managedcode/Storage, 138 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Roslynator?

managedcode (a GitHub organization) maintains it in managedcode/dotnet-skills, which has 486 GitHub stars. The repository holds 81 skills in this directory. The repository was last updated on October 7, 2026.

Source: managedcode/dotnet-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.