跳到正文
cccskills
免费在 GitHub 公开

dotnet-roslyn-analyzers

Authors Roslyn analyzers. DiagnosticAnalyzer, CodeFixProvider, CodeRefactoring, multi-version.

中文简介正在准备中。当前显示原文说明。

查看安装方法

包含的文件(1)

  • SKILL.md4.6 KB

SKILL.md(原文)

安装前可以查看交给 AI 代理的指令内容。

Roslyn Analyzer Hooks

Overview

Comprehensive Roslyn analyzer integration for dotnet-agent-harness providing real-time code analysis through agent hooks and enforced quality gates via git hooks.

Architecture

Layer 1: Agent-Level Hooks (Real-time)

  • Trigger: Post-edit on .cs files
  • Execution: Async with 60s timeout
  • Scope: Single file analysis
  • Output: JSON with violations + skill recommendations

Layer 2: Git Hooks (Commit/Push)

  • pre-commit: Staged files analysis + dotnet format
  • pre-push: Full solution build + tests + doc validation
  • Enforcement: Blocks on errors and warnings

Configuration

Environment Variables

# Skip all analyzer checks (default: false, analyzers run by default)
export DOTNET_AGENT_HARNESS_SKIP_ANALYZERS=true

# Configure timeout (default: 60 seconds)
export DOTNET_AGENT_HARNESS_ANALYZER_TIMEOUT=120

# Minimum severity to report (Error/Warning/Info)
export DOTNET_AGENT_HARNESS_ANALYZER_SEVERITY=Warning

# Execution mode (sync/async)
export DOTNET_AGENT_HARNESS_ANALYZER_MODE=async

Project-Level (.editorconfig)

[*.cs]
# Enable all analyzers
dotnet_analyzer_diagnostic.severity = warning

# Category-based configuration
dotnet_analyzer_diagnostic.category-security.severity = error
dotnet_analyzer_diagnostic.category-performance.severity = warning

# Specific rule overrides
dotnet_diagnostic.CA2007.severity = suggestion  # ConfigureAwait
dotnet_diagnostic.CA1816.severity = error       # GC.SuppressFinalize

Analyzer Packages

Essential (Always Enabled)

  • Microsoft.CodeAnalysis.NetAnalyzers - Built-in .NET analyzers
  • Roslynator.Analyzers - Refactoring and code improvements
  • Roslynator.CodeAnalysis.Analyzers - Code analysis rules
  • Roslynator.Formatting.Analyzers - Formatting rules

Optional

  • StyleCop.Analyzers - Style consistency (enable/disable via EnableStyleCop)
  • Meziantou.Analyzer - Performance analyzers (EnableMeziantouAnalyzer)

CI Only (High Performance Impact)

  • SonarAnalyzer.CSharp - Security and code smells (+522% build time)

Analyzer-to-Skill Routing

Analyzer CodeSkillDescription
CA2007dotnet-csharp-async-patternsDo not directly await a Task
CA2008dotnet-csharp-async-patternsTaskScheduler required
CA1816dotnet-gc-memoryGC.SuppressFinalize
CA2000dotnet-gc-memoryDispose objects before losing scope
CA1822dotnet-performance-patternsMark members as static
CA1860dotnet-performance-patternsAvoid Enumerable.Any()
CA2100dotnet-security-owaspSQL injection prevention
CA5350dotnet-security-owaspWeak cryptographic algorithms
CA1001dotnet-architecture-patternsIDisposable pattern
CA1063dotnet-architecture-patternsImplement IDisposable correctly

Full mappings in .rulesync/analyzer-to-skill.json

Git Hooks Installation

Automatic (Recommended)

# Run setup script
bash .githooks/setup.sh

Manual

# Copy hooks to .git/hooks/
cp .githooks/pre-commit .git/hooks/
cp .githooks/pre-push .git/hooks/
chmod +x .git/hooks/pre-commit .git/hooks/pre-push

Bypass Hooks

# Skip analyzer checks for this commit
DOTNET_AGENT_HARNESS_SKIP_ANALYZERS=true git commit -m "message"

# Bypass all hooks (not recommended)
git commit --no-verify -m "message"

Performance Considerations

ConfigurationBuild Time ImpactWhen to Use
NetAnalyzers only+15%Development (default)
+ Roslynator+98%Development with refactoring
+ StyleCop+49%Style enforcement
Full Suite (CI)+522%CI/CD pipelines only

Troubleshooting

Analysis Timeouts

Increase timeout:

export DOTNET_AGENT_HARNESS_ANALYZER_TIMEOUT=120

Memory Issues

For large solutions, disable heavy analyzers:

<PropertyGroup>
  <RunSonarAnalyzer>false</RunSonarAnalyzer>
</PropertyGroup>

False Positives

Disable specific rules in .editorconfig:

dotnet_diagnostic.CA1707.severity = none

References

评价

还没有评价。欢迎分享你的使用感受。

评论

无需登录即可发表。欢迎分享使用感受、提问,或说明在哪些环境下无法运行。

还没有评论。来写第一条吧。

提交后会立即公开。请勿填写邮箱、电话等个人信息。URL 最多 2 个。

0 / 1000 字

此表单受 reCAPTCHA 保护,适用 Google 的隐私权政策和服务条款。

同一仓库的技能

Patterns and techniques for evaluating and improving AI agent outputs.

中文简介正在准备中。当前显示原文说明。

rudironsoni/Synaxis22026年3月17日 更新

Comprehensive AI prompt engineering safety review and improvement prompt. Analyzes prompts for safety, bias, security vulnerabilities, and effectiveness while providing detailed improvement recommendations.

中文简介正在准备中。当前显示原文说明。

rudironsoni/Synaxis22026年3月17日 更新

Use when user requests research requiring multiple sources, comprehensive analysis, or synthesis across topics - technical research, domain knowledge gathering, market analysis, or learning about complex subjects

中文简介正在准备中。当前显示原文说明。

rudironsoni/Synaxis22026年3月17日 更新

deep-wiki

免费

AI-powered wiki generation for code repositories with commands, agents, and skills

中文简介正在准备中。当前显示原文说明。

rudironsoni/Synaxis22026年3月17日 更新

Use when building .NET 10 or C# 14 applications; when using minimal APIs, modular monolith patterns, or feature folders; when implementing HTTP resilience, Options pattern, Channels, or validation; when seeing outdated patterns like old extension method syntax

中文简介正在准备中。当前显示原文说明。

rudironsoni/Synaxis22026年3月17日 更新

Implements accessible .NET UI. SemanticProperties, ARIA, AutomationPeer, testing per platform.

中文简介正在准备中。当前显示原文说明。

rudironsoni/Synaxis22026年3月17日 更新

查看 rudironsoni 的全部技能

报告此技能的问题