Stripe Projects — Provisionnement de services
Provisionner des services tiers (bases de données, authentification, hébergement, analytics, cache, IA, observabilité) et récupérer des clés API/tokens en utilisant le plugin CLI Stripe Projects.
Flux de travail
Étape 1 : Vérifier Stripe CLI + Plugin Projects
Vérifiez que Stripe CLI est disponible :
which stripe && stripe --version
S'il n'est pas installé ou inférieur à la version 1.40.0 :
- macOS (Homebrew) :
brew install stripe/stripe-cli/stripe(oubrew upgrade stripe/stripe-cli/stripe) - Autres plateformes : Dirigez l'utilisateur vers https://docs.stripe.com/stripe-cli/install pour les instructions à jour.
Ensuite, vérifiez que le plugin Projects est installé :
stripe plugin install projects
Étape 2 : Rechercher dans le catalogue
Confirmez que le fournisseur/service demandé existe :
stripe projects search <query> --json
Si result_count est 0, informez l'utilisateur que le service n'a pas été trouvé et arrêtez.
Si la demande de l'utilisateur est vague (par exemple, « J'ai besoin d'une base de données »), parcourez le catalogue pour suggérer des options :
stripe projects catalog --json
Étape 3 : Initialiser un projet
Vérifiez si un projet est déjà initialisé :
stripe projects status --json
S'il n'est pas initialisé, d'abord exécutez une vérification préalable pour révéler tous les obstacles à la fois :
stripe projects init --preflight --json
Si toutes les vérifications préalables passent (ou si seules les défaillances sont TOS_ACCEPTANCE_REQUIRED ou Stripe session authenticated), procédez :
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-init.
Étape 4 : Transférer à stripe-projects-cli
Vérifiez que le skill a été installé :
test -f .claude/skills/stripe-projects-cli/SKILL.md && echo "OK" || echo "MISSING"
Si MISSING : réexécutez stripe projects init --accept-tos --yes — le skill est fourni avec le plugin Projects et installé lors de l'init.
Si OK : utilisez le skill stripe-projects-cli installé localement (invoquez-le 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 l'ajout réussi d'un service, fournissez 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érez 3–5 services complémentaires provenant de catégories différentes du catalogue (par exemple, si l'utilisateur a ajouté une base de données, suggérez l'authentification, l'hébergement ou l'observabilité). Référencez uniquement les services qui apparaissent réellement dans la sortie stripe projects catalog --json — ne fabriquez jamais de commandes ou de noms de fournisseurs.
CLI comme source de vérité
Le CLI gère tout l'état sous .projects/ et génère des fichiers .env. N'éditez pas manuellement ces fichiers. Si vous devez inspecter l'état du projet, utilisez la commande CLI appropriée :
| Tâche | Commande |
|---|---|
| Afficher les services provisionnnés | stripe projects status --json |
| Lister les noms de 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 |
Inspectez .projects/ ou .env directement uniquement si l'utilisateur vous le demande explicitement — le CLI est l'autorité, donc les modifications manuelles risquent d'être écrasées.
Variables de projet
Utilisez les variables de projet quand l'utilisateur veut stocker une variable d'environnement qui ne provient pas d'une ressource de fournisseur provisionné, comme une URL d'application, un feature flag ou une clé API auto-gérée.
Créez ou mettez à jour une variable de projet pour l'environnement actif :
stripe projects variables set <name> --env-key <ENV_KEY> --value <value>
Un variables set réussi synchronise immédiatement le fichier de sortie de l'environnement actif. Si l'utilisateur ne fournit pas la valeur, exécutez la commande sans --value uniquement en mode interactif pour que le CLI puisse demander de manière sécurisée. Ne jamais imprimer les valeurs secrètes dans votre réponse.
Liez une variable de projet existante à l'environnement actif :
stripe projects env add <name> --variable --env-key <ENV_KEY>
Supprimez une liaison de variable de l'environnement actif sans supprimer la variable stockée :
stripe projects env remove <name> --variable
Listez et supprimez les variables de projet :
stripe projects variables list --json
stripe projects variables delete <name> --yes
Gestion des erreurs
| Code d'erreur | Cause | Récupération |
|---|---|---|
BROWSER_AUTH_REQUIRED |
Pas de session d'authentification et navigateur nécessaire | Dites à l'utilisateur d'exécuter stripe projects init — vous ne pouvez pas corriger cela |
ACCOUNT_NOT_ELIGIBLE |
Compte non intégré pour Projects | Dites à l'utilisateur d'exécuter stripe projects switch-account pour choisir un compte ou continuer la configuration pour ce compte. |
TOS_ACCEPTANCE_REQUIRED |
Conditions développeur ou fournisseur non acceptées | Réexécutez avec --accept-tos |
PROVIDER_NOT_LINKED |
Le fournisseur nécessite une liaison OAuth | Exécutez stripe projects link <provider> — peut ouvrir un navigateur |
PLAN_REQUIRED |
Deployable a besoin d'un plan provisionné d'abord | Provisionner le plan listés dans l'erreur, puis réessayez |
UNKNOWN_ERROR |
Défaillance inattendue | Montrez le message d'erreur complet à l'utilisateur et suggérez d'exécuter avec --debug pour les diagnostics |
| Service non dans le catalogue | La requête a retourné 0 résultats | Informez l'utilisateur ; suggérez stripe projects catalog --json pour parcourir les alternatives |
| CLI non trouvé | Stripe CLI n'est pas installé | Installez en utilisant Homebrew (macOS) ou suivez https://docs.stripe.com/stripe-cli/install |