Agent skill

Eslint

by managedcode in managedcode/dotnet-skills

Use ESLint in .NET repositories that ship JavaScript, TypeScript, React, or other Node-based frontend assets.

MITAuto-check passedDevelopment

Install Eslint

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

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

GitHub CLI
$ gh skill install managedcode/dotnet-skills eslint --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/ESLint/skills/eslint .claude/skills/eslint && 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
eslint
GitHub stars
486
Token cost
~1.5k tokens
SKILL.md length
733 words
Files
2
Skills in repo
81
Repo updated
First seen
Licence
MIT

At a glance

Use ESLint in .NET repositories that ship JavaScript, TypeScript, React, or other Node-based frontend assets.

  • Works in 7 steps: Detect ownership first → Keep ESLint as the semantic lint owner… → Prefer checked-in local devDependencies… → …
  • : the repo has package.json
  • SKILL.md covers Trigger On, Do Not Use For, Inputs and Workflow, plus 7 more sections
  • Calls eslint, rg and npx

What it does

Eslint is an agent skill from managedcode/dotnet-skills. Use ESLint in .NET repositories that ship JavaScript, TypeScript, React, or other Node-based frontend assets. USE FOR: the repo has package.json, eslint.config., .eslintrc, tsconfig.json, or JS/TS/React frontend files; the user asks for JavaScript or TypeScript linting, React rule. DO NOT USE FOR: CSS ownership by itself; route that to stylelint; HTML-only checks on static output; route that to htmlhint. INVOKES: inspect the repository context, edit targeted files, and run relevant build, test, lint, or…

Its SKILL.md is about 1.5k tokens, which your agent loads only when the skill is triggered. The skill folder holds 1 other file (for example `manifest.json`). Compatibility notes: Requires a .NET repository with Node-based frontend assets such as package.json, ClientApp/, src/, or separate web frontend folders.

It sits in Development, covering Linting and formatting. It works with ESLint, TypeScript, React and JavaScript. 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

  • : the repo has package.json
  • JS/TS/React frontend files
  • The user asks for JavaScript
  • TypeScript linting

Example prompts

  • “/eslint”

Requirements

  • Node.js
  • Compatibility (from SKILL.md): Requires a .NET repository with Node-based frontend assets such as `package.json`, `ClientApp/`, `src/`, or separate web frontend folders.

Workflow steps

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

  1. Detect ownership first
  2. Keep ESLint as the semantic lint owner for JS and TS files when the repo needs rich plugin ecosystems or framework-specific rules.
  3. Prefer checked-in local devDependencies over global installs so CI and local runs match.
  4. Add narrow scripts to package.json, for example
  5. Scope auto-fix runs before broad rewrites
  6. If the repo wants type-aware rules, verify the target files are covered by the intended tsconfig.json before enabling heavier rules.
  7. Do not hide noise by mass-disabling rules. Fix code, narrow scope, or phase severity deliberately.

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:

    • eslint
    • rg
    • npx
    • npm

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

  • Network

    No URLs in SKILL.md. Its commands use npx and npm, which can reach the network depending on how they are called.

    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 repository with Node-based frontend assets such as `package.json`, `ClientApp/`, `src/`, or separate web frontend folders.

    From compatibility in the SKILL.md frontmatter.

Context cost

Eslint loads about 1.5k tokens when it runs. Until then it costs about 140 tokens; SKILL.md has 733 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~140
When it runs · the whole SKILL.md, loaded when a task matches
~1.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). 733 words, ~1,501 tokens.

Download SKILL.mdSave it as .claude/skills/eslint/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.
name
eslint
description
Use ESLint in .NET repositories that ship JavaScript, TypeScript, React, or other Node-based frontend assets. USE FOR: the repo has package.json, eslint.config.*, .eslintrc*, tsconfig.json, or JS/TS/React frontend files; the user asks for JavaScript or TypeScript linting, React rule. DO NOT USE FOR: CSS ownership by itself; route that to stylelint; HTML-only checks on static output; route that to htmlhint. 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 repository with Node-based frontend assets such as `package.json`, `ClientApp/`, `src/`, or separate web frontend folders.

ESLint for Frontend Assets in .NET Repositories

Trigger On

  • the repo has package.json, eslint.config.*, .eslintrc*, tsconfig.json, or JS/TS/React frontend files
  • the user asks for JavaScript or TypeScript linting, React rule enforcement, import hygiene, or unsafe frontend patterns
  • CI should fail on frontend lint findings instead of relying on editor-only feedback

