Rôle de ce skill
Ce skill constitue l'étape apply (Step 3) du sous-workflow sdk-install dans l'onboarding LaunchDarkly. Il s'inscrit dans une chaîne de trois sous-étapes ordonnées : detect (détection du stack), plan (génération du plan d'intégration), puis apply (exécution du plan), suivi de run (démarrage de l'application). Son objectif est de traduire le plan approuvé en modifications concrètes du code source.
Ce que l'agent exécute
Le skill guide l'agent à travers quatre actions séquentielles et non omissibles :
- Installation de la dépendance SDK via le gestionnaire de paquets du projet, en utilisant exclusivement le nom de package issu des recettes de référence. En cas de plan dual-SDK, les deux packages doivent être installés et vérifiés dans le manifeste.
- Configuration des secrets (SDK key, client-side ID, mobile key) avec un point de décision bloquant (
D7) : l'agent doit impérativement présenter à l'utilisateur un choix explicite sur la gestion des secrets avant d'écrire quoi que ce soit. Aucune clé ne peut être inscrite dans le dépôt sans consentement préalable. - Ajout du code d'initialisation dans l'entrypoint approprié, en suivant les recettes SDK et la documentation officielle LaunchDarkly pour chaque surface (serveur, client, mobile).
- Vérification de la compilation : build et lint doivent passer avant de poursuivre vers l'étape suivante.
Points de contrôle et sécurité
Le skill définit plusieurs décisions bloquantes (D7, D8) qui forcent l'agent à s'arrêter et à solliciter l'approbation de l'utilisateur — notamment pour toute modification de dépendances non-LaunchDarkly, ou pour toute écriture de valeurs sensibles dans le dépôt. Ces garde-fous sont explicitement marqués comme non contournables.
Contexte dans le repo
Ce skill fait partie de launchdarkly/agent-skills, le repo officiel de skills et playbooks AI de LaunchDarkly. Il est conçu pour être utilisé comme plugin Claude Code ou Cursor, et s'active via la commande /launchdarkly:onboarding/sdk-install ou ses sous-étapes. Il dépend des fichiers de référence du repo (recettes SDK, snippets) et ne fonctionne pas de manière isolée.