Vidéo SOP (Procédure Opérationnelle Normalisée)
Transformez un workflow observé en une vidéo qu'un débutant peut suivre sans deviner. Fournissez la source modifiable, le MP4, les sous-titres, les métadonnées de chapitres et un rapport d'évidence. La langue par défaut est celle de l'utilisateur ; utilisez le français lorsque demandé. L'apparence par défaut est blanche, bleue et sobre.
Partir de la demande réelle
Lisez le brief existant et les ressources avant de poser des questions. Ne résolvez que les inconnues qui changent le résultat : la tâche, le public, le logiciel/version, le mode de narration et la destination de sortie. Respectez une demande de pilote avant de produire une série.
Écrivez BRIEF.md dans le projet de sortie avec le résultat que l'apprenant doit atteindre, les prérequis, le périmètre, la langue, la narration, les actions autorisées et les formats de livraison. Une demande de création/exportation d'une vidéo autorise déjà son rendu local. N'ajoutez pas de validation de routine. Les téléchargements publics et les modifications de compte réels nécessitent l'autorisation correspondante.
Attribuer un producteur responsable
Lorsque la délégation est disponible, attribuez un agent producteur en utilisant agents/producer.md. Donnez-lui la propriété délimitée des fichiers, le brief, les autorisations de capture et les critères d'acceptation. L'agent coordinateur examine le résultat et le livre. Ne divisez pas les scènes entre plusieurs agents sauf si l'utilisateur demande une production parallèle.
Le producteur peut utiliser un modèle vérifié via un environnement d'agent disponible ou un CLI de fournisseur. Suivez references/models.md pour la sélection, un court test de mouvement, l'identité du modèle et l'évidence d'utilisation. N'inventez jamais d'identifiant de modèle et ne renommez pas silencieusement une demande ambiguë comme "O3.5". Si l'environnement demandé n'est pas disponible, indiquez la limitation et utilisez l'agent actuel pour une préparation indépendante ; demandez uniquement si un choix de modèle obligatoire bloque la production.
Sans outil de délégation, assurez le même rôle de producteur dans l'agent actuel et dites-le. agents/openai.yaml décrit la découverte ; il ne crée pas d'agent en arrière-plan et ne choisit pas de modèle automatiquement.
Produire la vidéo
- Observer la procédure. Lisez references/capture-and-audio.md. Utilisez l'outil de capture navigateur/native autorisé, la session connectée, l'enregistrement fourni ou la documentation publique vérifiée. Enregistrez l'écran exact, le texte des boutons, les dimensions natives de l'image, la date de capture, la variante d'interface utilisateur et si une action a réellement été exécutée. N'inventez jamais d'interface utilisateur pour un produit réel.
- Rédiger le script pédagogique. Une action ou décision par séquence : où aller, quoi cliquer, quoi vérifier, à quoi ressemble le succès. Donnez le prérequis nécessaire et le cas bloquant courant. Évitez de narrer un clic que la vidéo ne peut pas montrer. Ajoutez une capture d'écran indicative pour chaque étape actionnable et chaque modal/onglet modifié ; réutilisez un écran avec un nouveau recadrage lorsque c'est plus clair.
- Créer ou utiliser la voix d'abord. Choisissez ElevenLabs, une voix autorisée fournie/enregistrée ou l'outil de narration disponible de l'environnement. Mesurez la durée audio réelle avant de disposer les scènes. Gardez la voix/le modèle/les paramètres stables sur une série. Conservez les pauses naturelles et ajoutez suffisamment de temps d'arrêt pour inspecter les boutons. Ne générez jamais de voix silencieusement lorsque l'utilisateur a choisi son propre enregistrement.
- Construire la séquence visuelle. Suivez references/production.md. Utilisez le starter exécutable ci-dessous ou adaptez le projet approuvé. Fond blanc
#FFFFFF, titres/accents bleus#1565D8, texte marine#102A43. Une grande capture d'écran occupe la gauche ; une courte liste de vérification des actions reste à droite. Déplacez la caméra aux coordonnées réelles des boutons, gardez l'étiquette pertinente visible et utilisez un curseur/halo. Ajoutez des panneaux explicatifs seulement lorsqu'ils améliorent la compréhension. - Sous-titrer et chapitrer. Alignez les sous-titres avec la parole mesurée et divisez-les en indices lisibles. Ne laissez pas un indice survivre à sa scène. Les chapitres doivent utiliser la même chronologie que la vidéo rendue ; fournissez les chapitres texte/VTT et intégrez-les dans le MP4. L'interface utilisateur des chapitres du lecteur varie, donc conservez les fichiers latéraux.
- Vérifier et livrer. Exécutez le validateur du manifeste et les vérifications du rendu, inspectez chaque scène, regardez les transitions de clics clés et vérifiez le MP4 exporté séparément. Signalez les limitations réelles et les actions effectivement réalisées. Un fichier existant n'est pas une preuve de lecture ou de cadrage correct.
Starter exécutable
La démo incluse utilise une interface utilisateur synthétique, explicitement étiquetée à l'écran, et n'a aucune narration. C'est un exemple technique, pas une preuve concernant une application réelle.
Prérequis : Python 3.10+, Node.js compatible avec la version HyperFrames sélectionnée, FFmpeg/ffprobe et le Chrome supporté par le moteur de rendu. npx télécharge le moteur de rendu épinglé lors de la première utilisation ; GSAP est récupéré depuis son CDN déclaré lors de la compilation. L'aperçu/rendu local ne nécessite pas de compte ElevenLabs. Utilisez la documentation actuelle du moteur de rendu si une vérification de dépendance échoue.
Depuis le répertoire de cette compétence :
python3 scripts/sop.py init /path/to/new-sop
cd /path/to/new-sop
node build.mjs
npm run check
npm run preview -- --background
npm run render -- --quality delivery --output renders/video.mp4 --workers 1
Pour l'encodage GPU, ajoutez --gpu uniquement lorsque supporté. Le starter épingle une version testée du moteur de rendu pour la reproductibilité ; vérifiez les mises à jour avant de le modifier. Si la compétence HyperFrames est installée, utilisez ses recommandations actuelles de composition et de vérification. Ce paquet inclut le contrat essentiel et fonctionne sans répertoire de compétence privé.
Définissez SKILL_DIR sur le répertoire d'installation de cette compétence, puis :
python3 "$SKILL_DIR/scripts/sop.py" validate sop.json --probe
python3 "$SKILL_DIR/scripts/sop.py" chapters sop.json --output delivery
python3 "$SKILL_DIR/scripts/sop.py" embed renders/video.mp4 delivery/chapters.ffmetadata delivery/video.mp4
init refuse une destination non vide. embed refuse d'écraser une sortie et copie les flux sans ré-encodage. Voir references/manifest.md pour les champs et le timing. L'assistant ne génère pas de voix, ne se connecte pas à des sites web ni ne télécharge de fichiers.
Critères d'acceptation
- L'apprenant peut localiser chaque bouton décrit et voir l'état résultant, ou un état non exécuté/exemple clairement indiqué.
- Les données d'écran sont anonymisées dans les pixels effectivement exportés. La source publique ne contient que des ressources approuvées ; ne regroupez jamais de captures brutes privées, d'identifiants, de cookies ou de fichiers de session.
- Le texte d'interface utilisateur de petite taille reste lisible à la taille de visualisation prévue ; les zooms préservent le contexte. Pas de chevauchement liste de vérification/sous-titres ni de périodes d'inactivité inexpliquées.
- L'audio n'a pas de parole coupée, de coupes abruptes, de phrases manquantes ou de changements de voix instables. Utilisez une sonie mesurée cohérente et inspectez les pics.
- Les sous-titres et les chapitres correspondent à la durée finale. La dernière image présente un résultat/une liste de vérification utile plutôt qu'un noir accidentel.
- La livraison inclut MP4, SRT, VTT, chapitres texte/VTT, source modifiable, provenance des captures d'écran, preuve d'utilisation du modèle/voix lorsque disponible, et un rapport QA indiquant ce qui a été réellement testé.
Si la capture, la narration, le rendu ou la publication est bloqué, effectuez un travail autorisé indépendant et indiquez la capacité manquante exacte. Ne décrivez pas un storyboard, un écran synthétique ou un aperçu silencieux comme la SOP commentée finale.