mirror of
https://github.com/calesthio/OpenMontage.git
synced 2026-08-05 15:20:40 +08:00
- ai-video-gen skill: document fal.ai as primary gateway alongside HeyGen, add video_selector-first guidance - animation.yaml: add selector-first rule in assets stage, mandatory post-render self-review in compose stage - CinematicRenderer: add resolveAsset() for staticFile path resolution, fixing file:// URI errors in OffthreadVideo and Audio components
279 lines
9.7 KiB
YAML
279 lines
9.7 KiB
YAML
name: animation
|
|
version: "2.0"
|
|
description: >
|
|
Animation-first pipeline for motion graphics, diagram-led explainers, kinetic typography,
|
|
math visuals, and stylized illustrative sequences. Features a research-first pre-production
|
|
phase: the agent researches the topic and animation techniques, proposes concepts with
|
|
animation mode selection and cost estimates, and gets explicit user approval before any
|
|
assets are generated.
|
|
category: animation
|
|
stability: production
|
|
default_checkpoint_policy: guided
|
|
|
|
# Reference video input support
|
|
reference_input:
|
|
supported: true
|
|
analysis_depth: standard
|
|
analysis_tools:
|
|
- video_analyzer
|
|
- transcript_fetcher
|
|
- video_downloader
|
|
- scene_detect
|
|
- frame_sampler
|
|
|
|
extensions:
|
|
custom_scripts: true
|
|
custom_playbooks: true
|
|
custom_skills: true
|
|
custom_tools: false
|
|
|
|
required_skills:
|
|
- pipelines/animation/executive-producer
|
|
- pipelines/animation/research-director
|
|
- pipelines/animation/proposal-director
|
|
- pipelines/animation/script-director
|
|
- pipelines/animation/scene-director
|
|
- pipelines/animation/asset-director
|
|
- pipelines/animation/edit-director
|
|
- pipelines/animation/compose-director
|
|
- pipelines/animation/publish-director
|
|
- meta/reviewer
|
|
- meta/checkpoint-protocol
|
|
|
|
orchestration:
|
|
mode: executive-producer
|
|
skill: pipelines/animation/executive-producer
|
|
budget_default_usd: 2.00
|
|
max_revisions_per_stage: 3
|
|
max_send_backs: 3
|
|
max_wall_time_minutes: 15
|
|
|
|
compatible_playbooks:
|
|
recommended:
|
|
- flat-motion-graphics
|
|
- anime-ghibli
|
|
also_works:
|
|
- clean-professional
|
|
- minimalist-diagram
|
|
custom_allowed: true
|
|
|
|
stages:
|
|
# ── Pre-Production ──────────────────────────────────────────────
|
|
|
|
- name: research
|
|
skill: pipelines/animation/research-director
|
|
produces:
|
|
- research_brief
|
|
tools_available: []
|
|
checkpoint_required: false
|
|
human_approval_default: false
|
|
review_focus:
|
|
- Content landscape mapped with at least 3 existing pieces
|
|
- Data points are specific and sourced, not vague
|
|
- Animation technique references researched (at least 2)
|
|
- At least 3 genuinely different angles discovered with animation_fit
|
|
- All angles grounded in specific research findings
|
|
success_criteria:
|
|
- Schema-valid research_brief with at least 3 data_points
|
|
- At least 3 angles_discovered, each with grounded_in references
|
|
- At least 5 sources cited with URLs
|
|
|
|
- name: proposal
|
|
skill: pipelines/animation/proposal-director
|
|
required_artifacts_in:
|
|
- research_brief
|
|
produces:
|
|
- proposal_packet
|
|
- decision_log
|
|
tools_available: []
|
|
checkpoint_required: true
|
|
human_approval_default: true
|
|
review_focus:
|
|
- Concept options are genuinely different (animation mode, structure, hook)
|
|
- Animation mode selection is grounded in technique research and tool availability
|
|
- Each concept includes a reuse strategy (motifs, templates, transition family)
|
|
- Production plan reflects actual tool availability from preflight
|
|
- Cost estimate is itemized and honest
|
|
- Free/local tool options are highlighted where applicable
|
|
- "Audio architecture decided: single narrator / character dialogue / narrator+characters"
|
|
- "Provider choice presented as comparison table with costs — agent recommends but user decides"
|
|
success_criteria:
|
|
- Schema-valid proposal_packet with at least 3 concept_options
|
|
- selected_concept includes animation_mode and reuse_strategy
|
|
- selected_concept includes audio_architecture (single_narrator | character_dialogue | narrator_plus_characters)
|
|
- cost_estimate has itemized line_items with per-tool costs
|
|
- cost_estimate includes provider_comparison table with at least 2 provider options
|
|
- approval.status is "approved" or "approved_with_changes" before proceeding
|
|
sub_stages:
|
|
- name: sample
|
|
description: "10-15 second animation preview for reference-driven productions"
|
|
condition: "video_analysis_brief_exists"
|
|
human_approval_default: true
|
|
tools_available: [tts_selector, image_selector, video_selector, video_compose, audio_mixer, math_animate, diagram_gen]
|
|
review_focus:
|
|
- "Sample represents the approved animation mode faithfully"
|
|
- "Visual identity matches approved playbook and style"
|
|
- "Pacing matches reference inspiration"
|
|
|
|
# ── Production ──────────────────────────────────────────────────
|
|
|
|
- name: script
|
|
skill: pipelines/animation/script-director
|
|
required_artifacts_in:
|
|
- proposal_packet
|
|
optional_artifacts_in:
|
|
- research_brief
|
|
produces:
|
|
- script
|
|
optional_tools:
|
|
- transcriber
|
|
tools_available:
|
|
- transcriber
|
|
checkpoint_required: true
|
|
human_approval_default: true
|
|
review_focus:
|
|
- Script beats are concise and animation-friendly
|
|
- On-screen text remains readable and restrained
|
|
- Timing structure leaves room for visual holds
|
|
- Word count within +/-10% of duration target from selected concept
|
|
- Script incorporates research data points where relevant
|
|
success_criteria:
|
|
- Schema-valid script artifact
|
|
- Script sections map to distinct animation beats
|
|
- Total duration matches selected concept target within 10%
|
|
|
|
- name: scene_plan
|
|
skill: pipelines/animation/scene-director
|
|
required_artifacts_in:
|
|
- script
|
|
optional_artifacts_in:
|
|
- proposal_packet
|
|
produces:
|
|
- scene_plan
|
|
tools_available: []
|
|
checkpoint_required: true
|
|
human_approval_default: true
|
|
review_focus:
|
|
- Scene system is coherent and follows reuse strategy from proposal
|
|
- Animation mode specified per scene, consistent with proposal
|
|
- Transition logic is limited and meaningful
|
|
- Every scene has a feasible tool path
|
|
success_criteria:
|
|
- Schema-valid scene_plan artifact
|
|
- Every scene includes animation mode and visual treatment
|
|
|
|
- name: assets
|
|
skill: pipelines/animation/asset-director
|
|
required_artifacts_in:
|
|
- scene_plan
|
|
- script
|
|
optional_artifacts_in:
|
|
- proposal_packet
|
|
produces:
|
|
- asset_manifest
|
|
required_tools:
|
|
- tts_selector
|
|
optional_tools:
|
|
- image_selector
|
|
- video_selector
|
|
- math_animate
|
|
- diagram_gen
|
|
- code_snippet
|
|
- music_gen
|
|
tools_available:
|
|
- tts_selector
|
|
- image_selector
|
|
- video_selector
|
|
- math_animate
|
|
- diagram_gen
|
|
- code_snippet
|
|
- music_gen
|
|
checkpoint_required: true
|
|
human_approval_default: false
|
|
review_focus:
|
|
- Asset production path is explicit per scene
|
|
- Reusable motifs and templates are prepared and referenced
|
|
- Missing tool paths are surfaced honestly
|
|
- Total cost within approved budget from proposal_packet
|
|
- "Layer 3 skills read for EVERY generation tool before writing prompts (check agent_skills field)"
|
|
- "Clip duration maximized (prefer 10s over 5s) to reduce API calls and cost"
|
|
- "Use selector tools (video_selector, tts_selector, image_selector) — never call provider tools directly"
|
|
success_criteria:
|
|
- Schema-valid asset_manifest artifact
|
|
- All referenced asset files exist on disk
|
|
- layer3_skills_read list is present and includes all tools used for generation
|
|
|
|
- name: edit
|
|
skill: pipelines/animation/edit-director
|
|
required_artifacts_in:
|
|
- scene_plan
|
|
- asset_manifest
|
|
optional_artifacts_in:
|
|
- script
|
|
produces:
|
|
- edit_decisions
|
|
tools_available: []
|
|
checkpoint_required: true
|
|
human_approval_default: false
|
|
review_focus:
|
|
- Hold times and staggered reveals are preserved
|
|
- Motion serves hierarchy rather than decoration
|
|
- Timeline logic is consistent across scenes
|
|
- Audio ducking configured for narration segments
|
|
success_criteria:
|
|
- Schema-valid edit_decisions artifact
|
|
- Edit decisions cover all planned animation beats
|
|
|
|
- name: compose
|
|
skill: pipelines/animation/compose-director
|
|
required_artifacts_in:
|
|
- edit_decisions
|
|
- asset_manifest
|
|
optional_artifacts_in:
|
|
- scene_plan
|
|
produces:
|
|
- render_report
|
|
- final_review
|
|
required_tools:
|
|
- video_compose
|
|
- audio_mixer
|
|
optional_tools:
|
|
- video_stitch
|
|
tools_available:
|
|
- video_compose
|
|
- audio_mixer
|
|
- video_stitch
|
|
checkpoint_required: true
|
|
human_approval_default: false
|
|
review_focus:
|
|
- Text and diagrams remain sharp at final resolution
|
|
- Motion timing survives the final render
|
|
- Audio sync matches the animatic intent
|
|
- Duration within +/-5% of target
|
|
- "Post-render self-review MANDATORY: extract keyframes, visually inspect each scene, flag weak frames before presenting to user"
|
|
success_criteria:
|
|
- Schema-valid render_report artifact
|
|
- Output file exists and passes ffprobe validation
|
|
- self_review_completed is true with per-scene quality notes
|
|
|
|
- name: publish
|
|
skill: pipelines/animation/publish-director
|
|
required_artifacts_in:
|
|
- render_report
|
|
- final_review
|
|
optional_artifacts_in:
|
|
- proposal_packet
|
|
- script
|
|
produces:
|
|
- publish_log
|
|
tools_available: []
|
|
checkpoint_required: true
|
|
human_approval_default: true
|
|
review_focus:
|
|
- Platform packaging matches the animation style
|
|
- Metadata reflects the actual topic, animation mode, and visual system
|
|
- Thumbnail concept matches the final visual language
|
|
success_criteria:
|
|
- Schema-valid publish_log artifact
|
|
- Export package contains video and metadata outputs
|