Loading skill
Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Use SonarJS-derived rules in .NET repositories that ship JavaScript or TypeScript frontends and need deeper bug-risk, code-smell, or cognitive-complexity checks than a minimal ESLint baseline. USE FOR: SonarQube, SonarCloud, or eslint-plugin-sonarjs setups; frontend code smells; cognitive complexity and deeper bug-risk rules. DO NOT USE FOR: lightweight base lint setups with no extra smell or complexity rules; teams that reject Sonar tooling. INVOKES: inspect the repository context, edit targete
.claude/skills/managedcode-sonarjs/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-13 | ✗→✓ | ▲ Improved | 8% | 0% |
| case-04 | ✗→✓ | ▲ Improved | 4% | 0% |
| case-06 | ✗→✓ | ▲ Improved | 43% | 0% |
| case-08 | ✗→✓ | ▲ Improved | 44% | 0% |
| case-14 | ✗→✓ | ▲ Improved | 15% | 0% |
eslint-plugin-sonarjsAGENTS.mdpackage.jsonmermaidflowchart LR A["Need Sonar-style checks in a .NET repo frontend"] --> B{"Local developer loop or existing server gate?"} B -->|Local| C["Install eslint-plugin-sonarjs"] C --> D["Run through the normal eslint command"] B -->|Existing SonarQube or SonarCloud gate| E["Keep full analysis in the existing scanner pipeline"] D --> F["Phase rules and fix code"] E --> F
eslint-plugin-sonarjs13.6 adds rules for shallow-clone mutation, Vue class/mixin and state mutation, native alternatives to jQuery, Testing Library disappearance and synchronous-query patterns, Vitest vi.mock scope, and Playwright networkidle usage.rg --files -g 'package.json' -g 'eslint.config.*' -g '.eslintrc*'rg -n '"eslint-plugin-sonarjs"|"sonar"|"sonarqube"|"sonarcloud"' .npm install --save-dev eslint-plugin-sonarjsnpx eslint .status: configured if SonarJS-derived checks now have explicit ownership, or status: improved if an existing setup was tightened.status: not_applicable when the repo explicitly chooses a purely OSS lint baseline without Sonar-based extensions.sonarjs CLI from this repo; local developer use should go through ESLint with eslint-plugin-sonarjs.status: not_applicable with a reason.status: complete | clean | improved | configured | not_applicable | blockedplan: concise plan and current stepactions_taken: concrete changes madeverification: commands, checks, or review evidenceremaining: unresolved items or noneOther measured skills in the registry, with their headline benchmark lift.