Que fait agent-demo-film ?
Une vidéo de démonstration ne vaut la peine d'être envoyée que si ce qui est à l'écran est réel et correspond à ce que la personne dit à cet instant. Cette compétence amène la personne à ne faire qu'une seule chose : lire un script face caméra en une seule session. Les agents font le reste : les recherches, les séquences, le script, puis la coupe et la construction.
1 préparation ─> 2 capture ─> 3 script ─(approbation)─> 4 enregistrement (la personne) ─> 5 montage ─> 6 plan de repères ─(approbation)─> 7 construction ─> 8 vérification ─> MP4
Chaque projet nécessite des séquences et une histoire différentes ; déterminez-les à partir du projet lui-même. examples/ montre deux exemples réels : une visite guidée commentée d'un produit et un film avec/sans d'une compétence d'agent. Lisez celui qui se rapproche le plus de la demande avant de planifier.
principes
- Séquences réelles uniquement. Chaque écran d'application, réponse d'agent, nombre et journal à l'écran provient d'une capture ou d'un fichier, copié par un script, jamais retapé. Si une ligne que vous voulez n'apparaît pas dans une capture, le film ne peut pas la montrer.
- L'écran suit la voix. Chaque visuel arrive sur le mot qui le nomme. Chaque temps dans la construction provient d'un identifiant de mot dans le montage, donc remonter déplace les visuels avec la voix.
- Rien n'affirme plus que les mots et les sources. Tenez une liste de faits (avec le fichier d'où chaque fait provient) et une liste « ce qui n'est pas affirmé ». Vérifiez toute citation de recherche par rapport au document lui-même (Crossref :
https://api.crossref.org/works/<doi>). - Entrée synthétique. Utilisateurs, discussions et données inventés. Pas de vrais noms ou transcriptions. Masquez les secrets et numéros de téléphone dans les séquences, et n'imprimez jamais de clé : les étapes de connexion la lisent depuis le fichier d'environnement dans un contexte non enregistré.
- Conservez chaque prise. Les scripts refusent d'écraser une capture ou une source de montage. Les enregistrements bruts restent là où la personne les a mis, et les supprimer est la décision de la personne.
- La personne approuve deux fois : le plan et le script avant l'enregistrement, et le plan de repères avant la construction. Attendez-vous à plusieurs tours de notes sur la formulation du script ; c'est le but de cette phase.
routage des modèles
Effectuez la majeure partie du travail dans des sous-agents, afin que la session principale conserve les décisions. Lorsque la personne nomme un modèle pour une étape, utilisez celui-ci.
| travail | modèle |
|---|---|
| lecture et recherche en masse de texte : fiche technique du dépôt, recherche de sujet, division de la prise en liste de montage, révision d'un script pour les marqueurs d'IA | Sonnet |
| tout ce qui lit vidéo ou images : cadrage, vérification des trames après un rendu, vérification des secrets dans les séquences, et l'essaim de repères par section (un agent par section) | Haiku |
| construction d'un nouvel outil manquant dans le pipeline, par exemple un enregistreur personnalisé | Opus |
| le plan, le script, le plan de repères et chaque appel que la personne doit approuver | la session principale |
Haiku et Sonnet ne peuvent pas entendre l'audio. Les minutages des mots proviennent uniquement de la transcription (étape 5).
1. préparation
Lisez references/prep.md. En parallèle : un agent Sonnet rédige une fiche technique à partir du dépôt (ce qu'il fait, les nombres réels avec leurs fichiers sources, les bizarreries connues à garder hors écran), et les agents Sonnet recherchent tout ce sur quoi repose l'histoire. Ensuite, rédigez le plan : sections avec secondes cibles, ce qui est à l'écran dans chacune, les séquences nécessaires pour chacune, la liste de faits et la liste « ce qui n'est pas affirmé ».
2. capture
Lisez references/capture.md. Choisissez la méthode de capture selon le projet : Playwright pour les applications web, scripts/run_take.sh pour le comportement d'agent via claude -p, un enregistreur de terminal pour les CLI, un défilement pour une page en direct. Chaque prise enregistre ses repères (envoi, réponse, arrêts de défilement) avec des horodatages, afin que la construction puisse couper les séquences sur la voix. Les agents Haiku vérifient les trames de chaque prise.
3. script
Lisez references/script.md. Écrivez uniquement le dialogue de la personne, dans des sections ## N. titre qui correspondent au plan, pour une session à environ 150 mots par minute. Des mots parlés simples dans la voix de la personne : pas de fioritures marketing ni de marqueurs d'IA. Montrez le script avec le guide d'enregistrement et attendez l'approbation.
4. enregistrement
La personne enregistre un seul fichier avec webcam et micro ensemble (OBS, l'application Appareil photo ou un téléphone). Les erreurs et les lignes redémarrées sont acceptables, car le montage prend la dernière version complète. Plusieurs fichiers fonctionnent aussi (un par section, ou une ligne de rattrapage enregistrée plus tard).
5. montage
Lisez references/cut.md.
- Transcrivez chaque prise localement :
npx hyperframes transcribe <prise> --engine parakeet. - Numérotez les mots et coupez les silences réels :
python scripts/words.py transcript.json <prise> vo --media <prise>. - Donnez la liste des phrases et le script à un agent Sonnet (
assets/SPLIT-BRIEF.md). Il écritedl.json: quelles plages de mots conserver par section, quels tics de langage et faux départs supprimer, et quelles lignes disent quelque chose que les faits ne soutiennent pas. - Interrogez la personne sur toute ligne répétée ou affirmation signalée avant de couper.
- Cadrez la webcam : un agent Haiku choisit un recadrage qui maintient la tête et les épaules sur toutes les prises à partir d'images échantillonnées, ou floutez l'arrière-plan à la place (
scripts/blur_bg.py). - Coupez :
python scripts/cut.py edl.jsonécritvo.wav,cam.mp4,timeline.jsonet un fichier de mots par section. La synchronisation labiale est maintenue car l'audio et la vidéo sont coupés sur la même grille d'images.
6. plan de repères
Un agent Haiku par section (assets/CUE-BRIEF.md) transforme les mots minutés de la section en sous-titres, repères (quel visuel tombe sur quel mot, avec sa source) et flashs. Ensuite :
python scripts/cues.py cutvérifie chaque fichier de section par rapport au montage et les fusionne dansfilm.json. Renvoyez toute erreur à l'agent qui a écrit cette section.- Rédigez le plan de repères pour la personne (
examples/samatva-support/CUE-plan.mdmontre la forme) : disposition des sections, visuels ligne par ligne, les modifications audio, et les décisions qu'elle seule peut prendre. Attendez l'approbation.
Règles de sous-titres : montrez le mot correct. Corrigez silencieusement les erreurs de transcription. Marquez un véritable lapsus avec le mot correct comme *(mot) à la place de ce qui a été dit. Affichez en grand au-dessus du sous-titre les noms, nombres et termes difficiles à saisir.
7. construction
Lisez references/hyperframes.md. Copiez assets/build_film.py dans le dossier du film. Tel quel, il construit un animatique à partir de film.json : le texte de chaque repère sur son mot, l'encart webcam par section, les sous-titres et les flashs. Rendez-le d'abord si le timing est incertain. Remplacez ensuite le corps de chaque section par les visuels réels : séquences coupées aux temps des repères, diagrammes qui se construisent à mesure que chaque partie est nommée, et cartes pour les sources.
8. vérification
Lisez references/verify.md. Dans l'ordre :
npx hyperframes check --jsonjusqu'à obtenir 0 erreurs.- Instantané à chaque temps de repère (le constructeur écrit
cues.json), et faites vérifier ces images par des agents Haiku par rapport au plan de repères et pour les fuites de secrets. - Comparez le texte à l'écran avec ses sources par script.
- Rendez la master 1080p et une copie de révision 720p.
Envoyez ensuite la copie de révision. Lorsque la personne nomme un moment (« à 1:23 je dis … »), corrigez-le avec un enregistrement de rattrapage ou un changement de repère, et revérifiez uniquement les images qui ont changé.
fichiers
scripts/words.py: transcription en mots numérotés et une liste de phrases, coupée aux silences réels.scripts/cut.py: liste de montage versvo.wav,cam.mp4ettimeline.json, synchronisés sur la grille d'images.scripts/cues.py: vérifie les fichiers de section des agents de repères et les fusionne dansfilm.json.scripts/blur_bg.py: flou d'arrière-plan local pour la webcam (RobustVideoMatting, CPU).scripts/run_take.sh,scripts/grade.py: captures réelles viaclaude -pdu comportement de l'agent, et notation.assets/build_film.py: le constructeur de départ (animatique, webcam, sous-titres, flashs).assets/edl.example.json,assets/SPLIT-BRIEF.md,assets/CUE-BRIEF.md: le format de la liste de montage et les deux briefs d'agents.references/: préparation, capture, script, montage, hyperframes, vérification.examples/samatva-support/: une visite guidée commentée d'un produit de 2:19, à partir de trois prises.examples/samatva-vent/: un court film avec/sans silencieux d'une compétence d'agent, construit à partir de vraies capturesclaude -p.