clerk-expo
Ce skill fait partie du repository officiel clerk/skills, une collection de skills destinés à aider les agents de codage IA à travailler plus efficacement avec Clerk. Il est classé dans la catégorie mobile aux côtés des skills clerk-swift et clerk-android.
Rôle et périmètre
Le skill clerk-expo guide un agent dans l'intégration de l'authentification Clerk au sein d'un projet Expo ou React Native. Il couvre deux aspects principaux : le choix du flow d'authentification (vues préconstruites via AuthView/UserButton, ou flow personnalisé piloté par hooks) et la mise en place de bout en bout (configuration de <ClerkProvider>, installation de @clerk/expo, enregistrement du config plugin Expo, gestion du token cache). Il se distingue volontairement du skill clerk-expo-patterns, qui prend en charge les recettes spécifiques à Expo (SecureStore, OAuth deep links, Expo Router, notifications push).
Contenu du SKILL.md
Le fichier SKILL.md est substantiellement rempli : il définit des règles d'activation (détecter la présence d'Expo/React Native vs iOS natif vs framework web), un arbre de décision, un contrat d'interaction (l'agent doit obtenir le choix de flow et la publishable key avant toute modification de fichier), ainsi qu'une liste de portes d'exécution obligatoires. Il renvoie vers deux fichiers de référence distincts (references/prebuilt.md et references/custom.md) selon le flow retenu, et documente les erreurs critiques à éviter (utilisation de useOAuth() déprécié, mélange des deux flows, absence d'appel à /v1/environment?_is_native=true pour les flows custom).
Comment l'utiliser
Une fois les skills Clerk installés (via npx skills add clerk/skills ou clonage manuel), un agent activera automatiquement ce skill lorsque le projet est identifié comme Expo/React Native ou que l'utilisateur mentionne explicitement @clerk/expo, ClerkProvider, ou des hooks Clerk dans un contexte mobile. L'agent posera les questions manquantes (choix du flow, publishable key) avant d'effectuer la moindre modification, puis s'appuiera sur le fichier de référence correspondant pour l'implémentation.