Do Not Use For

  • CSS ownership by itself; route that to stylelint
  • HTML-only checks on static output; route that to htmlhint
  • repos that intentionally standardized on Biome as the only JS or TS formatter-linter, unless migration or comparison is explicitly requested

Inputs

  • the nearest AGENTS.md
  • package.json
  • eslint.config.* or .eslintrc*
  • tsconfig.json when TypeScript or type-aware rules are involved

Workflow

  1. Detect ownership first:
    • existing ESLint config
    • package manager and workspace layout
    • framework packages such as React, Next.js, Vue, or plain TypeScript
  2. Keep ESLint as the semantic lint owner for JS and TS files when the repo needs rich plugin ecosystems or framework-specific rules.
  3. Prefer checked-in local devDependencies over global installs so CI and local runs match.
  4. Add narrow scripts to package.json, for example:
    • lint: eslint .
    • lint:fix: eslint . --fix
  5. Scope auto-fix runs before broad rewrites:
    • fix a bounded folder or glob first
    • rerun the linter
    • rerun the frontend build or tests if the repo has them
  6. If the repo wants type-aware rules, verify the target files are covered by the intended tsconfig.json before enabling heavier rules.
  7. Do not hide noise by mass-disabling rules. Fix code, narrow scope, or phase severity deliberately.

Current Upstream Notes

  • ESLint v10.9.1 includes the v10.8.1 autofix and false-positive corrections and fixes no-loss-of-precision so numeric literals with a trailing decimal point are not reported incorrectly. Re-run focused rule fixtures before retaining a suppression for that syntax.
  • Re-run the real lint suite and autofix snapshots before accepting churn, especially in semicolon-free code or generated output. Keep the v10.8.0 flat-config type exports and formatter changes in mind when updating tooling integrations.
  • Current docs clarify parser option precedence over languageOptions and document the v9/v10 migration codemods; review flat-config migrations that mix legacy parser settings with new config shapes.

Bootstrap When Missing

  1. Detect current state:
    • rg --files -g 'package.json' -g 'eslint.config.*' -g '.eslintrc*' -g 'tsconfig.json'
    • rg -n '"eslint"|"@typescript-eslint"|"eslint-plugin-" --glob 'package.json' .
  2. Prefer a repo-local install:
    • npm install --save-dev eslint
  3. Add framework-specific plugins only when the repo actually uses the framework.
  4. Create or refine eslint.config.js or eslint.config.mjs instead of leaving setup implicit.
  5. Add repeatable commands to AGENTS.md and package.json, then verify with:
    • npx eslint .
    • npx eslint . --fix
  6. Return status: configured if the repo now has a working lint gate, or status: improved if existing setup was tightened.
  7. Return status: not_applicable only when another documented tool already owns JS or TS linting and migration is not requested.
Show full SKILL.md (279 more words)Show less

Handle Failures

  • Parsing errors on TS or JSX usually mean the config or parser stack does not match the file set; verify framework plugins and tsconfig.json coverage first.
  • Definition for rule ... was not found usually means a missing plugin package or a config targeting a different ESLint major version.
  • File ignored because of a matching ignore pattern usually means the glob is too broad or ignores were left stale after a folder move.
  • Huge warning floods should be handled in phases with bounded globs, not by downgrading everything to off.

Deliver

  • explicit ESLint ownership for JS or TS frontend assets
  • checked-in commands for lint and lint:fix
  • config decisions that match the repo's real frontend stack

Validate

  • ESLint is running from repo-local dependencies
  • rule ownership is not ambiguous versus Biome or other linters
  • the chosen globs match the real frontend folders
  • fixes were verified with the repo's normal frontend build or test pass when available

Ralph Loop

  1. Plan: analyze current state, target outcome, constraints, and risks.
  2. Execute one step and produce a concrete delta.
  3. Review the result and capture findings.
  4. Apply fixes in small batches and rerun checks.
  5. Update the plan after each iteration.
  6. Repeat until outcomes are acceptable.
  7. If a dependency is missing, bootstrap it or return status: not_applicable with a reason.
Required Result Format
  • status: complete | clean | improved | configured | not_applicable | blocked
  • plan: concise plan and current step
  • actions_taken: concrete changes made
  • verification: commands, checks, or review evidence
  • remaining: unresolved items or none

