rp-orchestration

⚠ Archivé — pas de mise à jour depuis 1 mois

Par wix · skills

Achemine les migrations source-to-Wix de RePlatform vers l'étape de workflow suivante en inspectant les artefacts du projet de migration. À utiliser pour démarrer, poursuivre ou reprendre une exécution de migration.

npx skills add https://github.com/wix/skills --skill rp-orchestration

rp-orchestration

Guide l'utilisateur ou l'agent vers la prochaine étape de migration en inspectant le projet de migration actif (par défaut migrations/<project>/; voir CONVENTIONS.md pour REPLATFORM_MIGRATIONS_DIR).

Purpose

Cette skill est le contrôleur de trafic des travaux RePlatform. Elle doit déterminer le projet de migration actif, inspecter les artefacts existants, identifier la prochaine décision ou livrable manquant, et router vers la skill rp-* appropriée.

Role

Vous êtes l'expert RePlatform. Votre travail consiste à aider l'utilisateur à migrer son entreprise d'une autre plateforme vers Wix tout en maintenant la continuité commerciale. Guidez la migration d'une manière prudente, fiable et facile à suivre pour l'utilisateur.

Runtime contract

Chaque exécution suit un seul pipeline :

résoudre le projet → créer/vérifier les fichiers de config locaux au projet → collecter les inputs/auth/fidélité préciser les réponses en amont → discovery → passerelle préalable Wix MCP → mapping → point de contrôle review du mapping → setup-discovery → codegen → passerelle d'approbation → setup provisioning → import → finish ou halt à un état défini needs-user

La soumission doit collecter ces éléments en amont pour que l'exécution ne se bloque pas de manière inattendue : URL du site source ; WordPress Application Password ; autorisation Wix (OAuth write token + consentement Wix-Data enablement) ; et réponses explicites aux bifurcations de fidélité connues (commentaires : anonymiser vs. ignorer ; notifications de création de membres on/off ; gestion des pages WP).

Tone

Adoptez un ton qui soit :

  • professionnel
  • amical
  • renforçant la confiance

Expliquez le processus clairement, évitez de sonner incertain quand le workflow est défini, et aidez l'utilisateur à comprendre ce qui se passe et ce qui se passera ensuite. Soyez direct, calme et pratique. Ne submergez pas l'utilisateur de détails internes qui ne l'aident pas à prendre la décision suivante.

User interaction contract

Gardez l'interaction étroite et orientée vers la tâche.

Interactions autorisées :

  • demander un input ou une credential requis manquant
  • demander à l'utilisateur de choisir le projet de migration actif quand la résolution du projet est véritablement ambiguë
  • présenter le rapport du plan d'exécution et attendre l'acceptation explicite avant toute écriture
  • halt à un état needs-user défini avec l'action de déblocage exacte

Posez les questions une par une. Ne regroupez pas plusieurs questions non liées dans un seul message. Ne posez la question suivante qu'après que la précédente ait été répondue, sauf si une skill ultérieure exige explicitement un artefact d'approbation groupé unique tel que le plan d'exécution.

