Stripe Projects — Provisioning de Services
Provisionner des services tiers (bases de données, authentification, hébergement, analytique, cache, IA, observabilité) et récupérer des clés API/tokens en utilisant le plugin Projects de la Stripe CLI.
Flux de travail
Étape 1 : Vérifier Stripe CLI + Plugin Projects
Vérifier que la Stripe CLI est disponible :
which stripe && stripe --version
Si elle n'est pas installée ou en version inférieure à 1.40.0 :
- macOS (Homebrew) :
brew install stripe/stripe-cli/stripe(oubrew upgrade stripe/stripe-cli/stripe) - Autres plateformes : Diriger l'utilisateur vers https://docs.stripe.com/stripe-cli/install pour les instructions à jour.
Ensuite, vérifier que le plugin Projects est installé :
stripe plugin install projects
Étape 2 : Rechercher dans le Catalogue
Confirmer que le fournisseur/service demandé existe :
stripe projects search <query> --json
Si result_count est 0, informer l'utilisateur que le service n'a pas été trouvé et arrêter.
Si la demande de l'utilisateur est vague (par exemple, « J'ai besoin d'une base de données »), parcourir le catalogue pour suggérer des options :
stripe projects catalog --json
Étape 3 : Initialiser un Projet
Vérifier si un projet est déjà initialisé :
stripe projects status --json
Si non initialisé, d'abord exécuter une vérification préalable pour révéler tous les blocages à la fois :
stripe projects init --preflight --json
Si toutes les vérifications préalables réussissent (ou que les seuls échecs sont TOS_ACCEPTANCE_REQUIRED ou Stripe session authenticated), procéder :
stripe projects init --accept-tos --yes
Important : stripe projects init installe le skill stripe-projects-cli localement à .claude/skills/stripe-projects-cli. Ce skill contient la référence complète des commandes post-initialisation.
Étape 4 : Transférer à stripe-projects-cli
Vérifier que le skill a été installé :
test -f .claude/skills/stripe-projects-cli/SKILL.md && echo "OK" || echo "MISSING"
Si MISSING : réexécuter stripe projects init --accept-tos --yes — le skill est fourni avec le plugin Projects et installé lors de l'initialisation.
Si OK : utiliser le skill stripe-projects-cli installé localement (invoquer en utilisant l'outil Skill avec le nom stripe-projects-cli) pour continuer le flux de travail — ajouter des services, gérer les credentials et configurer le projet.
Étape 5 : Résumer et Suggérer
Après un ajout de service réussi, fournir le résultat dans ce format :
| Champ | Valeur |
|---|---|
| Fournisseur | <nom du fournisseur> |
| Service | <type de service> |
| Tier | <tier> |
| Variables d'env | <noms de variables uniquement — jamais les valeurs> |
Ensuite, suggérer 3–5 services complémentaires de catégories différentes du catalogue (par exemple, si l'utilisateur a ajouté une base de données, suggérer l'authentification, l'hébergement ou l'observabilité). Ne référencer que les services qui apparaissent effectivement dans la sortie stripe projects catalog --json — ne jamais inventer de commandes ou noms de fournisseurs.
CLI comme Source de Vérité
La CLI gère tout l'état sous .projects/ et génère des fichiers .env. Ne pas modifier manuellement ces fichiers. Si vous devez inspecter l'état du projet, utiliser la commande CLI appropriée :
| Tâche | Commande |
|---|---|
| Afficher les services provisionés | stripe projects status --json |
| Lister les noms des variables d'env | stripe projects env --json |
| Vérifier la santé du projet | stripe projects status --json |
| Parcourir les services disponibles | stripe projects catalog --json |
N'inspecter .projects/ ou .env directement que si l'utilisateur vous le demande explicitement — la CLI est autoritaire, les modifications manuelles peuvent être écrasées.
Gestion des Erreurs
| Code d'erreur | Cause | Récupération |
|---|---|---|
BROWSER_AUTH_REQUIRED |
Aucune session d'auth et navigateur nécessaire | Dire à l'utilisateur de lancer stripe login — vous ne pouvez pas corriger cela |
ACCOUNT_NOT_ELIGIBLE |
Compte non onboardé pour Projects | Dire à l'utilisateur de lancer stripe login ou de visiter https://projects.dev |
TOS_ACCEPTANCE_REQUIRED |
Conditions développeur ou fournisseur non acceptées | Réexécuter avec --accept-tos |
PROVIDER_NOT_LINKED |
Le fournisseur nécessite une liaison OAuth | Lancer stripe projects link <provider> — peut ouvrir un navigateur |
PLAN_REQUIRED |
Le deployable nécessite un plan provisioné d'abord | Provisionner le plan listé dans l'erreur, puis réessayer |
UNKNOWN_ERROR |
Échec inattendu | Afficher le message d'erreur complet à l'utilisateur et suggérer de lancer avec --debug pour les diagnostics |
| Service non dans le catalogue | La requête a retourné 0 résultats | Informer l'utilisateur ; suggérer stripe projects catalog --json pour parcourir les alternatives |
| CLI non trouvée | Stripe CLI non installée | Installer en utilisant Homebrew (macOS) ou suivre https://docs.stripe.com/stripe-cli/install |