CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

add-lint-rule

Add or change lint rules and static analysis in dd-trace-dotnet. Use when adding a lint rule, Roslyn analyzer, diagnostic, BannedSymbols entry, StyleCop/editorconfig severity, CppCheck suppression, or Clang-Tidy check, or when the user asks how to enforce a coding convention at compile time.

Quality

87%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Passed

No findings from the security scan

SKILL.md
Quality
Evals
Security

Quality

Content

71%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

A strong, opinionated policy skill: every line is repo-specific and actionable, with a concrete classification-first workflow, severity rules, and mechanism guidance for both managed and native code. The main defects are the missing referenced reference.md (breaking both progressive disclosure and the promised copy-paste templates), some repetition of the severity/scope rules, and the absence of an explicit error-recovery loop in the implementation workflow.

Suggestions

Include the referenced reference.md in the bundle (or inline a minimal analyzer/test template): the body points to it twice — "Read reference.md for file layout, ID allocation, and copy-paste templates" and "Follow reference.md: analyzer, tests, optional code fix" — but no such file exists, leaving the most executable content unreachable.

Add an explicit feedback loop to the §5 workflow, e.g. what to do when CSharpAnalyzerVerifier tests or the CompileManagedSrc build fail after enabling the new Error diagnostic.

Consolidate the repeated statements of the Error-only severity rule and core-only scope (intro, §3/§4, checklist) into one authoritative section plus a one-line checklist recap to reduce token cost.

DimensionReasoningScore

Conciseness

Dense, repo-specific policy with no explanation of concepts Claude already knows, but the Error/Info severity rule is restated three times (intro, §4, checklist) and the core-scope/no-new-CI rules are similarly repeated across intro, §3/§5, and the checklist. Matches the 4 anchor (efficient, minor trimming possible); not 5 due to the repetition, not 3 since nothing is generic padding.

4 / 5

Actionability

Concrete throughout: exact paths ("tracer/src/Datadog.Trace.Tools.Analyzers/", "profiler/cppcheck-suppressions.txt"), exact settings ("defaultSeverity: DiagnosticSeverity.Error", "OutputItemType=\"Analyzer\""), and named commands/verifiers ("CSharpAnalyzerVerifier", "CompileManagedSrc"). Not 5: the "copy-paste templates" are delegated to reference.md, which is absent from the bundle, and full command lines are not given; not 3 because the in-body guidance is specific and executable.

4 / 5

Workflow Clarity

§5 is a clear 6-step sequence with verification checkpoints ("Tests: ... via CSharpAnalyzerVerifier", "Compile: CompileManagedSrc or BuildAndRunManagedUnitTests with a filter") and a cleanup strategy (same PR or stacked PRs). Not 5: no explicit error-recovery loop for when the verifier or compile fails; not 3 because checkpoints are present and explicit.

4 / 5

Progressive Disclosure

Sections are well organized and the single reference is clearly signaled and one level deep ("Read reference.md for file layout, ID allocation, and copy-paste templates"), but reference.md does not exist in the bundle (no references/ directory or such file), so the promised templates and ID-allocation detail are unreachable. Not 4: a dangling reference is more than a minor organization gap; not 2: the body itself is well structured and the reference clearly signaled.

3 / 5

Total

15

/

20

Passed

Description

100%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

An exemplary description: third-person voice, concrete actions, explicit "Use when" triggers covering all sub-mechanisms, and tight repo scoping that eliminates conflict risk. Both what and when are answered with specific, natural trigger phrases.

DimensionReasoningScore

Specificity

"Add or change lint rules and static analysis" plus the enumeration "Roslyn analyzer, diagnostic, BannedSymbols entry, StyleCop/editorconfig severity, CppCheck suppression, or Clang-Tidy check" lists multiple concrete, comprehensive actions across managed and native enforcement. Not 4: coverage of every relevant mechanism leaves no minor gaps.

5 / 5

Completeness

Explicitly answers both: what ("Add or change lint rules and static analysis in dd-trace-dotnet") and when ("Use when adding a lint rule, Roslyn analyzer, ... or when the user asks how to enforce a coding convention at compile time"). Not 4: both halves are explicit and concrete, matching the top anchor.

5 / 5

Trigger Term Quality

Natural user phrases are comprehensively covered: "lint rule", "static analysis", "analyzer", "diagnostic", "enforce a coding convention at compile time", with tool-name synonyms (Roslyn, StyleCop, CppCheck, Clang-Tidy). Not 4: synonym coverage (lint / static analysis / compile-time enforcement) is thorough for this domain.

5 / 5

Distinctiveness Conflict Risk

Scoped to a specific repo ("dd-trace-dotnet") with tool-specific triggers, creating a clear niche with minimal conflict risk against generic linting or code-review skills. Not 4: the repo scoping plus named tools make mis-triggering very unlikely.

5 / 5

Total

20

/

20

Passed

Validation

93%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 15 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

relative_links

Relative link issues: 2 missing

Warning

Total

15

/

16

Passed

Repository

DataDog/dd-trace-dotnet

Path

.claude/skills/add-lint-rule/SKILL.md

Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.