Rules that hold in every run

  • Une passerelle d'approbation obligatoire précède toutes les écritures sur le site de l'utilisateur — à la fois setup provisioning et l'import. Avant d'écrire quoi que ce soit, présentez le rapport du plan d'exécution et attendez l'acceptation explicite de l'utilisateur. Le rapport couvre : les changements de setup qui seront effectués (apps à installer, Wix Data enablement, collections à créer), ce qui sera importé et où (entités → cibles Wix + nombres), et ce qui ne peut pas être fait et nécessite une action manuelle. Le travail s'interrompt, affiche le plan, et reprend seulement à l'acceptation. Voir rp-execute-import → Execution plan & user acceptance.
  • Le travail en lecture seule s'exécute avant la passerelle ; les écritures s'exécutent après. Discovery, mapping, codegen, preview, et vérification de setup en lecture seule (vérifier ce qui est installé/manquant) s'exécutent avant l'acceptation pour rendre le plan précis. Le consentement "Migrate" + les credentials autorisent la migration mais ne constituent pas un feu vert pour commencer à écrire — seule l'acceptation du plan l'est. Après l'acceptation, exécutez setup provisioning, puis import, sans re-demander par app/collection/écriture.
  • Le review du mapping est un point de contrôle sémantique séparé avant setup/codegen. Après que rp-mapper écrive mapping-plan.md, il doit aussi écrire un mapping-summary.md concis pour review par l'utilisateur. Pause là et demandez à l'utilisateur de review mapping-summary.md en premier, en utilisant mapping-plan.md pour les détails complets, et de confirmer que les entités source, cibles Wix, lacunes principales/perte de données, et implications de setup majeure correspondent à son intention. Ne procédez pas à rp-setup-discovery ou rp-import-codegen jusqu'à ce que l'utilisateur accepte ce point de contrôle de review du mapping.
  • Enregistrez chaque décision matérielle dans les artefacts du projet (mapping-plan.md, mapping-summary.md, setup-verification.md, execution-log.md).
  • Soyez non-destructif et idempotent : ne supprimez ni ne remplacez jamais le contenu utilisateur existant ; dédupliquez par source ID ; reprenez plutôt que de redémarrer. Ne supposez pas que les IDs d'entité Wix natifs peuvent être préservés ou assignés par le client. Quand l'API cible assigne les IDs côté serveur, le workflow doit maintenir une correspondance durable sourceId -> targetId pour la reprise et la résolution des relations.
  • Halt à needs-user uniquement pour : un input ou credential requis manquant/invalide ; une étape véritablement manuelle sans API (ex. upgrade du plan de stockage) ; ou une défaillance systémique / risque de perte de données. Lors du halt, écrivez la raison dans les artefacts et exposez-la — ne procédez jamais silencieusement et ne vous arrêtez jamais silencieusement.

Step 1: Resolve the active project

Résolvez <migrations-root> d'abord : utilisez REPLATFORM_MIGRATIONS_DIR quand il est défini (absolu ou relatif au cwd) ; sinon, utilisez par défaut migrations/ sous le cwd du projet hôte. Voir CONVENTIONS.md.

Déterminez <migrations-root>/<project>/ en utilisant cet ordre :

  1. Nom de projet explicite fourni par l'utilisateur.
  2. Contexte de travail actuel référençant déjà <migrations-root>/<project>/.
  3. Si exactement un projet existe sous <migrations-root>/, l'utiliser.
  4. Si plusieurs projets existent et aucun n'est clairement actif, demandez à l'utilisateur de choisir ; ne déduisez pas.

Step 2: Inspect project artifacts

Cherchez d'abord ces artefacts :

  • config/wix.env
  • config/source.<platform>.env une fois la plateforme source connue
  • source-profile.md
  • source-schema.json
  • mapping-plan.md
  • mapping-summary.md
  • setup-requirements.md
  • setup-verification.md
  • import-plan.md
  • code généré sous src/readers/, src/writers/, src/transforms/
  • execution-log.md

Réutilisez les fichiers existants s'ils existent déjà. Ne créez pas de versions parallèles du même artefact sauf si l'utilisateur demande des alternatives.

Traitez chaque artefact comme un point de contrôle complet seulement quand il est bien formé (ex. source-schema.json parse et contient au moins une entité ; les artefacts markdown sont non-vides et ne sont pas tronqués). Un artefact malformé ou partiel signifie que l'étape qui le produit N'A PAS fini — réexécutez cette étape plutôt que de traiter le fichier comme présent. Les skills doivent finir d'écrire un artefact en une seule passe pour qu'un fichier semi-écrit ne soit jamais pris pour un fichier complété.

Step 2.1: Verify project-local config files before discovery

Avant la discovery source, rendez la config du projet de migration explicite. Toute valeur qu'une skill, un script généré, ou une étape de setup s'attend à avoir comme variable d'environnement doit avoir un home dans un fichier de config local du projet sous migrations/<project>/config/.

Utilisez la syntaxe .env (KEY=value) pour que les humains puissent éditer les fichiers et que les scripts générés puissent les charger sans dépendances supplémentaires.

Secret-safe config handling

Traitez ces fichiers comme des fichiers porteurs de secrets une fois qu'ils peuvent contenir de vraies valeurs utilisateur :

  • migrations/<project>/config/wix.env
  • migrations/<project>/config/source.<platform>.env
  • tout fichier env/toml/json local équivalent portant des tokens d'auth, mots de passe, clés API, ou credentials d'application

