Use for Clerk authentication work: setup, users, sessions, middleware, backend API, organizations, billing, webhooks, testing, custom UI, mobile auth, and framework integrations for Next.js, React, Astro, TanStack, Vue, Nuxt, Expo, Android, Swift, React Router, and Chrome extensions.
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.
Adding Clerk to your project → Use clerk-setup
Custom sign-in/sign-up UI → Use clerk-custom-ui
useSignIn / useSignUp hooks<Show> component for conditional renderingAdvanced Next.js patterns → Use clerk-nextjs-patterns
React patterns → Use clerk-react-patterns
useAuth, useUser, useClerk)React Router patterns → Use clerk-react-router-patterns
Vue patterns → Use clerk-vue-patterns
useAuth, useUser, useClerk)Nuxt patterns → Use clerk-nuxt-patterns
Astro patterns → Use clerk-astro-patterns
TanStack Start patterns → Use clerk-tanstack-patterns
Expo patterns → Use clerk-expo-patterns
Chrome Extension patterns → Use clerk-chrome-extension-patterns
B2B / Organizations → Use clerk-orgs
Billing & Subscriptions → Use clerk-billing
<PricingTable /> componenthas()Webhooks → Use clerk-webhooks
E2E Testing → Use clerk-testing
Swift / native iOS auth → Use clerk-swift
clerk-iosAndroid / native mobile auth → Use clerk-android
clerk-android-api and clerk-android-ui implementation guidanceclerk-androidBackend REST API → Use clerk-backend-api
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 APIOr describe what you need and I'll recommend the right one.
These former standalone skills are bundled here as references to keep the runtime list compact. Load only the reference that matches the user's exact product, framework, or failure mode.
| Former skill | Reference | Description |
|---|---|---|
clerk-android | references/skills/clerk-android/SKILL.md | Use when implementing Clerk authentication in native Android apps with Kotlin, Clerk Android SDK, token caching, OAuth, session handling, user profile state, and protected API calls. |
clerk-astro-patterns | references/skills/clerk-astro-patterns/SKILL.md | Use when integrating Clerk with Astro: middleware, server-side auth, island components, protected pages, environment variables, session access, and Astro-specific routing patterns. |
clerk-backend-api | references/skills/clerk-backend-api/SKILL.md | Clerk Backend REST API explorer and executor. Browse tags, inspect endpoint schemas, and execute authenticated requests. Use when listing users, managing organizations, or calling any Clerk API endpoint. |
clerk-billing | references/skills/clerk-billing/SKILL.md | Use when implementing Clerk Billing subscriptions, PricingTable, plans, subscription state, entitlement checks, customer portal flows, and billing UI inside Clerk-authenticated apps. |
clerk-chrome-extension-patterns | references/skills/clerk-chrome-extension-patterns/SKILL.md | Use when adding Clerk auth to Chrome extensions, including popup and side panel auth, background/service worker token handling, extension routing, and secure session persistence. |
clerk-custom-ui | references/skills/clerk-custom-ui/SKILL.md | Build custom Clerk authentication UI, appearance, hooks, and sign-in/sign-up flows for frontend apps while preserving secure Clerk auth patterns. |
clerk-expo | references/skills/clerk-expo/SKILL.md | Use when implementing Clerk authentication for Expo or React Native apps with @clerk/expo, SecureStore token cache, OAuth, deep links, sessions, and mobile protected API calls. |
clerk-expo-patterns | references/skills/clerk-expo-patterns/SKILL.md | Use for Expo and React Native Clerk patterns: SecureStore token cache, OAuth redirects, deep links, session restoration, mobile route guards, and protected backend requests. |
clerk-nextjs-patterns | references/skills/clerk-nextjs-patterns/SKILL.md | Use for advanced Clerk patterns in Next.js: middleware, Server Actions, App Router, auth() usage, caching boundaries, protected routes, organizations, and SSR/session behavior. |
clerk-nuxt-patterns | references/skills/clerk-nuxt-patterns/SKILL.md | Use when integrating Clerk with Nuxt 3: middleware, composables, server routes, session access, protected pages, environment config, and Vue/Nuxt auth patterns. |
clerk-orgs | references/skills/clerk-orgs/SKILL.md | Use when building B2B SaaS with Clerk Organizations: org creation, membership, roles, invitations, active organization state, org-scoped authorization, and multi-tenant UI. |
clerk-react-patterns | references/skills/clerk-react-patterns/SKILL.md | Use when integrating Clerk with React SPAs, Vite, or CRA: ClerkProvider placement, route guards, hooks, token retrieval, user profile state, and protected API calls. |
clerk-react-router-patterns | references/skills/clerk-react-router-patterns/SKILL.md | Use for Clerk with React Router v7: rootAuthLoader, loader/action auth, middleware patterns, protected routes, session access, and data router integration. |
clerk-setup | references/skills/clerk-setup/SKILL.md | Set up Clerk authentication in an app, including quickstart wiring, environment variables, middleware, routes, and user/session integration. |
clerk-swift | references/skills/clerk-swift/SKILL.md | Use when implementing Clerk authentication in native Swift or iOS apps with ClerkKit, session handling, OAuth, token storage, protected API calls, and user profile state. |
clerk-tanstack-patterns | references/skills/clerk-tanstack-patterns/SKILL.md | Use when integrating Clerk with TanStack Router or TanStack Start: route protection, auth context, loaders, server functions, session access, and Clerk provider placement. |
clerk-testing | references/skills/clerk-testing/SKILL.md | Use when writing or debugging E2E tests for Clerk apps with Playwright or Cypress: auth flows, test users, session setup, protected routes, and deterministic login state. |
clerk-vue-patterns | references/skills/clerk-vue-patterns/SKILL.md | Use when integrating Clerk with Vue 3: composables such as useAuth/useUser, route guards, provider setup, protected views, token access, and session-aware UI. |
clerk-webhooks | references/skills/clerk-webhooks/SKILL.md | Use when implementing or debugging Clerk webhooks, Svix signature verification, user/org event syncing, idempotent handlers, retries, local testing, and webhook security. |