What problem does it solve? Setting up authentication in a Convex app involves choosing a provider, wiring backend config, client providers, environment variables, and protected functions, and getting any step wrong leaves the app silently unauthenticated. This Skill guides the full setup so Convex actually validates user identity end to end. ## Core Features & Use Cases - Provider Selection Guidance: Detects or asks which auth provider to use among Convex Auth, Clerk, WorkOS AuthKit, Auth0, or a custom JWT provider before writing any code. - Provider-Specific References: Ships detailed reference files for each provider covering installation, convex/auth.config.ts, environment variables, gotchas, and validation steps. - Secure Backend Patterns: Enforces server-side identity checks with ctx.auth.getUserIdentity() instead of trusting client-provided user IDs, plus authorization checks for ownership and roles. - Use Case: You are building a Next.js app on Convex and need login with Clerk. The Skill detects the framework, configures convex/auth.config.ts with the Clerk issuer domain, wraps the app in ClerkProvider and ConvexProviderWithClerk, and verifies protected queries return authenticated identity. ## Quick Start Set up authentication for my Convex app, figure out the right provider from my repo, and wire up protected functions and login.