Communitygithub.com

cut-as-code

Point d'entrée obligatoire pour le travail vidéo cut-as-code. Gère le routage et la récupération de l'état du projet. La compétence feuille sélectionnée est responsable des décisions éditoriales, des portes de revue, des scripts, des détails de rendu et des auto-vérifications.

Qu'est-ce que cut-as-code ?

La compétence 'cut-as-code' sert de point d'entrée unique et obligatoire pour toutes les opérations de montage vidéo basées sur du code. Elle est conçue pour les plateformes d'agents IA telles que Claude Code, Cursor et Codex. Son rôle principal est le routage des demandes utilisateur vers la compétence feuille appropriée et la récupération fiable de l'état du projet à partir du fichier `work/project.json`. Elle ne prend jamais de décisions éditoriales ou techniques elle-même ; celles-ci sont déléguées aux compétences spécialisées (comme `/video-cut` ou `/video-color-grade`). Le routage s'effectue en fonction du livrable demandé et de l'état du projet, en suivant une table de décision stricte. La compétence orchestre également les demandes multi-opérations en exécutant les compétences dans un ordre canonique (ex. : coupe puis étalonnage puis incrustations), en évitant les conflits d'écriture concurrente et en ne relançant que les travaux non encore vérifiés. Elle garantit que l'interaction humaine est minimisée et réservée aux ambiguïtés réelles de routage ou aux décisions éditoriales nécessaires.

Compatible avec✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/WhiteTowerAI/cut-as-code/tree/main/skills/cut-as-code

Demander à votre IA préférée

Ouvre une nouvelle conversation avec cette compétence d'agent déjà préchargée.

Documentation

Point d'entrée Cut as Code

Utilisez ceci comme point d'entrée obligatoire pour le travail vidéo cut-as-code. Gère uniquement le routage et la récupération de l'état du projet. La compétence feuille sélectionnée est responsable des décisions éditoriales, des portes de revue, des scripts, des détails de rendu et des auto-vérifications.

1. Démarrer à partir de l'état du projet

Appliquez la première ligne correspondante. N'évaluez pas les lignes inférieures.

ÉtatAction
L'utilisateur nomme une opération spécifique sur un projet existantInspectez uniquement l'état nécessaire pour cette opération, puis chargez sa compétence propriétaire. Sautez la réception générale.
Une racine de projet explicite contient work/project.jsonLisez work/project.json, work/timeline.json, et uniquement le plan/les preuves de l'opération sélectionnée. Reprenez à partir de l'état enregistré. Si le propriétaire n'est pas unique, posez une seule question de routage.
L'utilisateur fournit un fichier source ou une URL, sans projet, et un livrable clairChargez /video-understand pour initialiser le projet et les preuves partagées, puis passez à l'opération demandée.
Aucun projet/source ou aucun livrable prévu n'est identifiablePosez une question concise demandant le projet/source manquant et le résultat souhaité. Ne démarrez pas encore de compétence.

La racine du projet doit être explicite ; ne traitez jamais la racine du dépôt comme un projet vidéo. Considérez work/project.json comme le seul manifeste partagé. Déterminez la progression à partir du statut de l'opération, de la révision, de basé_sur, de la vérification et de l'état du rendu, et non de la présence de répertoires. Ne réexécutez pas un travail vérifié. Si une dépendance est manquante ou obsolète, terminez d'abord cette dépendance, puis reprenez l'opération demandée.

Le routage est en lecture seule. Ne réparez, ne réinitialisez, n'approuvez, ne supprimez et n'activez jamais une opération en décidant où envoyer la tâche.

2. Router par livrable

Faites correspondre la sortie demandée, pas un mot-clé mentionné au passage.

Résultat demandéCompétence ou workflow propriétaire
Sondage, transcription, analyse objective, compréhension sémantique ou initialisation d'un nouveau projet/video-understand
Resserrer, raccourcir, supprimer les sections faibles ou créer un premier montage/ébauche/video-cut après /video-understand
Corriger la couleur, créer/sélectionner un look, ou livrer/appliquer une LUT/video-color-grade ; utilisez son chemin autonome uniquement lorsque l'utilisateur ne souhaite explicitement aucune livraison via le Project Protocol
Ajouter des incrustations visuelles synchronisées avec la transcription/video-add-b-roll après /video-understand
Ajouter des graphiques animés ou des superpositions sémantiques animées à partir de sources/video-add-graphic-motion après /video-understand
Ajouter des titres, des tiers inférieurs, des statistiques, des citations, des chapitres ou des appels à l'action/video-add-content-cards après /video-understand
Ajouter des sous-titres, des légendes ou des légendes karaoké/video-add-captions après /video-understand
Comparer l'original avec les pixels finaux réels dans le temps source/video-edit-compare après que la livraison principale vérifiée existe
Sélectionner, revoir et planifier des plages pour le format court/video-to-shorts après /video-understand ; faites ceci avant les content cards et les légendes demandées
Finaliser et extraire les dérivés format court horizontaux ou verticaux approuvésReprenez /video-to-shorts après que la livraison principale vérifiée existe
Compiler ou rendre une livraison existante du Project ProtocolUtilisez build_render_plan.py et render_project.py de /video-understand après que chaque opération active sélectionnée a passé sa propre porte

