# clerk-react-patterns

Скилл помогает настроить аутентификацию в React SPA на базе @clerk/react. Пригодится при сборке проектов на Vite или Create React App с закрытыми маршрутами.

- скилл · `type=skill` · Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, OpenCode · 19700 установок · ★ 89
- Автор: clerk
- Лицензия: MIT · policy=mirror · начало файла — в конце страницы
- Исходник: https://github.com/clerk/skills/tree/HEAD/skills/clerk-react-patterns/SKILL.md
- Обновлён: 2026-10-23
- HTML: https://affpapa.org/nevibecode/skills/clerk-react-patterns

## Что делает

Скилл содержит шаблоны интеграции пакета `@clerk/react` в клиентские одностраничные приложения. Он обучает агента оборачивать корень проекта в `ClerkProvider`, задавать переменную `VITE_CLERK_PUBLISHABLE_KEY` и запрашивать сессионный JWT через `getToken()` для вызовов API.

Внутри собраны правила работы с хуками `useAuth`, `useUser` и `useClerk`, схемы кастомных форм входа и защита маршрутов в React Router v6 и v7. Библиотека работает только в браузере, поэтому серверного метода `auth()` в ней нет.

Перед проверкой статуса `isSignedIn` код обязательно должен проверять флаг `isLoaded`, иначе состояние сессии вернёт `undefined`. Для серверного рендеринга на Next.js или TanStack Start этот набор не подойдёт — для них созданы отдельные скиллы.

## Установка

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

1. **Через Skills CLI (Vercel)**
```bash
npx skills add clerk/skills --skill clerk-react-patterns -a claude-code
```

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

### Codex

1. **Через Skills CLI (Vercel)**
```bash
npx skills add clerk/skills --skill clerk-react-patterns -a codex
```

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

### Cursor

1. **Через Skills CLI (Vercel)**
```bash
npx skills add clerk/skills --skill clerk-react-patterns -a cursor
```

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

### GitHub Copilot

1. **GitHub CLI**
```bash
gh skill install clerk/skills clerk-react-patterns
```

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

### Gemini CLI

1. **Через Skills CLI (Vercel)**
```bash
npx skills add clerk/skills --skill clerk-react-patterns -a gemini-cli
```

2. **Командой платформы**
```bash
gemini skills install https://github.com/clerk/skills --path skills/clerk-react-patterns
```

### Windsurf (Devin Desktop)

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

### OpenCode

**Через Skills CLI (Vercel)**
```bash
npx skills add clerk/skills --skill clerk-react-patterns -a opencode
```

### Claude.ai

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

Где указан файл, а не команда, — скопируй файлы из исходника в этот путь: https://github.com/clerk/skills/tree/HEAD/skills/clerk-react-patterns/SKILL.md

## Когда брать
- защитить маршруты в React Router v6 и v7
- настроить ClerkProvider с ключом VITE_CLERK_PUBLISHABLE_KEY
- получить JWT-токен сессии через useAuth для вызова API
- создать кастомные формы входа с хуками useSignIn и useSignUp

## Примеры запросов агенту
- Настрой ClerkProvider для проекта на Vite и защити роут /dashboard через React Router
- Покажи, как безопасно проверить статус авторизации с useAuth и получить токен для fetch
- Сделай кастомную форму входа с хуком useSignIn

## Похожие
- [clerk-nextjs-skills](https://affpapa.org/nevibecode/skills/clerk-nextjs-skills.md) — скилл · 436 установок
- [clerk](https://affpapa.org/nevibecode/rules/clerk.md) — правило · ★ 3579
- [react-patterns](https://affpapa.org/nevibecode/skills/jezweb-react-patterns.md) — скилл · 1300 установок
- [emblem-ai-react](https://affpapa.org/nevibecode/skills/emblem-ai-react.md) — скилл · 8800 установок
- [clerk-authentication](https://affpapa.org/nevibecode/skills/clerk-authentication.md) — скилл · 683 установки
- [stitch::react-components](https://affpapa.org/nevibecode/skills/stitchreact-components.md) — скилл · 50400 установок

Из того же набора: [clerk/skills](https://affpapa.org/nevibecode/by/clerk/skills.md) — 19 карточек

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

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