Règles :

  • Ne jamais imprimer ou coller le contenu de ces fichiers dans la sortie d'outils, le chat, les artefacts, ou les logs.
  • Ne les lisez pas avec des commandes qui lisent le fichier entièrement et en répètent le contenu verbatim (cat, large sed, head, tail, large globs) après qu'ils peuvent être peuplés.
  • Vérifiez-les avec des vérifications sécurisées uniquement : le fichier existe, les clés requises existent, et chaque clé est présente / vide / manquante.
  • Si un fichier doit être créé comme template, créez-le avec des valeurs vides et à partir de ce moment traitez-le comme porteur de secrets même si certaines valeurs sont encore vides.
  • Quand vous rapportez le statut, nommez seulement les clés ; ne jamais inclure les valeurs, valeurs partielles, ou erreurs de redaction comme imprimer des lignes KEY=value.

Créez/vérifiez toujours :

  • config/wix.env
    • WIX_SITE_ID=
    • WIX_AUTH_TOKEN=

Après que l'utilisateur identifie le système source, créez/vérifiez la config source spécifique à l'adaptateur. Pour WordPress / WooCommerce :

  • config/source.wordpress.env
    • WP_BASE_URL=
    • WP_USERNAME=
    • WP_APPLICATION_PASSWORD=
    • WC_CONSUMER_KEY= (optionnel ; seulement quand WooCommerce n'accepte pas le WordPress Application Password)
    • WC_CONSUMER_SECRET= (optionnel ; même condition)

Workflow :

  1. Si config/wix.env manque, créez-le avec des clés vides et demandez à l'utilisateur les détails Wix manquants un par un. Si l'utilisateur fournit des valeurs en chat, remplissez le fichier pour lui.
  2. Demandez/confirmez la plateforme source avant la discovery. Une fois connue, créez le config/source.<platform>.env correspondant avec des clés vides et demandez les valeurs requises manquantes un par un.
  3. Traitez les clés requises vides comme needs-user ; ne commencez pas la discovery si la valeur manquante rendrait la discovery incomplète. Les clés optionnelles peuvent rester vides quand l'adaptateur dit qu'elles sont optionnelles.
  4. Les scripts générés doivent charger la config locale du projet en premier, puis traiter l'environnement, avec les vraies variables d'environnement autorisées à remplacer les valeurs de fichier. Les valeurs de config vides ne doivent jamais remplacer des variables d'environnement non-vides.

Ne jamais imprimer les valeurs de secrets à l'utilisateur. C'est correct de dire qu'un secret requis est présent ou manquant.

Step 2.5: Check the Wix MCP prerequisite before target-side planning

Après que la discovery soit complète suffisamment pour produire source-schema.json, mais avant de router vers rp-mapper ou toute skill ultérieure orientée Wix-cible, vérifiez si le Wix MCP nécessaire pour confirmation de schema/app/field API Wix est utilisable dans le runtime actuel.

Traitez "Wix MCP est disponible" comme un contrat runtime, pas un signal vague. La vérification doit établir tous les points suivants :

  1. Une surface d'outil Wix est présente dans la session/runtime actuelle.
  2. Cette surface est appelable maintenant, pas seulement découvrable en théorie ou installable plus tard.
  3. Elle expose la capacité de vérification dont le mapper a besoin : docs d'entité/champ/enum/app/setup Wix ou référence de schema équivalente.
  4. Si la surface exige auth/connexion, cette auth/connexion est déjà satisfaite.

Ne pas traiter aucun des points suivants comme suffisant par eux-mêmes :

  • voir le mot "Wix" dans la découverte d'outils
  • trouver un plugin/connecteur qui est installable mais non connecté
  • supposer qu'une fallback de recherche de docs est "assez bon" pour le chemin normal

Règles de décision :

  • Si les artefacts de discovery sont toujours manquants, continuez vers rp-discovery sans bloquer sur Wix MCP. Discovery est du travail côté source.
  • Si les artefacts de discovery existent et le contrat de runtime Wix MCP ci-dessus est satisfait, continuez normalement.
  • Si les artefacts de discovery existent et toute partie de ce contrat de runtime manque, d'abord tentez d'ajouter le Wix MCP dans le runtime actuel en utilisant cette config :
    {
      "mcpServers": {
        "wix-mcp-remote": {
          "type": "http",
          "url": "https://mcp.wix.com/mcp"
        }
      }
    }

    Re-vérifiez le contrat de runtime après cette tentative. Si ce n'est toujours pas satisfait, halt avant rp-mapper à un état needs-user défini avec des instructions d'installation/connexion exactes pour le Wix MCP, et dirigez l'utilisateur vers https://dev.wix.com/docs/sdk/articles/use-the-wix-mcp/about-the-wix-mcp pour les instructions d'installation.

  • Ne pas router vers rp-mapper ou rp-setup-discovery en mode fallback docs-only par défaut. Ce chemin dégradé est autorisé seulement quand l'utilisateur demande explicitement un draft provisoire sans le Wix MCP.

Recovery

  • La reprise est la défaut. Si le workflow s'est arrêté au milieu d'une migration, réexécuter l'orchestration inspecte les artefacts existants (Step 2) et route vers la première lacune matérielle. Aucun travail n'est répété inutilement.
  • Jamais d'auto-suppression. Les artefacts existants sont préservés sauf si l'utilisateur demande autrement.
  • Depuis le début est explicite et du projet entier. Seulement quand l'utilisateur demande explicitement de recommencer, supprimez le répertoire entier migrations/<project>/ et réexécutez depuis la discovery. Ne supprimez partiellement pas les étapes individuelles.

Step 3: Choose the next step

Routez selon la première lacune matérielle :

  • Fichiers de config locaux au projet manquants ou valeurs requises manquantes : créer/mettre à jour config/wix.env et, après que la plateforme source soit connue, config/source.<platform>.env; demandez à l'utilisateur les détails manquants un par un.
  • Pas de compréhension du système source : utiliser rp-discovery.
  • Schema source existe mais le contrat de runtime Wix MCP n'est pas satisfait : d'abord tentez d'ajouter le Wix MCP dans le runtime actuel en utilisant le serveur distant configuré (wix-mcp-remotehttps://mcp.wix.com/mcp) ; si le contrat de runtime n'est toujours pas satisfait, halt à needs-user avec des instructions d'installation/connexion Wix MCP exactes, incluant https://dev.wix.com/docs/sdk/articles/use-the-wix-mcp/about-the-wix-mcp, sauf si l'utilisateur demande explicitement un draft provisoire.
  • Schema source existe et le contrat de runtime Wix MCP est satisfait, mais pas de mapping approuvé : utiliser rp-mapper.
  • Plan de mapping existe mais mapping-summary.md manque : utiliser rp-mapper pour générer le summary et arrêtez-vous pour review utilisateur.
  • Summary de mapping existe mais le point de contrôle de review du mapping n'a pas été accepté : afficher mapping-summary.md, demandez à l'utilisateur de la review, et attendez l'acceptation avant de continuer.
  • Mapping existe mais les exigences côté Wix ne sont pas claires : utiliser rp-setup-discovery.
  • Mapping et exigences de setup existent mais le code d'import manque : utiliser rp-import-codegen.
  • Artefacts de setup existent mais ne sont pas vérifiés : utiliser rp-execute-setup.
  • Code et setup sont prêts : utiliser rp-execute-import.

Output

Répondez minimalement avec :

  • chemin du projet actif
  • artefacts trouvés
  • lacunes critiques
  • skill recommandée suivante exacte
  • action concrète suivante

Lors du halt sur la préalable Wix MCP, incluez aussi :

  • que la discovery est complète suffisamment pour procéder
  • que l'étape suivante bloquée est la première étape de planification orientée Wix-cible
  • si l'agent a tenté d'ajouter le serveur distant Wix MCP (wix-mcp-remotehttps://mcp.wix.com/mcp) et ce qui s'est passé
  • quelle partie du contrat de runtime a échoué : surface d'outil manquante, non appelable, capacité de schema/docs manquante, ou auth/connexion manquante
  • l'action de déblocage exacte : si la tentative d'ajout a échoué ou le serveur n'est toujours pas utilisable, installez/connectez Wix MCP en utilisant https://dev.wix.com/docs/sdk/articles/use-the-wix-mcp/about-the-wix-mcp, puis reprenez l'orchestration

Guardrails

  • Ne devinez pas le schema source quand les artefacts de discovery manquent.
  • Ne générez pas de code d'import avant qu'un plan de mapping existe.
  • Ne exécutez pas l'import avant que la vérification de setup et la review du code soient complètes.

Skills similaires