Skip to content

video/recreate-from-format

Recreate From Format — generate original content following a format blueprint.

Category: video
Source: workflows/video/recreate_from_format.py

FieldTypeDefaultDescription
artifact_dirobjectOverride output directory.
asset_constraintsstring""Available asset constraints.
audiencestring""Target audience.
creator_personastringrequiredCreator persona description.
format_dna_json_pathstringrequiredPath to format_dna.json from analysis workflow.
include_ctabooleantrueInclude CTA in output.
include_edit_recipebooleantrueGenerate edit recipe.
include_overlaysbooleantrueGenerate overlay captions.
include_tts_audiobooleanfalseGenerate TTS audio.
include_voiceoverbooleantrueGenerate voiceover text.
platformstringrequiredTarget platform.
recreation_blueprint_json_pathstringrequiredPath to recreation_blueprint.json from analysis workflow.
regenerateobjectWhen set, this run is a regeneration. Workflows may read direction / keep / extra_instructions to modulate prompts; the engine persists parent_run_id and parent_variant_index as run lineage columns.
script_variantsinteger1Number of script variants to generate inside this run. Orthogonal to the engine-level variants knob (which fans out N parallel runs). Set both to multiply: variants=3 + script_variants=2 = 6 total scripts across 3 runs.
target_duration_secobjectOverride duration (default: from blueprint).
tonestringrequiredTone: energetic, calm, sarcastic, etc.
topicstringrequiredContent topic.
variantsinteger1Number of independent variant executions (1–10). When > 1, the engine runs the workflow N times with different sampling, producing N outputs.
visual_style_notesstring""Visual style guidance.
FieldTypeDefaultDescription
kindobjectVariant card shape: video / carousel / image / text. Surfaced on the per-variant entry of the run-output API and used by gallery UIs to pick the right layout.
manifest_json_pathstring""Path to recreation_manifest.json
variantsobject[]Per-variant artifact paths.
load_and_extract_constraints → generate_scripts → generate_shotlists_and_overlays → generate_edit_recipes → emit_recreation_artifacts
TaskDescription
load_and_extract_constraintsLoad format DNA and blueprint, extract recreation constraints.
generate_scriptsGenerate original scripts for each variant.
generate_shotlists_and_overlaysGenerate shotlists and overlay captions for each variant.
generate_edit_recipesGenerate edit recipes and optional TTS for each variant.
emit_recreation_artifactsWrite all per-variant artifacts to disk.

Save the YAML below as my-run.yaml, edit the values, and run with the CLI or POST it to the API. Required fields are uncommented; optional knobs are documented above the input: block — copy any line under input: and uncomment to set.

workflow: video/recreate-from-format
# Optional fields — copy any line(s) under `input:` and uncomment to set:
# Override output directory.
# artifact_dir: null
#
# Available asset constraints.
# asset_constraints: ""
#
# Target audience.
# audience: ""
#
# Include CTA in output.
# include_cta: true
#
# Generate edit recipe.
# include_edit_recipe: true
#
# Generate overlay captions.
# include_overlays: true
#
# Generate TTS audio.
# include_tts_audio: false
#
# Generate voiceover text.
# include_voiceover: true
#
# Number of script variants to generate inside this run. Orthogonal to the engine-level `variants` knob (which fans out N parallel runs). Set both to multiply: variants=3 + script_variants=2 = 6 total scripts across 3 runs.
# script_variants: 1
#
# Override duration (default: from blueprint).
# target_duration_sec: null
#
# Visual style guidance.
# visual_style_notes: ""
#
input:
# Creator persona description.
creator_persona: ""
# Path to format_dna.json from analysis workflow.
format_dna_json_path: ""
# Target platform.
platform: ""
# Path to recreation_blueprint.json from analysis workflow.
recreation_blueprint_json_path: ""
# Tone: energetic, calm, sarcastic, etc.
tone: ""
# Content topic.
topic: ""

Run it locally:

Terminal window
fab-workflow --from-file my-run.yaml

Or submit over the wire — the same file is the request body:

Terminal window
curl -X POST 'https://gofabric.dev/v1/workflows/runs?name=video/recreate-from-format' \
-H 'Authorization: Bearer fab_xxx' \
-H 'content-type: application/yaml' \
--data-binary @my-run.yaml

Every workflow also accepts the universal WorkflowInput fields — variants (1–10 fan-out) and regenerate (creative-direction hints with run lineage). See Run-specs (YAML / TOML / JSON) for the full top-level shape (metadata, priority, bundle, parent, etc.).