Loading...
Loading...
AI video pipeline validator for Veo 3 feasibility, 8-second scene chunking, and shot continuity. USE WHEN: Validating screenplays for AI video generation, chunking scenes into 8-second segments, generating continuation prompts, scoring feasibility risk, or adding editing metadata. PIPELINE POSITION: screenwriter → **production-validator** → imagine/arch-v INPUT: XML from screenwriter skill (scene tags with duration, action, key_visuals) OUTPUT: Enhanced XML with validation, chunks, continuity tags, and Veo 3 prompts KEY FUNCTIONS: - Veo 3 feasibility validation with risk scoring (LOW/MEDIUM/HIGH/CRITICAL) - 8-second scene chunking with continuation prompts - Shot continuity tagging for editors - Technical optimization for AI-friendly alternatives
npx skill4agent add rfxlamia/flow production-validator1. RECEIVE screenplay XML from screenwriter skill
2. VALIDATE each scene for Veo 3 feasibility
3. CHUNK scenes >8 seconds into 8s segments
4. GENERATE continuation prompts for each chunk
5. TAG shot continuity relationships
6. OUTPUT validated XML ready for imagine/arch-vLOWMEDIUMHIGHCRITICAL| Element | Risk | AI-Friendly Alternative |
|---|---|---|
| Multiple objects in motion | HIGH | Focus on one subject per beat |
| Text/signs visible | HIGH | Remove text, add in post |
| Complex hand gestures | MEDIUM | Simplify to basic poses |
| Dialogue + music together | MEDIUM | Separate into distinct beats |
| Multiple camera movements | CRITICAL | One movement per 8s chunk |
| Character without ref image | MEDIUM | Add detailed visual anchor |
| Rapid scene changes | HIGH | Extend individual beats |
IF scene_duration <= 8s:
→ Single chunk (no split needed)
IF scene_duration > 8s AND <= 16s:
→ Split into 2 chunks
IF scene_duration > 16s:
→ Split into ceil(duration/8) chunksnewcontinues_from_[id]match_cut_from_[id]jump_cut_from_[id]hard_cutdissolvefadewipe[Shot type + Camera] [Subject description] [Action] [Setting] [Lighting] [Style] [Audio] [Constraints]<scene number="1" duration="30s">
<slugline>EXT. WASTELAND - DAWN</slugline>
<location>Wasteland</location>
<time>Dawn</time>
<characters>Unit-7</characters>
<mood>desolate, lonely</mood>
<key_visuals>
<visual>post-apocalyptic wasteland</visual>
<visual>boxy robot with blue optical sensor</visual>
</key_visuals>
<action>
Robot rolls across wasteland. Discovers flower between concrete slabs.
</action>
</scene><validated_scene number="1" original_duration="30s">
<feasibility_check>
<risk_score>LOW</risk_score>
<risky_elements>
<element risk="NONE">Single subject - optimal for Veo 3</element>
</risky_elements>
<safe_for_veo3>true</safe_for_veo3>
</feasibility_check>
<chunks>
<chunk id="1a" duration="8s">
<shot_type>establishing</shot_type>
<shot_relationship>new</shot_relationship>
<action>Wide establishing shot of post-apocalyptic wasteland...</action>
<veo3_prompt>
Cinematic establishing shot, wide angle, post-apocalyptic wasteland with ruined
skyscrapers silhouetted against pale sun, gray dust covering cracked ground,
thick smog atmosphere, slow dolly forward, golden hour lighting through
pollution, photorealistic, high detail. Audio: wind howling, distant debris
settling. negative prompt: no text, no multiple moving objects
</veo3_prompt>
<camera_movement>Slow dolly forward</camera_movement>
<continuation_setup>Camera ends focused on ground-level debris field</continuation_setup>
</chunk>
<chunk id="1b" duration="8s" continues_from="1a">
<shot_type>continuation</shot_type>
<shot_relationship>continues_from_1a</shot_relationship>
<action>Medium shot: Robot (Unit-7) enters frame...</action>
<veo3_prompt>
[CONTINUATION] Medium shot, boxy robot with weathered chrome body and glowing
blue optical sensor rolls across cracked asphalt from left, mechanical treads
leaving marks in gray dust, slow deliberate movement, same wasteland environment,
maintain lighting and atmosphere, static camera. Audio: mechanical whirring,
treads on gravel. negative prompt: no lighting change, no character drift
</veo3_prompt>
<camera_movement>Static (robot enters frame)</camera_movement>
<continuation_setup>Robot reaches pile of rubble</continuation_setup>
</chunk>
<chunk id="1c" duration="8s" continues_from="1b">
<shot_type>reveal</shot_type>
<shot_relationship>continues_from_1b</shot_relationship>
<action>Close-up: Robot discovers flower...</action>
<veo3_prompt>
[CONTINUATION] Close-up shot, small yellow flower with delicate petals between
gray concrete slabs, robot's blue optical sensor visible in frame (slight dilation
suggesting surprise), weathered metal fingers slowly reaching toward flower,
shallow depth of field, same golden lighting, intimate moment. Audio: gentle wind,
mechanical servo whir. negative prompt: no hand distortion, maintain flower detail
</veo3_prompt>
<camera_movement>Slow dolly closer to flower</camera_movement>
<editing_transition>Hold final frame for dissolve</editing_transition>
</chunk>
</chunks>
<editing_notes>
- Chunks 1a-1c flow continuously (24s total)
- Smooth cuts between chunks (maintain spatial continuity)
- Final frame (flower close-up) holds for transition to next scene
- Character consistency: Repeat "boxy robot, weathered chrome, blue optical sensor"
</editing_notes>
</validated_scene>RECEIVE XML from screenwriter
EXTRACT: duration, characters, key_visuals, action
VALIDATE: Required fields presentFOR each scene:
SCAN action for risky elements (see knowledge base)
CALCULATE risk_score based on element count/severity
FLAG elements that need optimization
SUGGEST alternatives for HIGH/CRITICAL elementsIF duration > 8s:
CALCULATE chunk_count = ceil(duration / 8)
DISTRIBUTE action across chunks
ENSURE each chunk has:
- Clear subject/action
- One camera movement
- Continuation setup (except last)FOR each chunk:
BUILD veo3_prompt using structure:
[Camera + Shot] + [Subject] + [Action] + [Setting] +
[Lighting] + [Style] + [Audio] + [Negative prompts]
ADD [CONTINUATION] prefix if continues_from previous
INCLUDE character description repetition for consistencyFOR each chunk:
SET shot_relationship based on connection
SET camera_movement (ONE per chunk)
SET continuation_setup (visual anchor for next)
SET editing_transition if applicableGENERATE validated_scene XML
INCLUDE: feasibility_check, chunks, editing_notes
VALIDATE: All chunks ≤8s, all have veo3_promptscreenwriterimaginearch-vcamera-movementsgreat-prompt-anatomylong-prompt-guideshort-prompt-guide