# react-code-review

Скилл проверяет React-компоненты и хуки перед мержем: архитектура, зависимости в useEffect, доступность, типы. Полезен, когда правки уже готовы и нужен разбор по серьёзности.

- скилл · `type=skill` · Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, OpenCode · 4300 установок · ★ 363
- Автор: giuseppe-trisciuoglio
- Лицензия: MIT · policy=mirror · лицензия открытая, файл — в исходнике
- Исходник: https://github.com/giuseppe-trisciuoglio/developer-kit/tree/HEAD/plugins/developer-kit-typescript/skills/react-code-review/SKILL.md
- Обновлён: 2026-09-10
- HTML: https://affpapa.org/nevibecode/skills/react-code-review

## Что делает

Скилл проходит по `.tsx` и `.jsx` файлам, находит определения компонентов, вызовы хуков и провайдеры контекста, а затем оценивает код по нескольким направлениям: композиция компонентов, работа с хуками, управление состоянием, производительность, доступность и типизация TypeScript. Отдельно проверяются паттерны React 19 — `use`, `useOptimistic`, `useFormStatus`, Actions.

На выходе получается отчёт с находками, разложенными по серьёзности: Critical, Warning, Suggestion. К рекомендациям прикладываются примеры кода. Внутри скилл опирается на инструкцию из восьми шагов: определить область ревью, разобрать архитектуру, проверить хуки, оценить состояние, доступность, производительность и типы, собрать отчёт. Для глубокого разбора архитектуры он передаёт работу субагенту `react-software-architect-review`.

Скилл работает с инструментами `Read`, `Edit`, `Grep`, `Glob`, `Bash` — значит, ему нужен доступ к файлам проекта. Если репозиторий открыт только на чтение или агент запущен без прав на запись, часть шагов упрётся в ограничения. Порог в 200 строк на компонент и 7 пропсов — это ориентир из инструкции, а не жёсткий лимит линтера, так что спорные случаи он помечает как замечание, а не как ошибку.

## Установка

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

1. **Через Skills CLI (Vercel)**
```bash
npx skills add giuseppe-trisciuoglio/developer-kit --skill react-code-review -a claude-code
```

2. **Вручную: положить файлы**
- Файл: `~/.claude/skills/react-code-review/SKILL.md` — Папка скилла целиком; для одного проекта — .claude/skills/react-code-review/

### Codex

1. **Через Skills CLI (Vercel)**
```bash
npx skills add giuseppe-trisciuoglio/developer-kit --skill react-code-review -a codex
```

2. **Вручную: положить файлы**
- Файл: `.agents/skills/react-code-review/SKILL.md` — Для всех проектов — ~/.agents/skills/

### Cursor

1. **Через Skills CLI (Vercel)**
```bash
npx skills add giuseppe-trisciuoglio/developer-kit --skill react-code-review -a cursor
```

2. **Вручную: положить файлы**
- Файл: `.cursor/skills/react-code-review/SKILL.md` — Cursor читает и .agents/skills/, и .claude/skills/

### GitHub Copilot

1. **GitHub CLI**
```bash
gh skill install giuseppe-trisciuoglio/developer-kit react-code-review
```

2. **Вручную: положить файлы**
- Файл: `.github/skills/react-code-review/SKILL.md`

### Gemini CLI

1. **Через Skills CLI (Vercel)**
```bash
npx skills add giuseppe-trisciuoglio/developer-kit --skill react-code-review -a gemini-cli
```

2. **Командой платформы**
```bash
gemini skills install https://github.com/giuseppe-trisciuoglio/developer-kit --path plugins/developer-kit-typescript/skills/react-code-review
```

### Windsurf (Devin Desktop)

**Вручную: положить файлы**
- Файл: `.devin/skills/react-code-review/SKILL.md` — Старый путь .windsurf/skills/ тоже читается

### OpenCode

**Через Skills CLI (Vercel)**
```bash
npx skills add giuseppe-trisciuoglio/developer-kit --skill react-code-review -a opencode
```

### Claude.ai

**Claude.ai**
- Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills

Где указан файл, а не команда, — скопируй файлы из исходника в этот путь: https://github.com/giuseppe-trisciuoglio/developer-kit/tree/HEAD/plugins/developer-kit-typescript/skills/react-code-review/SKILL.md

## Когда брать
- проверить зависимости в `useEffect` и найти устаревшие замыкания
- разбить монолитный компонент на части с общим состоянием
- заменить ручной `useEffect` + `useState` на TanStack Query или SWR
- найти недоступные интерактивные элементы без клавиатурной навигации
- убрать нестабильные колбэки, из-за которых перерисовываются дочерние компоненты

## Примеры запросов агенту
- сделай ревью React-кода в `src/features/dashboard`
- проверь мои React-компоненты перед мержем пул-реквеста
- review React code: посмотри хуки и доступность в новых файлах

## Похожие
- [react-flow-code-review](https://affpapa.org/nevibecode/skills/react-flow-code-review.md) — скилл · 319 установок
- [react-doctor](https://affpapa.org/nevibecode/skills/react-doctor.md) — скилл · 19200 установок
- [typescript-react-reviewer](https://affpapa.org/nevibecode/skills/typescript-react-reviewer.md) — скилл · 9000 установок
- [react-best-practices](https://affpapa.org/nevibecode/skills/mastra-ai-react-best-practices.md) — скилл · 2800 установок
- [narrow-react-prop-types](https://affpapa.org/nevibecode/skills/narrow-react-prop-types.md) — скилл · 1300 установок
- [react-component-generator](https://affpapa.org/nevibecode/skills/react-component-generator.md) — скилл · 318 установок

Из того же набора: [giuseppe-trisciuoglio/developer-kit](https://affpapa.org/nevibecode/by/giuseppe-trisciuoglio/developer-kit.md) — 93 карточки

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