clerk
Clerk Skills Router
Version Detection
Check package.json to determine the Clerk SDK version. This determines which patterns to use:
| Package | Core 2 (LTS until Jan 2027) | Current |
|---|---|---|
@clerk/nextjs |
v5–v6 | v7+ |
@clerk/react or @clerk/clerk-react |
v5–v6 | v7+ |
@clerk/expo or @clerk/clerk-expo |
v1–v2 | v3+ |
@clerk/react-router |
v1–v2 | v3+ |
@clerk/tanstack-react-start |
< v0.26.0 | v0.26.0+ |
Default to current if the version is unclear or the project is new. Core 2 packages use @clerk/clerk-react and @clerk/clerk-expo (with clerk- prefix); current packages use @clerk/react and @clerk/expo.
All skills are written for the current SDK. When something differs in Core 2, it's noted inline with > **Core 2 ONLY (skip if current SDK):** callouts. The exception is clerk-custom-ui, which has separate core-2/ and core-3/ directories for custom flow hooks since those APIs are entirely different between versions.
By Task
Adding Clerk to your project → Use clerk-setup
- Framework detection and quickstart
- Environment setup, API keys, Keyless flow
- Migration from other auth providers
Custom sign-in/sign-up UI → Use clerk-custom-ui
- Custom authentication flows with
useSignIn/useSignUphooks - Appearance and styling (themes, colors, layout)
<Show>component for conditional rendering
Advanced Next.js patterns → Use clerk-nextjs-patterns
- Server vs Client auth APIs
- Middleware strategies
- Server Actions, caching
- API route protection
React patterns → Use clerk-react-patterns
- Hooks (
useAuth,useUser,useClerk) - Protected routes, auth guards
- Router integration
React Router patterns → Use clerk-react-router-patterns
- Loaders & actions with auth
- Route protection
- SSR auth
Vue patterns → Use clerk-vue-patterns
- Composables (
useAuth,useUser,useClerk) - Vue Router guards
- Pinia auth store integration
Nuxt patterns → Use clerk-nuxt-patterns
- Server middleware auth
- SSR auth with composables
- Server API routes
Astro patterns → Use clerk-astro-patterns
- SSR auth pages
- Island components with React
- Middleware & API routes
TanStack Start patterns → Use clerk-tanstack-patterns
- Server functions with auth
- Route protection via loaders
- Vinxi server integration
Expo patterns → Use clerk-expo-patterns
- Secure token storage
- OAuth deep linking
- Push notifications with auth
Chrome Extension patterns → Use clerk-chrome-extension-patterns
- Background scripts auth
- Popup auth flows
- Content scripts with sync host
B2B / Organizations → Use clerk-orgs
- Multi-tenant apps
- Organization slugs in URLs
- Roles, permissions, RBAC
- Member management
Billing & Subscriptions → Use clerk-billing
<PricingTable />component- Plan and feature gating with
has() - Seat-based B2B billing with organizations
- Subscription lifecycle webhooks
- Free trials, invoicing
Webhooks → Use clerk-webhooks
- Real-time events
- Data syncing
- Notifications & integrations
E2E Testing → Use clerk-testing
- Playwright/Cypress setup
- Auth flow testing
- Test utilities
Swift / native iOS auth → Use clerk-swift
- Native iOS Swift and SwiftUI projects
- ClerkKit and ClerkKitUI implementation guidance
- Source-driven patterns from
clerk-ios
Android / native mobile auth → Use clerk-android
- Native Android Kotlin and Jetpack Compose projects
clerk-android-apiandclerk-android-uiimplementation guidance- Source-driven patterns from
clerk-android - Do not use for Expo or React Native projects
Backend REST API → Use clerk-backend-api
- Browse API tags and endpoints
- Inspect endpoint schemas
- Execute API requests with scope enforcement
Quick Navigation
If you know your task, you can directly access:
/clerk-setup- Framework setup/clerk-custom-ui- Custom flows & appearance/clerk-nextjs-patterns- Next.js patterns/clerk-react-patterns- React patterns/clerk-react-router-patterns- React Router patterns/clerk-vue-patterns- Vue patterns/clerk-nuxt-patterns- Nuxt patterns/clerk-astro-patterns- Astro patterns/clerk-tanstack-patterns- TanStack Start patterns/clerk-expo-patterns- Expo patterns/clerk-chrome-extension-patterns- Chrome Extension patterns/clerk-orgs- Organizations/clerk-billing- Billing & subscriptions/clerk-webhooks- Webhooks/clerk-testing- Testing/clerk-swift- Swift/native iOS/clerk-android- Native Android/clerk-backend-api- Backend REST API
Or describe what you need and I'll recommend the right one.
More from midudev/autoskills
bun
Use when building, testing, and deploying JavaScript/TypeScript applications. Reach for Bun when you need to run scripts, manage dependencies, bundle code, or test applications with a single unified tool.
14pydantic
Python data validation using type hints and runtime type checking with Pydantic v2's Rust-powered core for high-performance validation in FastAPI, Django, and configuration management.
11react-hook-form
React Hook Form performance optimization for client-side form validation using useForm, useWatch, useController, and useFieldArray. This skill should be used when building client-side controlled forms with React Hook Form library. This skill does NOT cover React 19 Server Actions, useActionState, or server-side form handling (use react-19 skill for those).
10azure-deploy
Execute Azure deployments for ALREADY-PREPARED applications that have existing .azure/deployment-plan.md and infrastructure files. DO NOT use this skill when the user asks to CREATE a new application — use azure-prepare instead. This skill runs azd up, azd deploy, terraform apply, and az deployment commands with built-in error recovery. Requires .azure/deployment-plan.md from azure-prepare and validated status from azure-validate. WHEN: \"run azd up\", \"run azd deploy\", \"execute deployment\", \"push to production\", \"push to cloud\", \"go live\", \"ship it\", \"bicep deploy\", \"terraform apply\", \"publish to Azure\", \"launch on Azure\". DO NOT USE WHEN: \"create and deploy\", \"build and deploy\", \"create a new app\", \"set up infrastructure\", \"create and deploy to Azure using Terraform\" — use azure-prepare for these.
8sqlalchemy-orm
SQLAlchemy Python SQL toolkit and ORM with powerful query builder, relationship mapping, and database migrations via Alembic
8python-background-jobs
Python background job patterns including task queues, workers, and event-driven architecture. Use when implementing async task processing, job queues, long-running operations, or decoupling work from request/response cycles.
8