# Instructions SEO pour la routine Claude

Ce fichier dit à Claude quoi faire à chaque exécution de la routine. Modifiez-le librement : ton de la marque, champs à retravailler, règles propres à votre boutique. Les sections marquées « À adapter » sont celles que vous changerez le plus souvent.

## Règle absolue : un seul contenu par exécution

À chaque exécution, tu traites **un seul contenu**, puis tu t'arrêtes. Même s'il reste du temps, même si d'autres lignes sont en attente. La prochaine exécution prendra le suivant.

## Le fichier de suivi

Le fichier `suivi-seo.csv`, à la racine du dépôt, liste les contenus à optimiser. Colonnes :

| Colonne | Contenu |
| --- | --- |
| `Type` | `product`, `collection`, `page` ou `article` |
| `Handle` | le handle Shopify du contenu |
| `Title` | le titre actuel, pour repère |
| `Optimized` | `YES` une fois la proposition envoyée à Vetta, sinon `NO` |
| `OptimizedAt` | date et heure de l'envoi (ISO 8601, par exemple `2026-09-25T14:00:00Z`) |
| `WorkingNow` | `YES` pendant qu'une exécution travaille sur la ligne, sinon `NO` |
| `WorkingSince` | date et heure du passage de `WorkingNow` à `YES` |
| `VettaStatus` | statut de la proposition dans Vetta (`pending`, `approved`, `changes_requested`, `rejected`) |
| `VettaProposalUrl` | lien de validation de la proposition dans Vetta |

## Déroulé d'une exécution

1. Lis `suivi-seo.csv`.
2. Si une ligne a `WorkingNow = YES` depuis moins de 2 heures, une autre exécution est en cours : arrête-toi sans rien modifier. Si c'est depuis plus de 2 heures, considère-la comme abandonnée et remets `WorkingNow` à `NO`.
3. Choisis la première ligne où `Optimized = NO`. S'il n'y en a aucune, arrête-toi et indique que tout est traité.
4. Passe cette ligne à `WorkingNow = YES`, renseigne `WorkingSince`, puis fais un commit et un push immédiatement (message : `seo: début <handle>`).
5. Avec le connecteur Vetta, appelle `get_shop_context` pour connaître la boutique et ses langues. Retrouve ensuite le contenu avec `list_contents` (paramètres `type` et `query` = le handle) pour obtenir son identifiant, puis lis-le avec `get_content`.
6. Rédige la nouvelle version en suivant les règles ci-dessous. Appuie-toi sur les recommandations SEO (`seo`) et, si Search Console est connectée, sur les requêtes proches de la première page (`gsc.opportunities`) que renvoie `get_content`.
7. Envoie-la avec `propose_version`. Tu ne publies jamais : un humain relira la proposition dans Vetta. Si le score SEO renvoyé montre un problème que tu peux corriger, envoie une nouvelle proposition : elle remplace la précédente.
8. Mets à jour la ligne : `Optimized = YES`, `OptimizedAt`, `WorkingNow = NO`, `WorkingSince` vide, `VettaStatus = pending`, `VettaProposalUrl` = le lien de validation renvoyé par `propose_version`.
9. Fais un commit et un push (message : `seo: <handle> proposé dans Vetta`), puis arrête-toi.

Si une étape échoue (contenu introuvable, erreur du connecteur), remets `WorkingNow` à `NO`, laisse `Optimized` à `NO`, écris l'erreur dans `VettaStatus` et pousse le fichier. Ne passe pas à une autre ligne.

## Ce qu'il faut optimiser (À adapter)

- **Titre SEO** : 50 à 60 caractères, mot-clé principal au début, nom de la marque à la fin si la place le permet.
- **Méta-description** : 140 à 155 caractères, un bénéfice concret et une incitation à cliquer.
- **Description** : structurée avec des intertitres, des paragraphes courts, le mot-clé principal dans les 100 premiers mots, sans bourrage.
- **Handle** : ne le modifie pas, sauf s'il est illisible (par exemple `copie-de-produit-2`). Dans ce cas, propose un handle court en minuscules avec des tirets.
- **Texte alternatif des images** : décris ce que montre l'image, en une phrase.

## Règles de rédaction (À adapter)

- Langue : français. Vouvoiement.
- Ton : [décrivez le ton de votre marque, par exemple « expert mais accessible, sans superlatifs »].
- N'invente jamais de caractéristique, de matière, de dimension, de certification ou de chiffre. Utilise seulement ce qui figure déjà dans le contenu ou dans la boutique. S'il manque une information importante, signale-le dans ton compte rendu.
- Garde les liens internes existants.
- Évite les formules creuses (« de qualité supérieure », « incontournable », « découvrez notre sélection »).

## Compte rendu de fin d'exécution

Termine en résumant en deux ou trois phrases ce que tu as changé et pourquoi, avec le lien de validation, et liste les informations que tu n'as pas pu vérifier. Ce résumé apparaît dans l'historique de la routine.
