Паттерны Clerk TanStack
TanStack React Start auth patterns with @clerk/tanstack-react-start - createServerFn, beforeLoad guards, loaders, Vinxi server. Triggers on: TanStack auth, createServerFn clerk, beforeLoad protection, TanStack Start middleware.
AIclerk
official
Дизайн
Что делает навык
Набор паттернов для интеграции аутентификации Clerk в приложения на базе TanStack React Start, работающие на сервере Vinxi. Позволяет защищать маршруты, получать данные пользователя в серверных функциях и лоадерах, а также настраивать middleware.
Когда применять
- Защита маршрутов с помощью guards beforeLoad, перенаправляя неавторизованных пользователей на страницу входа.
- Получение состояния аутентификации (isAuthenticated, userId) внутри createServerFn.
- Передача контекста аутентификации в лоадеры (loaders) для использования на стороне клиента.
- Настройка clerkMiddleware в точке входа Vinxi (src/start.ts).
Как работает
- Установить пакет @clerk/tanstack-react-start и добавить ключи CLERK_PUBLISHABLE_KEY и CLERK_SECRET_KEY в .env.
- Импортировать и добавить clerkMiddleware() в массив requestMiddleware в файле src/start.ts.
- Обернуть корневой компонент (src/routes/__root.tsx) в ClerkProvider.
- Использовать auth() из @clerk/tanstack-react-start/server внутри createServerFn или beforeLoad.
- Вызывать throw redirect() для перенаправления неавторизованных пользователей.
- Возвращать данные из beforeLoad для доступа к ним через контекст лоадеров.
Примеры запросов агенту
Как защитить маршрут /dashboard с помощью beforeLoad и createServerFn?
Как настроить clerkMiddleware в start.ts для TanStack Start?
Как получить userId в createServerFn, используя auth()?
Что понадобится
- npm пакет @clerk/tanstack-react-start
- Переменные окружения CLERK_PUBLISHABLE_KEY и CLERK_SECRET_KEY
- Серверная среда на базе Vinxi
Описание составлено по SKILL.md навыка, сверено 05.10.2026.
Как подключить
1Скачать навык
# возьмите папку навыка «clerk-tanstack-patterns» из репозитория:
# https://github.com/clerk/skills
2Положить папку с
SKILL.md к навыкам ассистента# положите папку навыка туда, где ассистент ищет skills:
cp -r clerk-tanstack-patterns/ ~/.claude/skills/clerk-tanstack-patterns/
Навык — папка с файлом SKILL.md (описание + инструкции) и опциональными скриптами. Ассистент (Claude, Claude Code и совместимые) подхватывает его по описанию и следует шагам.