Example Requests

  • "Add ESLint to the React frontend in this ASP.NET Core repo."
  • "Make JS and TS lint failures block CI."
  • "Fix the current ESLint warnings without hiding them."

© 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 1 other file in catalog/Tools/ESLint/skills/eslint of managedcode/dotnet-skills.

  • SKILL.md
  • manifest.json

Open the folder on GitHubat commit 535dd55

Compare with similar skills

Eslint 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.

Eslint compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Eslint this skillmanagedcode/dotnet-skills486—~1.5kAutomated safety check: PassMIT
Ultraciteagustinusnathaniel/nextarter-tailwind1252 repos~1.2kAutomated safety check: PassMIT
Typescript Tooling MigrationArize-ai/phoenix12k—~2.8kAutomated safety check: PassApache-2.0
Typescript Rulessoftspark/ai-toolkit179—~2.7kAutomated safety check: NotesApache-2.0
Install Anti-Slop Oxlint Rulesdmmulroy/anti-slop5.2k—~2.2kAutomated safety check: PassMIT
Code Qualityredis/RedisInsight8.9k—~1.2kAutomated safety check: PassCustom licence

Similar skills

  • Ultracite

    agustinusnathaniel/nextarter-tailwind

    Ultracite is a zero-config linting and formatting preset for JavaScript/TypeScript projects.

    125 GitHub starsUsed in 2 repos~1.2k tokens
    DevelopmentAuto-check passed
  • Migrate or upgrade TypeScript tooling in the Phoenix monorepo.

    12k GitHub stars~2.8k tokensUpdated today
    DevelopmentAuto-check passed
  • Typescript Rules

    softspark/ai-toolkit

    TypeScript/JavaScript coding rules: style, patterns, security, testing.

    179 GitHub stars~2.7k tokensUpdated today
    Testing & QAAuto-check: notes
  • Installs, updates or migrates the vendored anti-slop Oxlint plugin in a repository, keeping local rule changes and the plugin's license and provenance files.

    5.2k GitHub stars~2.2k tokensUpdated 27 days ago
    DevelopmentAuto-check passed
  • Code Quality

    redis/RedisInsight

    Official

    Code-quality standards for RedisInsight: TypeScript strictness, naming conventions (camelCase, PascalCase, UPPERSNAKECASE), linting rules, no any without reason, no !important in styles, and…

    8.9k GitHub stars~1.2k tokensUpdated 2 days ago
    DevelopmentAuto-check passed
  • Port Rule

    web-infra-dev/rslint

    Port a new ESLint core or plugin rule to rslint, including explicitly requested batches.

    460 GitHub stars~1.7k tokensUpdated today
    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

Categories

Questions about Eslint

What does Eslint do?

Use ESLint in .NET repositories that ship JavaScript, TypeScript, React, or other Node-based frontend assets. Eslint is an agent skill from managedcode/dotnet-skills.NET repositories that ship JavaScript, TypeScript, React, or other Node-based frontend assets.

When should I use Eslint?

Eslint fits situations like: : the repo has package.json; JS/TS/React frontend files; the user asks for JavaScript; typeScript linting.

How do I install Eslint in Claude Code?

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

How do I install Eslint in Codex?

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

Can I use Eslint 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 eslint -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/eslint, .gemini/skills/eslint, .github/skills/eslint and .opencode/skills/eslint in your project.

What does Eslint need to run?

Going by SKILL.md and its folder, Eslint needs the command-line tools its instructions call (eslint, rg, npx and npm). Our summary lists: Node.js. Compatibility (from SKILL.md): Requires a .NET repository with Node-based frontend assets such as `package.json`, `ClientApp/`, `src/`, or separate web frontend folders..

Does Eslint access the network?

SKILL.md contains no URLs. Its commands use npx and npm, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Eslint 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 Eslint use?

Eslint 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 Eslint use?

About 1.5k tokens (SKILL.md is roughly 6k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Eslint?

Skills that share tags, products or a category with Eslint: Ultracite (agustinusnathaniel/nextarter-tailwind, 125 stars), Typescript Tooling Migration (Arize-ai/phoenix, 12k stars), Typescript Rules (softspark/ai-toolkit, 179 stars) and Install Anti-Slop Oxlint Rules (dmmulroy/anti-slop, 5.2k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Eslint?

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.