Une demande générique telle que « montez cette vidéo » ne sélectionne pas de manière unique /video-cut. Posez une question de routage à moins que le résultat souhaité ne soit clair à partir de l'état existant du projet ou de la demande environnante.

3. Orchestrer les demandes multi-opérations

Géleez uniquement les opérations que l'utilisateur a demandées ; ne transformez jamais la table de routage en package par défaut. Exécutez le prérequis de compréhension partagée une fois. Exécutez les opérations de séquence principale sélectionnées dans l'ordre canonique :

cut -> color-grade -> b-roll -> captions -> content-cards -> graphic-motion

Pour une demande qui inclut des Shorts, des content cards ou des légendes, utilisez ce flux par étapes :

/video-understand
-> /video-to-shorts planification et révision des candidats uniquement
-> /video-add-captions
-> /video-add-content-cards
-> /video-add-graphic-motion
-> compiler et rendre la livraison principale partagée une fois
-> /video-to-shorts finalisation et extraction des dérivés approuvés

Terminez toute opération modifiant la timeline demandée, telle que /video-cut, avant la planification des Shorts ; un work/timeline.json modifié invalide l'approbation des candidats. La planification des Shorts écrit l'état partagé du plan/de la revue et ne doit pas créer de final.mp4 ni quoi que ce soit sous final/shorts/. Les légendes, les content cards et les graphiques animés ajoutent ensuite leurs propres plans partagés et contributions de superposition dans cet ordre relatif. Le même ordre s'applique lorsque seule une paire est sélectionnée : légendes en premier, content cards en second, graphiques animés en dernier. Relisez work/project.json avant chaque transfert. N'exécutez pas les compétences feuilles simultanément lorsqu'elles peuvent écrire work/project.json, work/timeline.json, un plan d'opération ou des artefacts de rendu partagés. Construisez et rendez la livraison principale une fois, après que toutes les opérations actives sélectionnées sont validées. Exécutez /video-edit-compare et uniquement la phase de finalisation/extraction de /video-to-shorts contre cette livraison vérifiée ; les shorts restent en dehors de sequences.main.operations.

Pour /video-add-content-cards et /video-add-graphic-motion, réservez le visage visible et la silhouette de la tête de chaque personne principale ou au premier plan, intervenant, présentateur, interviewé, ou personne sémantiquement importante pour le repère complet. Les personnes d'arrière-plan uniquement et incidentes qui ne sont pas un centre d'intérêt narratif ou visuel sont exemptées ; protégez les cas incertains. Si une superposition touche un visage ou une tête protégé, repositionnez-la d'abord, puis redimensionnez-la ou reconcevez-la ; sautez le repère lorsqu'aucun placement conforme n'existe.

Un résultat où tout est sauté ou sans repère est valide lorsque la compétence propriétaire le permet. N'inventez pas de travail de remplissage pour maintenir une opération active.

4. Passer le relais, puis quitter

Lisez le SKILL.md complet de la compétence sélectionnée et chaque sous-compétence requise avant d'agir. Pour une seule opération, passez le relais une fois et quittez ce point d'entrée. Pour une exécution multi-opérations demandée, entrez un propriétaire à la fois ; après son auto-vérification, récupérez l'état du projet et continuez vers l'opération gelée suivante sans rouvrir la réception.

Ne demandez pas à l'utilisateur d'approuver une route qui est déjà sans ambiguïté. L'interaction utilisateur appartient uniquement aux entrées manquantes, à l'ambiguïté réelle de routage, aux identifiants ou aux décisions éditoriales/de revue requises par la compétence propriétaire. Ne remplacez jamais une décision d'Agent par une décision humaine requise, sauf si l'utilisateur la délègue explicitement.

Exemple

Pour « continuez ce projet compris et monté en ajoutant des légendes », lisez les révisions actuelles du projet et de la timeline, puis entrez /video-add-captions. Ne retranscrivez pas, ne remontez pas et ne demandez pas si les légendes sont la route prévue. Une opération en attente non liée ne change pas la route, bien qu'une opération active non vérifiée puisse bloquer le rendu partagé final et doit être signalée par le compilateur.

Règles d'échec

  • État de projet invalide : signalez le problème de validation exact ; ne réinitialisez jamais par-dessus.
  • Compétence feuille ou prérequis manquant : arrêtez-vous et nommez-le ; ne le reconstruisez pas de mémoire.
  • Chemin source/projet manquant : demandez-le dans la question de routage unique.
  • Résultats demandés contradictoires : demandez quel livrable possède l'exécution en cours.
  • Modifications ou artefacts utilisateur existants : préservez-les et travaillez avec l'état enregistré.

Individual skills in this repo

This repo contains 8 individual skills — each has its own dedicated page.

Skills associés