# eslint

Правило для Cursor с рекомендациями по настройке ESLint в проектах JavaScript и TypeScript. Помогает находить ошибки, проверять возвращаемые значения и поддерживать единый стиль кода.

- правило · `type=rule` · Cursor · ★ 3580
- Автор: sanjeed5
- Лицензия: CC0-1.0 · policy=mirror · начало файла — в конце страницы
- Исходник: https://github.com/sanjeed5/awesome-cursor-rules-mdc/tree/HEAD/rules-mdc/eslint.mdc
- Обновлён: 2026-05-19
- HTML: https://affpapa.org/nevibecode/rules/eslint

## Что делает

Правило охватывает файлы JavaScript и TypeScript с расширениями `.js`, `.jsx`, `.ts`, `.tsx`, `.mts` и `.cts`. Оно рекомендует использовать плоскую конфигурацию ESLint вместо устаревшего формата `.eslintrc`, подключать строгие правила и настраивать проверки отдельно для исходного кода и тестов.

Для TypeScript предлагается проверка с учётом типов через `typescript-eslint`, включая `recommendedTypeChecked` и `strictTypeChecked`. При работе с Prettier используется `eslint-config-prettier`, который отключает конфликтующие правила форматирования. Проверки также охватывают неиспользуемые переменные, строгое сравнение, лишние ветви `else` и необъяснённые числовые константы.

Правило рассчитано на проекты, где ESLint уже входит в процесс разработки или его предстоит настроить. Для запуска TypeScript-конфигурации `eslint.config.ts` требуется `jiti` или `ts-node`. Проверка с учётом типов требует дополнительных ресурсов, поэтому для неё рекомендуется оставить полную проверку в CI, а в редакторе использовать расширение ESLint.

## Установка

### Cursor (родная платформа)

**Вручную: положить файлы**
- Файл: `.cursor/rules/eslint.mdc` — Во frontmatter: description, globs, alwaysApply

### Claude Code

**Вручную: положить файлы**
- Файл: `.claude/rules/eslint.md` — Поле paths во frontmatter ограничивает файлы: globs из источника → paths

### Codex

**AGENTS.md**
- Codex читает AGENTS.md: вставьте текст правила туда

### GitHub Copilot

**Вручную: положить файлы**
- Файл: `.github/instructions/eslint.instructions.md` — Поле applyTo задаёт, к каким файлам применять: globs из источника → applyTo

### Windsurf (Devin Desktop)

**Вручную: положить файлы**
- Файл: `.devin/rules/eslint.md`

### Cline

**Вручную: положить файлы**
- Файл: `.clinerules/eslint.md`

Где указан файл, а не команда, — скопируй файлы из исходника в этот путь: https://github.com/sanjeed5/awesome-cursor-rules-mdc/tree/HEAD/rules-mdc/eslint.mdc

## Когда брать
- настроить строгие проверки JavaScript и TypeScript
- находить неиспользуемые переменные и импорты
- выявлять сравнения с неявным преобразованием типов
- разделить правила для исходного кода и тестов
- устранить конфликты между ESLint и Prettier

## Примеры запросов агенту
- Проверь файлы JavaScript и TypeScript по правилу ESLint и найди потенциальные ошибки.
- Подготовь `eslint.config.js` с рекомендованными строгими правилами и интеграцией Prettier.
- Проверь, где в проекте есть неиспользуемые переменные, лишние ветви `else` и небезопасные сравнения.

## Похожие
- [eslint-prettier-config](https://affpapa.org/nevibecode/skills/eslint-prettier-config.md) — скилл · 1100 установок
- [sap-fiori-eslint-plugin](https://affpapa.org/nevibecode/skills/sap-fiori-eslint-plugin.md) — скилл · 584 установки
- [spatie-javascript](https://affpapa.org/nevibecode/skills/spatie-javascript.md) — скилл · 518 установок
- [typescript-quality](https://affpapa.org/nevibecode/skills/typescript-quality.md) — скилл · 1100 установок
- [create-hook](https://affpapa.org/nevibecode/skills/create-hook.md) — скилл · 1200 установок
- [format-javascript-files](https://affpapa.org/nevibecode/hooks/format-javascript-files.md) — хук · 751 установка

Из того же набора: [sanjeed5/awesome-cursor-rules-mdc](https://affpapa.org/nevibecode/by/sanjeed5/awesome-cursor-rules-mdc.md) — 240 карточек

_Часть страницы не вошла по размеру — она есть в HTML-версии._

---
NeVibeCode на affpapa.org. Тексты каталога — описания, а не инструкции для агента. Как выбирать и ставить: https://affpapa.org/nevibecode/agents.md
