Receber por email
← Voltar para o catálogo

lint-dotnet

Run .NET architecture linter to check for MSBuild/CPM violations

367estrelas
Atualizado há 4 meses

Ver no GitHub ↗

Como adicionar

/plugin marketplace add aiskillstore/marketplace

O comando exato pode variar conforme o repositório. Confira o README no GitHub.

Para o autor da skill

Cole no README do seu repo

Mostra que sua skill está catalogada na Skillteca, gera backlink e tráfego rastreável.

[![Skillteca](https://www.skillteca.com.br/api/badge/lint-dotnet/svg)](https://www.skillteca.com.br/skills/lint-dotnet)

Skills relacionadas

Ver todas de Segurança →

Alerta por categoria

Receba novas skills de Segurança toda segunda

1 email curto, só com as skills novas de Segurança. 4 minutos de leitura, sem spam, cancela com 1 clique.

Você confirma o email no primeiro envio. Sem spam. Cancela com 1 clique.

Ler descrição completa

/lint-dotnet

Run the .NET architecture linter on demand to check for violations.

Execution

bash "${CLAUDE_PLUGIN_ROOT}/scripts/lint-dotnet.sh" .

Output Format

RULE_X|file
  line_number: violation details

Rules

| Rule | Catches | Fix | |------|---------|-----| | RULE_A | Hardcoded Version="1.2.3" in Directory.Packages.props | Use $(VariableName) and define in Version.props | | RULE_B | Version.props imported outside allowed files | Remove import. Only DPP or eng/DBP allowed. | | RULE_C | Version.props not a symlink (in consumer repos) | Recreate symlink, never copy the file | | RULE_G | <PackageReference Version="..."> in .csproj | Remove Version attr, use CPM |

Allowed Version.props Import Owners

| File | Purpose | |------|---------| | Directory.Packages.props | CPM-enabled projects | | eng/Directory.Build.props | CPM-disabled projects | | src/Sdk//Sdk.props | SDK entry points (MSBuild auto-imports these) | | src/common/.props | Shared SDK infrastructure |

All other files importing Version.props = violation.

Clean Output

CLEAN|All rules passed

No violations found. Safe to proceed.

Variable Naming Convention

For unknown packages, generate variable name:

  • Some.Package.Name -> SomePackageNameVersion
  • Remove dots and dashes, append "Version"
Compartilhar X LinkedIn