videoclaw 3.0.0-alpha.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/AGENTS.md +165 -0
- package/CLAUDE.md +232 -0
- package/LICENSE +36 -0
- package/README.md +737 -0
- package/dist/cli/args.d.ts +59 -0
- package/dist/cli/args.d.ts.map +1 -0
- package/dist/cli/args.js +279 -0
- package/dist/cli/args.js.map +1 -0
- package/dist/cli/handlers/analysis.d.ts +3 -0
- package/dist/cli/handlers/analysis.d.ts.map +1 -0
- package/dist/cli/handlers/analysis.js +111 -0
- package/dist/cli/handlers/analysis.js.map +1 -0
- package/dist/cli/handlers/audio.d.ts +25 -0
- package/dist/cli/handlers/audio.d.ts.map +1 -0
- package/dist/cli/handlers/audio.js +321 -0
- package/dist/cli/handlers/audio.js.map +1 -0
- package/dist/cli/handlers/batch.d.ts +4 -0
- package/dist/cli/handlers/batch.d.ts.map +1 -0
- package/dist/cli/handlers/batch.js +424 -0
- package/dist/cli/handlers/batch.js.map +1 -0
- package/dist/cli/handlers/candidates.d.ts +10 -0
- package/dist/cli/handlers/candidates.d.ts.map +1 -0
- package/dist/cli/handlers/candidates.js +389 -0
- package/dist/cli/handlers/candidates.js.map +1 -0
- package/dist/cli/handlers/character.d.ts +8 -0
- package/dist/cli/handlers/character.d.ts.map +1 -0
- package/dist/cli/handlers/character.js +202 -0
- package/dist/cli/handlers/character.js.map +1 -0
- package/dist/cli/handlers/clone.d.ts +5 -0
- package/dist/cli/handlers/clone.d.ts.map +1 -0
- package/dist/cli/handlers/clone.js +303 -0
- package/dist/cli/handlers/clone.js.map +1 -0
- package/dist/cli/handlers/create.d.ts +5 -0
- package/dist/cli/handlers/create.d.ts.map +1 -0
- package/dist/cli/handlers/create.js +635 -0
- package/dist/cli/handlers/create.js.map +1 -0
- package/dist/cli/handlers/execution.d.ts +5 -0
- package/dist/cli/handlers/execution.d.ts.map +1 -0
- package/dist/cli/handlers/execution.js +132 -0
- package/dist/cli/handlers/execution.js.map +1 -0
- package/dist/cli/handlers/library.d.ts +8 -0
- package/dist/cli/handlers/library.d.ts.map +1 -0
- package/dist/cli/handlers/library.js +77 -0
- package/dist/cli/handlers/library.js.map +1 -0
- package/dist/cli/handlers/media-ops.d.ts +7 -0
- package/dist/cli/handlers/media-ops.d.ts.map +1 -0
- package/dist/cli/handlers/media-ops.js +120 -0
- package/dist/cli/handlers/media-ops.js.map +1 -0
- package/dist/cli/handlers/media-production.d.ts +56 -0
- package/dist/cli/handlers/media-production.d.ts.map +1 -0
- package/dist/cli/handlers/media-production.js +673 -0
- package/dist/cli/handlers/media-production.js.map +1 -0
- package/dist/cli/handlers/motion-overlay.d.ts +10 -0
- package/dist/cli/handlers/motion-overlay.d.ts.map +1 -0
- package/dist/cli/handlers/motion-overlay.js +651 -0
- package/dist/cli/handlers/motion-overlay.js.map +1 -0
- package/dist/cli/handlers/multi-shot.d.ts +2 -0
- package/dist/cli/handlers/multi-shot.d.ts.map +1 -0
- package/dist/cli/handlers/multi-shot.js +424 -0
- package/dist/cli/handlers/multi-shot.js.map +1 -0
- package/dist/cli/handlers/project-ops.d.ts +14 -0
- package/dist/cli/handlers/project-ops.d.ts.map +1 -0
- package/dist/cli/handlers/project-ops.js +241 -0
- package/dist/cli/handlers/project-ops.js.map +1 -0
- package/dist/cli/handlers/prompt-craft.d.ts +8 -0
- package/dist/cli/handlers/prompt-craft.d.ts.map +1 -0
- package/dist/cli/handlers/prompt-craft.js +397 -0
- package/dist/cli/handlers/prompt-craft.js.map +1 -0
- package/dist/cli/handlers/provider-registration.d.ts +29 -0
- package/dist/cli/handlers/provider-registration.d.ts.map +1 -0
- package/dist/cli/handlers/provider-registration.js +225 -0
- package/dist/cli/handlers/provider-registration.js.map +1 -0
- package/dist/cli/handlers/reference-sheets.d.ts +6 -0
- package/dist/cli/handlers/reference-sheets.d.ts.map +1 -0
- package/dist/cli/handlers/reference-sheets.js +181 -0
- package/dist/cli/handlers/reference-sheets.js.map +1 -0
- package/dist/cli/handlers/reporting.d.ts +18 -0
- package/dist/cli/handlers/reporting.d.ts.map +1 -0
- package/dist/cli/handlers/reporting.js +155 -0
- package/dist/cli/handlers/reporting.js.map +1 -0
- package/dist/cli/handlers/review-portal.d.ts +8 -0
- package/dist/cli/handlers/review-portal.d.ts.map +1 -0
- package/dist/cli/handlers/review-portal.js +276 -0
- package/dist/cli/handlers/review-portal.js.map +1 -0
- package/dist/cli/handlers/show.d.ts +11 -0
- package/dist/cli/handlers/show.d.ts.map +1 -0
- package/dist/cli/handlers/show.js +136 -0
- package/dist/cli/handlers/show.js.map +1 -0
- package/dist/cli/handlers/stages.d.ts +6 -0
- package/dist/cli/handlers/stages.d.ts.map +1 -0
- package/dist/cli/handlers/stages.js +333 -0
- package/dist/cli/handlers/stages.js.map +1 -0
- package/dist/cli/handlers/studio.d.ts +2 -0
- package/dist/cli/handlers/studio.d.ts.map +1 -0
- package/dist/cli/handlers/studio.js +159 -0
- package/dist/cli/handlers/studio.js.map +1 -0
- package/dist/cli/handlers/templates.d.ts +7 -0
- package/dist/cli/handlers/templates.d.ts.map +1 -0
- package/dist/cli/handlers/templates.js +61 -0
- package/dist/cli/handlers/templates.js.map +1 -0
- package/dist/cli/provider-adapter.d.ts +3 -0
- package/dist/cli/provider-adapter.d.ts.map +1 -0
- package/dist/cli/provider-adapter.js +96 -0
- package/dist/cli/provider-adapter.js.map +1 -0
- package/dist/cli/vclaw.d.ts +15 -0
- package/dist/cli/vclaw.d.ts.map +1 -0
- package/dist/cli/vclaw.js +318 -0
- package/dist/cli/vclaw.js.map +1 -0
- package/dist/index.d.ts +79 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +68 -0
- package/dist/index.js.map +1 -0
- package/dist/mcp/index.d.ts +3 -0
- package/dist/mcp/index.d.ts.map +1 -0
- package/dist/mcp/index.js +3 -0
- package/dist/mcp/index.js.map +1 -0
- package/dist/mcp/server.d.ts +27 -0
- package/dist/mcp/server.d.ts.map +1 -0
- package/dist/mcp/server.js +168 -0
- package/dist/mcp/server.js.map +1 -0
- package/dist/mcp/tools.d.ts +55 -0
- package/dist/mcp/tools.d.ts.map +1 -0
- package/dist/mcp/tools.js +80 -0
- package/dist/mcp/tools.js.map +1 -0
- package/dist/video/analyze-output.d.ts +5 -0
- package/dist/video/analyze-output.d.ts.map +1 -0
- package/dist/video/analyze-output.js +7 -0
- package/dist/video/analyze-output.js.map +1 -0
- package/dist/video/archive-project.d.ts +14 -0
- package/dist/video/archive-project.d.ts.map +1 -0
- package/dist/video/archive-project.js +41 -0
- package/dist/video/archive-project.js.map +1 -0
- package/dist/video/artifact-history.d.ts +8 -0
- package/dist/video/artifact-history.d.ts.map +1 -0
- package/dist/video/artifact-history.js +12 -0
- package/dist/video/artifact-history.js.map +1 -0
- package/dist/video/artifact-store.d.ts +8 -0
- package/dist/video/artifact-store.d.ts.map +1 -0
- package/dist/video/artifact-store.js +37 -0
- package/dist/video/artifact-store.js.map +1 -0
- package/dist/video/artifact-validation.d.ts +15 -0
- package/dist/video/artifact-validation.d.ts.map +1 -0
- package/dist/video/artifact-validation.js +287 -0
- package/dist/video/artifact-validation.js.map +1 -0
- package/dist/video/artifacts.d.ts +112 -0
- package/dist/video/artifacts.d.ts.map +1 -0
- package/dist/video/artifacts.js +31 -0
- package/dist/video/artifacts.js.map +1 -0
- package/dist/video/assemble/animate-slides.d.ts +108 -0
- package/dist/video/assemble/animate-slides.d.ts.map +1 -0
- package/dist/video/assemble/animate-slides.js +152 -0
- package/dist/video/assemble/animate-slides.js.map +1 -0
- package/dist/video/assemble/animation-styles.d.ts +21 -0
- package/dist/video/assemble/animation-styles.d.ts.map +1 -0
- package/dist/video/assemble/animation-styles.js +32 -0
- package/dist/video/assemble/animation-styles.js.map +1 -0
- package/dist/video/assemble/animation-styles.json +97 -0
- package/dist/video/assemble/assemble.d.ts +24 -0
- package/dist/video/assemble/assemble.d.ts.map +1 -0
- package/dist/video/assemble/assemble.js +457 -0
- package/dist/video/assemble/assemble.js.map +1 -0
- package/dist/video/assemble/audio-concat.d.ts +61 -0
- package/dist/video/assemble/audio-concat.d.ts.map +1 -0
- package/dist/video/assemble/audio-concat.js +108 -0
- package/dist/video/assemble/audio-concat.js.map +1 -0
- package/dist/video/assemble/audio-mix-plan.d.ts +84 -0
- package/dist/video/assemble/audio-mix-plan.d.ts.map +1 -0
- package/dist/video/assemble/audio-mix-plan.js +74 -0
- package/dist/video/assemble/audio-mix-plan.js.map +1 -0
- package/dist/video/assemble/audio-utils.d.ts +32 -0
- package/dist/video/assemble/audio-utils.d.ts.map +1 -0
- package/dist/video/assemble/audio-utils.js +91 -0
- package/dist/video/assemble/audio-utils.js.map +1 -0
- package/dist/video/assemble/cut-segment.d.ts +40 -0
- package/dist/video/assemble/cut-segment.d.ts.map +1 -0
- package/dist/video/assemble/cut-segment.js +77 -0
- package/dist/video/assemble/cut-segment.js.map +1 -0
- package/dist/video/assemble/ffmpeg.d.ts +91 -0
- package/dist/video/assemble/ffmpeg.d.ts.map +1 -0
- package/dist/video/assemble/ffmpeg.js +251 -0
- package/dist/video/assemble/ffmpeg.js.map +1 -0
- package/dist/video/assemble/gemini-vision-classify.d.ts +37 -0
- package/dist/video/assemble/gemini-vision-classify.d.ts.map +1 -0
- package/dist/video/assemble/gemini-vision-classify.js +123 -0
- package/dist/video/assemble/gemini-vision-classify.js.map +1 -0
- package/dist/video/assemble/index.d.ts +47 -0
- package/dist/video/assemble/index.d.ts.map +1 -0
- package/dist/video/assemble/index.js +40 -0
- package/dist/video/assemble/index.js.map +1 -0
- package/dist/video/assemble/media-qc.d.ts +44 -0
- package/dist/video/assemble/media-qc.d.ts.map +1 -0
- package/dist/video/assemble/media-qc.js +181 -0
- package/dist/video/assemble/media-qc.js.map +1 -0
- package/dist/video/assemble/music.d.ts +51 -0
- package/dist/video/assemble/music.d.ts.map +1 -0
- package/dist/video/assemble/music.js +171 -0
- package/dist/video/assemble/music.js.map +1 -0
- package/dist/video/assemble/narration-fit.d.ts +32 -0
- package/dist/video/assemble/narration-fit.d.ts.map +1 -0
- package/dist/video/assemble/narration-fit.js +59 -0
- package/dist/video/assemble/narration-fit.js.map +1 -0
- package/dist/video/assemble/overlay.d.ts +81 -0
- package/dist/video/assemble/overlay.d.ts.map +1 -0
- package/dist/video/assemble/overlay.js +141 -0
- package/dist/video/assemble/overlay.js.map +1 -0
- package/dist/video/assemble/pdf.d.ts +46 -0
- package/dist/video/assemble/pdf.d.ts.map +1 -0
- package/dist/video/assemble/pdf.js +111 -0
- package/dist/video/assemble/pdf.js.map +1 -0
- package/dist/video/assemble/qa-dialogue-lint.d.ts +56 -0
- package/dist/video/assemble/qa-dialogue-lint.d.ts.map +1 -0
- package/dist/video/assemble/qa-dialogue-lint.js +85 -0
- package/dist/video/assemble/qa-dialogue-lint.js.map +1 -0
- package/dist/video/assemble/qa-image-filter.d.ts +52 -0
- package/dist/video/assemble/qa-image-filter.d.ts.map +1 -0
- package/dist/video/assemble/qa-image-filter.js +102 -0
- package/dist/video/assemble/qa-image-filter.js.map +1 -0
- package/dist/video/assemble/qa-image-vision.d.ts +57 -0
- package/dist/video/assemble/qa-image-vision.d.ts.map +1 -0
- package/dist/video/assemble/qa-image-vision.js +96 -0
- package/dist/video/assemble/qa-image-vision.js.map +1 -0
- package/dist/video/assemble/qa-narration-vision.d.ts +53 -0
- package/dist/video/assemble/qa-narration-vision.d.ts.map +1 -0
- package/dist/video/assemble/qa-narration-vision.js +87 -0
- package/dist/video/assemble/qa-narration-vision.js.map +1 -0
- package/dist/video/assemble/qa-narration.d.ts +53 -0
- package/dist/video/assemble/qa-narration.d.ts.map +1 -0
- package/dist/video/assemble/qa-narration.js +85 -0
- package/dist/video/assemble/qa-narration.js.map +1 -0
- package/dist/video/assemble/stitch-ad.d.ts +88 -0
- package/dist/video/assemble/stitch-ad.d.ts.map +1 -0
- package/dist/video/assemble/stitch-ad.js +161 -0
- package/dist/video/assemble/stitch-ad.js.map +1 -0
- package/dist/video/assemble/stitch.d.ts +341 -0
- package/dist/video/assemble/stitch.d.ts.map +1 -0
- package/dist/video/assemble/stitch.js +607 -0
- package/dist/video/assemble/stitch.js.map +1 -0
- package/dist/video/assemble/text-card.d.ts +78 -0
- package/dist/video/assemble/text-card.d.ts.map +1 -0
- package/dist/video/assemble/text-card.js +210 -0
- package/dist/video/assemble/text-card.js.map +1 -0
- package/dist/video/assemble/title-card.d.ts +39 -0
- package/dist/video/assemble/title-card.d.ts.map +1 -0
- package/dist/video/assemble/title-card.js +127 -0
- package/dist/video/assemble/title-card.js.map +1 -0
- package/dist/video/assemble/transcript.d.ts +66 -0
- package/dist/video/assemble/transcript.d.ts.map +1 -0
- package/dist/video/assemble/transcript.js +200 -0
- package/dist/video/assemble/transcript.js.map +1 -0
- package/dist/video/assemble/tts-elevenlabs.d.ts +52 -0
- package/dist/video/assemble/tts-elevenlabs.d.ts.map +1 -0
- package/dist/video/assemble/tts-elevenlabs.js +118 -0
- package/dist/video/assemble/tts-elevenlabs.js.map +1 -0
- package/dist/video/assemble/tts.d.ts +79 -0
- package/dist/video/assemble/tts.d.ts.map +1 -0
- package/dist/video/assemble/tts.js +131 -0
- package/dist/video/assemble/tts.js.map +1 -0
- package/dist/video/assemble/types.d.ts +43 -0
- package/dist/video/assemble/types.d.ts.map +1 -0
- package/dist/video/assemble/types.js +2 -0
- package/dist/video/assemble/types.js.map +1 -0
- package/dist/video/assemble/upscale.d.ts +43 -0
- package/dist/video/assemble/upscale.d.ts.map +1 -0
- package/dist/video/assemble/upscale.js +52 -0
- package/dist/video/assemble/upscale.js.map +1 -0
- package/dist/video/asset-spec.d.ts +15 -0
- package/dist/video/asset-spec.d.ts.map +1 -0
- package/dist/video/asset-spec.js +43 -0
- package/dist/video/asset-spec.js.map +1 -0
- package/dist/video/asset-tag-lookup.d.ts +31 -0
- package/dist/video/asset-tag-lookup.d.ts.map +1 -0
- package/dist/video/asset-tag-lookup.js +45 -0
- package/dist/video/asset-tag-lookup.js.map +1 -0
- package/dist/video/atomic-write.d.ts +2 -0
- package/dist/video/atomic-write.d.ts.map +1 -0
- package/dist/video/atomic-write.js +7 -0
- package/dist/video/atomic-write.js.map +1 -0
- package/dist/video/audio-platform/native-elevenlabs-sfx.d.ts +29 -0
- package/dist/video/audio-platform/native-elevenlabs-sfx.d.ts.map +1 -0
- package/dist/video/audio-platform/native-elevenlabs-sfx.js +95 -0
- package/dist/video/audio-platform/native-elevenlabs-sfx.js.map +1 -0
- package/dist/video/audio-platform/native-elevenlabs-tts.d.ts +30 -0
- package/dist/video/audio-platform/native-elevenlabs-tts.d.ts.map +1 -0
- package/dist/video/audio-platform/native-elevenlabs-tts.js +95 -0
- package/dist/video/audio-platform/native-elevenlabs-tts.js.map +1 -0
- package/dist/video/audio-platform/native-flowmusic.d.ts +21 -0
- package/dist/video/audio-platform/native-flowmusic.d.ts.map +1 -0
- package/dist/video/audio-platform/native-flowmusic.js +137 -0
- package/dist/video/audio-platform/native-flowmusic.js.map +1 -0
- package/dist/video/audio-platform/native-gemini-tts.d.ts +26 -0
- package/dist/video/audio-platform/native-gemini-tts.d.ts.map +1 -0
- package/dist/video/audio-platform/native-gemini-tts.js +202 -0
- package/dist/video/audio-platform/native-gemini-tts.js.map +1 -0
- package/dist/video/audio-platform/native-lyria.d.ts +35 -0
- package/dist/video/audio-platform/native-lyria.d.ts.map +1 -0
- package/dist/video/audio-platform/native-lyria.js +189 -0
- package/dist/video/audio-platform/native-lyria.js.map +1 -0
- package/dist/video/audio-platform/native-lyria3.d.ts +36 -0
- package/dist/video/audio-platform/native-lyria3.d.ts.map +1 -0
- package/dist/video/audio-platform/native-lyria3.js +210 -0
- package/dist/video/audio-platform/native-lyria3.js.map +1 -0
- package/dist/video/audio-platform/registry.d.ts +82 -0
- package/dist/video/audio-platform/registry.d.ts.map +1 -0
- package/dist/video/audio-platform/registry.js +189 -0
- package/dist/video/audio-platform/registry.js.map +1 -0
- package/dist/video/audio-platform/suno-backend.d.ts +11 -0
- package/dist/video/audio-platform/suno-backend.d.ts.map +1 -0
- package/dist/video/audio-platform/suno-backend.js +33 -0
- package/dist/video/audio-platform/suno-backend.js.map +1 -0
- package/dist/video/audio-platform/types.d.ts +128 -0
- package/dist/video/audio-platform/types.d.ts.map +1 -0
- package/dist/video/audio-platform/types.js +9 -0
- package/dist/video/audio-platform/types.js.map +1 -0
- package/dist/video/batch-queue.d.ts +276 -0
- package/dist/video/batch-queue.d.ts.map +1 -0
- package/dist/video/batch-queue.js +519 -0
- package/dist/video/batch-queue.js.map +1 -0
- package/dist/video/blueprint-prompt.d.ts +37 -0
- package/dist/video/blueprint-prompt.d.ts.map +1 -0
- package/dist/video/blueprint-prompt.js +107 -0
- package/dist/video/blueprint-prompt.js.map +1 -0
- package/dist/video/brand-definition.d.ts +97 -0
- package/dist/video/brand-definition.d.ts.map +1 -0
- package/dist/video/brand-definition.js +206 -0
- package/dist/video/brand-definition.js.map +1 -0
- package/dist/video/brand-dna.d.ts +101 -0
- package/dist/video/brand-dna.d.ts.map +1 -0
- package/dist/video/brand-dna.js +370 -0
- package/dist/video/brand-dna.js.map +1 -0
- package/dist/video/brand-prompt.d.ts +13 -0
- package/dist/video/brand-prompt.d.ts.map +1 -0
- package/dist/video/brand-prompt.js +26 -0
- package/dist/video/brand-prompt.js.map +1 -0
- package/dist/video/candidate-migrate.d.ts +27 -0
- package/dist/video/candidate-migrate.d.ts.map +1 -0
- package/dist/video/candidate-migrate.js +119 -0
- package/dist/video/candidate-migrate.js.map +1 -0
- package/dist/video/category-registry.d.ts +38 -0
- package/dist/video/category-registry.d.ts.map +1 -0
- package/dist/video/category-registry.js +188 -0
- package/dist/video/category-registry.js.map +1 -0
- package/dist/video/chain-fallback.d.ts +39 -0
- package/dist/video/chain-fallback.d.ts.map +1 -0
- package/dist/video/chain-fallback.js +43 -0
- package/dist/video/chain-fallback.js.map +1 -0
- package/dist/video/character-auto-create.d.ts +72 -0
- package/dist/video/character-auto-create.d.ts.map +1 -0
- package/dist/video/character-auto-create.js +392 -0
- package/dist/video/character-auto-create.js.map +1 -0
- package/dist/video/character-consistency.d.ts +3 -0
- package/dist/video/character-consistency.d.ts.map +1 -0
- package/dist/video/character-consistency.js +69 -0
- package/dist/video/character-consistency.js.map +1 -0
- package/dist/video/characters.d.ts +44 -0
- package/dist/video/characters.d.ts.map +1 -0
- package/dist/video/characters.js +96 -0
- package/dist/video/characters.js.map +1 -0
- package/dist/video/checkpoints.d.ts +16 -0
- package/dist/video/checkpoints.d.ts.map +1 -0
- package/dist/video/checkpoints.js +29 -0
- package/dist/video/checkpoints.js.map +1 -0
- package/dist/video/cinema-profile.d.ts +57 -0
- package/dist/video/cinema-profile.d.ts.map +1 -0
- package/dist/video/cinema-profile.js +89 -0
- package/dist/video/cinema-profile.js.map +1 -0
- package/dist/video/cinematography.d.ts +299 -0
- package/dist/video/cinematography.d.ts.map +1 -0
- package/dist/video/cinematography.js +914 -0
- package/dist/video/cinematography.js.map +1 -0
- package/dist/video/cli-output.d.ts +52 -0
- package/dist/video/cli-output.d.ts.map +1 -0
- package/dist/video/cli-output.js +81 -0
- package/dist/video/cli-output.js.map +1 -0
- package/dist/video/cli-schema.d.ts +40 -0
- package/dist/video/cli-schema.d.ts.map +1 -0
- package/dist/video/cli-schema.js +447 -0
- package/dist/video/cli-schema.js.map +1 -0
- package/dist/video/cost-estimate.d.ts +37 -0
- package/dist/video/cost-estimate.d.ts.map +1 -0
- package/dist/video/cost-estimate.js +103 -0
- package/dist/video/cost-estimate.js.map +1 -0
- package/dist/video/csv-export.d.ts +8 -0
- package/dist/video/csv-export.d.ts.map +1 -0
- package/dist/video/csv-export.js +133 -0
- package/dist/video/csv-export.js.map +1 -0
- package/dist/video/dependencies.d.ts +23 -0
- package/dist/video/dependencies.d.ts.map +1 -0
- package/dist/video/dependencies.js +36 -0
- package/dist/video/dependencies.js.map +1 -0
- package/dist/video/dialogue-fit.d.ts +23 -0
- package/dist/video/dialogue-fit.d.ts.map +1 -0
- package/dist/video/dialogue-fit.js +38 -0
- package/dist/video/dialogue-fit.js.map +1 -0
- package/dist/video/dialogue.d.ts +77 -0
- package/dist/video/dialogue.d.ts.map +1 -0
- package/dist/video/dialogue.js +143 -0
- package/dist/video/dialogue.js.map +1 -0
- package/dist/video/director-defaults.d.ts +37 -0
- package/dist/video/director-defaults.d.ts.map +1 -0
- package/dist/video/director-defaults.js +383 -0
- package/dist/video/director-defaults.js.map +1 -0
- package/dist/video/director-preflight.d.ts +53 -0
- package/dist/video/director-preflight.d.ts.map +1 -0
- package/dist/video/director-preflight.js +462 -0
- package/dist/video/director-preflight.js.map +1 -0
- package/dist/video/doctor-portfolio.d.ts +43 -0
- package/dist/video/doctor-portfolio.d.ts.map +1 -0
- package/dist/video/doctor-portfolio.js +137 -0
- package/dist/video/doctor-portfolio.js.map +1 -0
- package/dist/video/doctor.d.ts +13 -0
- package/dist/video/doctor.d.ts.map +1 -0
- package/dist/video/doctor.js +449 -0
- package/dist/video/doctor.js.map +1 -0
- package/dist/video/emotion-cues.d.ts +15 -0
- package/dist/video/emotion-cues.d.ts.map +1 -0
- package/dist/video/emotion-cues.js +37 -0
- package/dist/video/emotion-cues.js.map +1 -0
- package/dist/video/environment-assets.d.ts +28 -0
- package/dist/video/environment-assets.d.ts.map +1 -0
- package/dist/video/environment-assets.js +43 -0
- package/dist/video/environment-assets.js.map +1 -0
- package/dist/video/environment-auto-create.d.ts +20 -0
- package/dist/video/environment-auto-create.d.ts.map +1 -0
- package/dist/video/environment-auto-create.js +88 -0
- package/dist/video/environment-auto-create.js.map +1 -0
- package/dist/video/errors.d.ts +35 -0
- package/dist/video/errors.d.ts.map +1 -0
- package/dist/video/errors.js +117 -0
- package/dist/video/errors.js.map +1 -0
- package/dist/video/events.d.ts +11 -0
- package/dist/video/events.d.ts.map +1 -0
- package/dist/video/events.js +32 -0
- package/dist/video/events.js.map +1 -0
- package/dist/video/execute-autochain.d.ts +65 -0
- package/dist/video/execute-autochain.d.ts.map +1 -0
- package/dist/video/execute-autochain.js +165 -0
- package/dist/video/execute-autochain.js.map +1 -0
- package/dist/video/execute.d.ts +27 -0
- package/dist/video/execute.d.ts.map +1 -0
- package/dist/video/execute.js +477 -0
- package/dist/video/execute.js.map +1 -0
- package/dist/video/execution-cancel.d.ts +11 -0
- package/dist/video/execution-cancel.d.ts.map +1 -0
- package/dist/video/execution-cancel.js +85 -0
- package/dist/video/execution-cancel.js.map +1 -0
- package/dist/video/execution-plan.d.ts +5 -0
- package/dist/video/execution-plan.d.ts.map +1 -0
- package/dist/video/execution-plan.js +145 -0
- package/dist/video/execution-plan.js.map +1 -0
- package/dist/video/execution-profile.d.ts +25 -0
- package/dist/video/execution-profile.d.ts.map +1 -0
- package/dist/video/execution-profile.js +124 -0
- package/dist/video/execution-profile.js.map +1 -0
- package/dist/video/execution-runtime.d.ts +104 -0
- package/dist/video/execution-runtime.d.ts.map +1 -0
- package/dist/video/execution-runtime.js +750 -0
- package/dist/video/execution-runtime.js.map +1 -0
- package/dist/video/execution-seed.d.ts +14 -0
- package/dist/video/execution-seed.d.ts.map +1 -0
- package/dist/video/execution-seed.js +29 -0
- package/dist/video/execution-seed.js.map +1 -0
- package/dist/video/execution-status.d.ts +12 -0
- package/dist/video/execution-status.d.ts.map +1 -0
- package/dist/video/execution-status.js +666 -0
- package/dist/video/execution-status.js.map +1 -0
- package/dist/video/filmmaking-prompts.d.ts +356 -0
- package/dist/video/filmmaking-prompts.d.ts.map +1 -0
- package/dist/video/filmmaking-prompts.js +1212 -0
- package/dist/video/filmmaking-prompts.js.map +1 -0
- package/dist/video/final-media.d.ts +17 -0
- package/dist/video/final-media.d.ts.map +1 -0
- package/dist/video/final-media.js +78 -0
- package/dist/video/final-media.js.map +1 -0
- package/dist/video/finish.d.ts +99 -0
- package/dist/video/finish.d.ts.map +1 -0
- package/dist/video/finish.js +159 -0
- package/dist/video/finish.js.map +1 -0
- package/dist/video/flow-character-library.d.ts +143 -0
- package/dist/video/flow-character-library.d.ts.map +1 -0
- package/dist/video/flow-character-library.js +211 -0
- package/dist/video/flow-character-library.js.map +1 -0
- package/dist/video/flow-markers.d.ts +107 -0
- package/dist/video/flow-markers.d.ts.map +1 -0
- package/dist/video/flow-markers.js +278 -0
- package/dist/video/flow-markers.js.map +1 -0
- package/dist/video/gemini-analyze.d.ts +44 -0
- package/dist/video/gemini-analyze.d.ts.map +1 -0
- package/dist/video/gemini-analyze.js +323 -0
- package/dist/video/gemini-analyze.js.map +1 -0
- package/dist/video/gemini-continuity.d.ts +40 -0
- package/dist/video/gemini-continuity.d.ts.map +1 -0
- package/dist/video/gemini-continuity.js +145 -0
- package/dist/video/gemini-continuity.js.map +1 -0
- package/dist/video/gemini-judge.d.ts +33 -0
- package/dist/video/gemini-judge.d.ts.map +1 -0
- package/dist/video/gemini-judge.js +218 -0
- package/dist/video/gemini-judge.js.map +1 -0
- package/dist/video/gemini-key-pool.d.ts +23 -0
- package/dist/video/gemini-key-pool.d.ts.map +1 -0
- package/dist/video/gemini-key-pool.js +107 -0
- package/dist/video/gemini-key-pool.js.map +1 -0
- package/dist/video/gen-image-flow.d.ts +187 -0
- package/dist/video/gen-image-flow.d.ts.map +1 -0
- package/dist/video/gen-image-flow.js +331 -0
- package/dist/video/gen-image-flow.js.map +1 -0
- package/dist/video/gen-image.d.ts +153 -0
- package/dist/video/gen-image.d.ts.map +1 -0
- package/dist/video/gen-image.js +263 -0
- package/dist/video/gen-image.js.map +1 -0
- package/dist/video/generation-telemetry.d.ts +60 -0
- package/dist/video/generation-telemetry.d.ts.map +1 -0
- package/dist/video/generation-telemetry.js +214 -0
- package/dist/video/generation-telemetry.js.map +1 -0
- package/dist/video/http-error-safety.d.ts +9 -0
- package/dist/video/http-error-safety.d.ts.map +1 -0
- package/dist/video/http-error-safety.js +14 -0
- package/dist/video/http-error-safety.js.map +1 -0
- package/dist/video/image-dimensions.d.ts +7 -0
- package/dist/video/image-dimensions.d.ts.map +1 -0
- package/dist/video/image-dimensions.js +54 -0
- package/dist/video/image-dimensions.js.map +1 -0
- package/dist/video/legacy-import.d.ts +11 -0
- package/dist/video/legacy-import.d.ts.map +1 -0
- package/dist/video/legacy-import.js +181 -0
- package/dist/video/legacy-import.js.map +1 -0
- package/dist/video/library-clean.d.ts +34 -0
- package/dist/video/library-clean.d.ts.map +1 -0
- package/dist/video/library-clean.js +340 -0
- package/dist/video/library-clean.js.map +1 -0
- package/dist/video/lipsync.d.ts +72 -0
- package/dist/video/lipsync.d.ts.map +1 -0
- package/dist/video/lipsync.js +136 -0
- package/dist/video/lipsync.js.map +1 -0
- package/dist/video/media-host.d.ts +41 -0
- package/dist/video/media-host.d.ts.map +1 -0
- package/dist/video/media-host.js +106 -0
- package/dist/video/media-host.js.map +1 -0
- package/dist/video/metrics.d.ts +30 -0
- package/dist/video/metrics.d.ts.map +1 -0
- package/dist/video/metrics.js +81 -0
- package/dist/video/metrics.js.map +1 -0
- package/dist/video/motion-overlay/analyze-reel.d.ts +38 -0
- package/dist/video/motion-overlay/analyze-reel.d.ts.map +1 -0
- package/dist/video/motion-overlay/analyze-reel.js +185 -0
- package/dist/video/motion-overlay/analyze-reel.js.map +1 -0
- package/dist/video/motion-overlay/animate-render.d.ts +63 -0
- package/dist/video/motion-overlay/animate-render.d.ts.map +1 -0
- package/dist/video/motion-overlay/animate-render.js +128 -0
- package/dist/video/motion-overlay/animate-render.js.map +1 -0
- package/dist/video/motion-overlay/animate.d.ts +37 -0
- package/dist/video/motion-overlay/animate.d.ts.map +1 -0
- package/dist/video/motion-overlay/animate.js +97 -0
- package/dist/video/motion-overlay/animate.js.map +1 -0
- package/dist/video/motion-overlay/avatar-host-transport.d.ts +161 -0
- package/dist/video/motion-overlay/avatar-host-transport.d.ts.map +1 -0
- package/dist/video/motion-overlay/avatar-host-transport.js +325 -0
- package/dist/video/motion-overlay/avatar-host-transport.js.map +1 -0
- package/dist/video/motion-overlay/avatar-host.d.ts +131 -0
- package/dist/video/motion-overlay/avatar-host.d.ts.map +1 -0
- package/dist/video/motion-overlay/avatar-host.js +131 -0
- package/dist/video/motion-overlay/avatar-host.js.map +1 -0
- package/dist/video/motion-overlay/compose-prompt.d.ts +48 -0
- package/dist/video/motion-overlay/compose-prompt.d.ts.map +1 -0
- package/dist/video/motion-overlay/compose-prompt.js +217 -0
- package/dist/video/motion-overlay/compose-prompt.js.map +1 -0
- package/dist/video/motion-overlay/execute.d.ts +190 -0
- package/dist/video/motion-overlay/execute.d.ts.map +1 -0
- package/dist/video/motion-overlay/execute.js +205 -0
- package/dist/video/motion-overlay/execute.js.map +1 -0
- package/dist/video/motion-overlay/flow-pack.d.ts +65 -0
- package/dist/video/motion-overlay/flow-pack.d.ts.map +1 -0
- package/dist/video/motion-overlay/flow-pack.js +178 -0
- package/dist/video/motion-overlay/flow-pack.js.map +1 -0
- package/dist/video/motion-overlay/ingest.d.ts +74 -0
- package/dist/video/motion-overlay/ingest.d.ts.map +1 -0
- package/dist/video/motion-overlay/ingest.js +172 -0
- package/dist/video/motion-overlay/ingest.js.map +1 -0
- package/dist/video/motion-overlay/motifs.d.ts +63 -0
- package/dist/video/motion-overlay/motifs.d.ts.map +1 -0
- package/dist/video/motion-overlay/motifs.js +192 -0
- package/dist/video/motion-overlay/motifs.js.map +1 -0
- package/dist/video/motion-overlay/motion-style.d.ts +56 -0
- package/dist/video/motion-overlay/motion-style.d.ts.map +1 -0
- package/dist/video/motion-overlay/motion-style.js +130 -0
- package/dist/video/motion-overlay/motion-style.js.map +1 -0
- package/dist/video/motion-overlay/plan.d.ts +49 -0
- package/dist/video/motion-overlay/plan.d.ts.map +1 -0
- package/dist/video/motion-overlay/plan.js +79 -0
- package/dist/video/motion-overlay/plan.js.map +1 -0
- package/dist/video/motion-overlay/preview.d.ts +36 -0
- package/dist/video/motion-overlay/preview.d.ts.map +1 -0
- package/dist/video/motion-overlay/preview.js +169 -0
- package/dist/video/motion-overlay/preview.js.map +1 -0
- package/dist/video/motion-overlay/render-local.d.ts +118 -0
- package/dist/video/motion-overlay/render-local.d.ts.map +1 -0
- package/dist/video/motion-overlay/render-local.js +298 -0
- package/dist/video/motion-overlay/render-local.js.map +1 -0
- package/dist/video/motion-overlay/run.d.ts +58 -0
- package/dist/video/motion-overlay/run.d.ts.map +1 -0
- package/dist/video/motion-overlay/run.js +147 -0
- package/dist/video/motion-overlay/run.js.map +1 -0
- package/dist/video/motion-overlay/slice.d.ts +29 -0
- package/dist/video/motion-overlay/slice.d.ts.map +1 -0
- package/dist/video/motion-overlay/slice.js +88 -0
- package/dist/video/motion-overlay/slice.js.map +1 -0
- package/dist/video/motion-overlay/transcribe.d.ts +49 -0
- package/dist/video/motion-overlay/transcribe.d.ts.map +1 -0
- package/dist/video/motion-overlay/transcribe.js +180 -0
- package/dist/video/motion-overlay/transcribe.js.map +1 -0
- package/dist/video/motion-overlay/types.d.ts +82 -0
- package/dist/video/motion-overlay/types.d.ts.map +1 -0
- package/dist/video/motion-overlay/types.js +12 -0
- package/dist/video/motion-overlay/types.js.map +1 -0
- package/dist/video/motion-overlay/v2v-transport.d.ts +37 -0
- package/dist/video/motion-overlay/v2v-transport.d.ts.map +1 -0
- package/dist/video/motion-overlay/v2v-transport.js +178 -0
- package/dist/video/motion-overlay/v2v-transport.js.map +1 -0
- package/dist/video/motion-overlay/write.d.ts +40 -0
- package/dist/video/motion-overlay/write.d.ts.map +1 -0
- package/dist/video/motion-overlay/write.js +113 -0
- package/dist/video/motion-overlay/write.js.map +1 -0
- package/dist/video/multi-shot-artifact.d.ts +19 -0
- package/dist/video/multi-shot-artifact.d.ts.map +1 -0
- package/dist/video/multi-shot-artifact.js +44 -0
- package/dist/video/multi-shot-artifact.js.map +1 -0
- package/dist/video/multi-shot-prompt.d.ts +99 -0
- package/dist/video/multi-shot-prompt.d.ts.map +1 -0
- package/dist/video/multi-shot-prompt.js +466 -0
- package/dist/video/multi-shot-prompt.js.map +1 -0
- package/dist/video/music-video.d.ts +110 -0
- package/dist/video/music-video.d.ts.map +1 -0
- package/dist/video/music-video.js +190 -0
- package/dist/video/music-video.js.map +1 -0
- package/dist/video/narrate.d.ts +58 -0
- package/dist/video/narrate.d.ts.map +1 -0
- package/dist/video/narrate.js +145 -0
- package/dist/video/narrate.js.map +1 -0
- package/dist/video/native-dreamina.d.ts +35 -0
- package/dist/video/native-dreamina.d.ts.map +1 -0
- package/dist/video/native-dreamina.js +532 -0
- package/dist/video/native-dreamina.js.map +1 -0
- package/dist/video/native-flow-r2v.d.ts +113 -0
- package/dist/video/native-flow-r2v.d.ts.map +1 -0
- package/dist/video/native-flow-r2v.js +223 -0
- package/dist/video/native-flow-r2v.js.map +1 -0
- package/dist/video/native-runway.d.ts +41 -0
- package/dist/video/native-runway.d.ts.map +1 -0
- package/dist/video/native-runway.js +523 -0
- package/dist/video/native-runway.js.map +1 -0
- package/dist/video/native-seedance.d.ts +74 -0
- package/dist/video/native-seedance.d.ts.map +1 -0
- package/dist/video/native-seedance.js +461 -0
- package/dist/video/native-seedance.js.map +1 -0
- package/dist/video/native-veo.d.ts +20 -0
- package/dist/video/native-veo.d.ts.map +1 -0
- package/dist/video/native-veo.js +390 -0
- package/dist/video/native-veo.js.map +1 -0
- package/dist/video/next-actions.d.ts +27 -0
- package/dist/video/next-actions.d.ts.map +1 -0
- package/dist/video/next-actions.js +201 -0
- package/dist/video/next-actions.js.map +1 -0
- package/dist/video/obsidian-export.d.ts +12 -0
- package/dist/video/obsidian-export.d.ts.map +1 -0
- package/dist/video/obsidian-export.js +285 -0
- package/dist/video/obsidian-export.js.map +1 -0
- package/dist/video/obsidian-sync.d.ts +13 -0
- package/dist/video/obsidian-sync.d.ts.map +1 -0
- package/dist/video/obsidian-sync.js +479 -0
- package/dist/video/obsidian-sync.js.map +1 -0
- package/dist/video/obsidian-vault.d.ts +8 -0
- package/dist/video/obsidian-vault.d.ts.map +1 -0
- package/dist/video/obsidian-vault.js +81 -0
- package/dist/video/obsidian-vault.js.map +1 -0
- package/dist/video/outfit-prompts.d.ts +10 -0
- package/dist/video/outfit-prompts.d.ts.map +1 -0
- package/dist/video/outfit-prompts.js +14 -0
- package/dist/video/outfit-prompts.js.map +1 -0
- package/dist/video/outpaint-keyframe.d.ts +95 -0
- package/dist/video/outpaint-keyframe.d.ts.map +1 -0
- package/dist/video/outpaint-keyframe.js +244 -0
- package/dist/video/outpaint-keyframe.js.map +1 -0
- package/dist/video/pipeline-manifest.d.ts +4 -0
- package/dist/video/pipeline-manifest.d.ts.map +1 -0
- package/dist/video/pipeline-manifest.js +13 -0
- package/dist/video/pipeline-manifest.js.map +1 -0
- package/dist/video/pipeline-manifests/director.json +46 -0
- package/dist/video/pipeline-manifests/storyboard.json +46 -0
- package/dist/video/platform-specs.d.ts +26 -0
- package/dist/video/platform-specs.d.ts.map +1 -0
- package/dist/video/platform-specs.js +34 -0
- package/dist/video/platform-specs.js.map +1 -0
- package/dist/video/playbooks.d.ts +11 -0
- package/dist/video/playbooks.d.ts.map +1 -0
- package/dist/video/playbooks.js +22 -0
- package/dist/video/playbooks.js.map +1 -0
- package/dist/video/post-production.d.ts +57 -0
- package/dist/video/post-production.d.ts.map +1 -0
- package/dist/video/post-production.js +210 -0
- package/dist/video/post-production.js.map +1 -0
- package/dist/video/preview-portal/audit.d.ts +4 -0
- package/dist/video/preview-portal/audit.d.ts.map +1 -0
- package/dist/video/preview-portal/audit.js +16 -0
- package/dist/video/preview-portal/audit.js.map +1 -0
- package/dist/video/preview-portal/discovery.d.ts +23 -0
- package/dist/video/preview-portal/discovery.d.ts.map +1 -0
- package/dist/video/preview-portal/discovery.js +733 -0
- package/dist/video/preview-portal/discovery.js.map +1 -0
- package/dist/video/preview-portal/generate.d.ts +42 -0
- package/dist/video/preview-portal/generate.d.ts.map +1 -0
- package/dist/video/preview-portal/generate.js +101 -0
- package/dist/video/preview-portal/generate.js.map +1 -0
- package/dist/video/preview-portal/index.d.ts +12 -0
- package/dist/video/preview-portal/index.d.ts.map +1 -0
- package/dist/video/preview-portal/index.js +8 -0
- package/dist/video/preview-portal/index.js.map +1 -0
- package/dist/video/preview-portal/publish.d.ts +48 -0
- package/dist/video/preview-portal/publish.d.ts.map +1 -0
- package/dist/video/preview-portal/publish.js +169 -0
- package/dist/video/preview-portal/publish.js.map +1 -0
- package/dist/video/preview-portal/render.d.ts +4 -0
- package/dist/video/preview-portal/render.d.ts.map +1 -0
- package/dist/video/preview-portal/render.js +822 -0
- package/dist/video/preview-portal/render.js.map +1 -0
- package/dist/video/preview-portal/shared-assets.d.ts +6 -0
- package/dist/video/preview-portal/shared-assets.d.ts.map +1 -0
- package/dist/video/preview-portal/shared-assets.js +452 -0
- package/dist/video/preview-portal/shared-assets.js.map +1 -0
- package/dist/video/preview-portal/templates.d.ts +4 -0
- package/dist/video/preview-portal/templates.d.ts.map +1 -0
- package/dist/video/preview-portal/templates.js +109 -0
- package/dist/video/preview-portal/templates.js.map +1 -0
- package/dist/video/preview-portal/types.d.ts +246 -0
- package/dist/video/preview-portal/types.d.ts.map +1 -0
- package/dist/video/preview-portal/types.js +28 -0
- package/dist/video/preview-portal/types.js.map +1 -0
- package/dist/video/product-references.d.ts +21 -0
- package/dist/video/product-references.d.ts.map +1 -0
- package/dist/video/product-references.js +25 -0
- package/dist/video/product-references.js.map +1 -0
- package/dist/video/project-blueprint.d.ts +178 -0
- package/dist/video/project-blueprint.d.ts.map +1 -0
- package/dist/video/project-blueprint.js +286 -0
- package/dist/video/project-blueprint.js.map +1 -0
- package/dist/video/project-index.d.ts +82 -0
- package/dist/video/project-index.d.ts.map +1 -0
- package/dist/video/project-index.js +89 -0
- package/dist/video/project-index.js.map +1 -0
- package/dist/video/projects.d.ts +3 -0
- package/dist/video/projects.d.ts.map +1 -0
- package/dist/video/projects.js +18 -0
- package/dist/video/projects.js.map +1 -0
- package/dist/video/prompt-guidance.d.ts +14 -0
- package/dist/video/prompt-guidance.d.ts.map +1 -0
- package/dist/video/prompt-guidance.js +44 -0
- package/dist/video/prompt-guidance.js.map +1 -0
- package/dist/video/prompt-library.d.ts +11 -0
- package/dist/video/prompt-library.d.ts.map +1 -0
- package/dist/video/prompt-library.js +85 -0
- package/dist/video/prompt-library.js.map +1 -0
- package/dist/video/prompt-lint.d.ts +146 -0
- package/dist/video/prompt-lint.d.ts.map +1 -0
- package/dist/video/prompt-lint.js +433 -0
- package/dist/video/prompt-lint.js.map +1 -0
- package/dist/video/prompt-quality.d.ts +29 -0
- package/dist/video/prompt-quality.d.ts.map +1 -0
- package/dist/video/prompt-quality.js +532 -0
- package/dist/video/prompt-quality.js.map +1 -0
- package/dist/video/prompt-rules.d.ts +94 -0
- package/dist/video/prompt-rules.d.ts.map +1 -0
- package/dist/video/prompt-rules.js +169 -0
- package/dist/video/prompt-rules.js.map +1 -0
- package/dist/video/provider-adapter-runner.d.ts +5 -0
- package/dist/video/provider-adapter-runner.d.ts.map +1 -0
- package/dist/video/provider-adapter-runner.js +92 -0
- package/dist/video/provider-adapter-runner.js.map +1 -0
- package/dist/video/provider-platform/index.d.ts +6 -0
- package/dist/video/provider-platform/index.d.ts.map +1 -0
- package/dist/video/provider-platform/index.js +6 -0
- package/dist/video/provider-platform/index.js.map +1 -0
- package/dist/video/provider-platform/registry.d.ts +5 -0
- package/dist/video/provider-platform/registry.d.ts.map +1 -0
- package/dist/video/provider-platform/registry.js +279 -0
- package/dist/video/provider-platform/registry.js.map +1 -0
- package/dist/video/provider-platform/route-capabilities.d.ts +133 -0
- package/dist/video/provider-platform/route-capabilities.d.ts.map +1 -0
- package/dist/video/provider-platform/route-capabilities.js +192 -0
- package/dist/video/provider-platform/route-capabilities.js.map +1 -0
- package/dist/video/provider-platform/router.d.ts +7 -0
- package/dist/video/provider-platform/router.d.ts.map +1 -0
- package/dist/video/provider-platform/router.js +150 -0
- package/dist/video/provider-platform/router.js.map +1 -0
- package/dist/video/provider-platform/security.d.ts +8 -0
- package/dist/video/provider-platform/security.d.ts.map +1 -0
- package/dist/video/provider-platform/security.js +21 -0
- package/dist/video/provider-platform/security.js.map +1 -0
- package/dist/video/provider-platform/telemetry.d.ts +24 -0
- package/dist/video/provider-platform/telemetry.d.ts.map +1 -0
- package/dist/video/provider-platform/telemetry.js +88 -0
- package/dist/video/provider-platform/telemetry.js.map +1 -0
- package/dist/video/provider-platform/types.d.ts +139 -0
- package/dist/video/provider-platform/types.d.ts.map +1 -0
- package/dist/video/provider-platform/types.js +17 -0
- package/dist/video/provider-platform/types.js.map +1 -0
- package/dist/video/provider-status.d.ts +12 -0
- package/dist/video/provider-status.d.ts.map +1 -0
- package/dist/video/provider-status.js +169 -0
- package/dist/video/provider-status.js.map +1 -0
- package/dist/video/providers/dreamina-useapi.d.ts +170 -0
- package/dist/video/providers/dreamina-useapi.d.ts.map +1 -0
- package/dist/video/providers/dreamina-useapi.js +176 -0
- package/dist/video/providers/dreamina-useapi.js.map +1 -0
- package/dist/video/providers/flowmusic-useapi.d.ts +114 -0
- package/dist/video/providers/flowmusic-useapi.d.ts.map +1 -0
- package/dist/video/providers/flowmusic-useapi.js +159 -0
- package/dist/video/providers/flowmusic-useapi.js.map +1 -0
- package/dist/video/providers/google-flow.d.ts +57 -0
- package/dist/video/providers/google-flow.d.ts.map +1 -0
- package/dist/video/providers/google-flow.js +63 -0
- package/dist/video/providers/google-flow.js.map +1 -0
- package/dist/video/providers/public-host.d.ts +40 -0
- package/dist/video/providers/public-host.d.ts.map +1 -0
- package/dist/video/providers/public-host.js +91 -0
- package/dist/video/providers/public-host.js.map +1 -0
- package/dist/video/providers/runway-useapi.d.ts +159 -0
- package/dist/video/providers/runway-useapi.d.ts.map +1 -0
- package/dist/video/providers/runway-useapi.js +200 -0
- package/dist/video/providers/runway-useapi.js.map +1 -0
- package/dist/video/providers/xskill.d.ts +108 -0
- package/dist/video/providers/xskill.d.ts.map +1 -0
- package/dist/video/providers/xskill.js +233 -0
- package/dist/video/providers/xskill.js.map +1 -0
- package/dist/video/readiness.d.ts +18 -0
- package/dist/video/readiness.d.ts.map +1 -0
- package/dist/video/readiness.js +221 -0
- package/dist/video/readiness.js.map +1 -0
- package/dist/video/reference-sheet-store.d.ts +5 -0
- package/dist/video/reference-sheet-store.d.ts.map +1 -0
- package/dist/video/reference-sheet-store.js +28 -0
- package/dist/video/reference-sheet-store.js.map +1 -0
- package/dist/video/reference-sheets.d.ts +40 -0
- package/dist/video/reference-sheets.d.ts.map +1 -0
- package/dist/video/reference-sheets.js +160 -0
- package/dist/video/reference-sheets.js.map +1 -0
- package/dist/video/remix-narrated.d.ts +12 -0
- package/dist/video/remix-narrated.d.ts.map +1 -0
- package/dist/video/remix-narrated.js +73 -0
- package/dist/video/remix-narrated.js.map +1 -0
- package/dist/video/report-diff.d.ts +89 -0
- package/dist/video/report-diff.d.ts.map +1 -0
- package/dist/video/report-diff.js +176 -0
- package/dist/video/report-diff.js.map +1 -0
- package/dist/video/report-history.d.ts +40 -0
- package/dist/video/report-history.d.ts.map +1 -0
- package/dist/video/report-history.js +74 -0
- package/dist/video/report-history.js.map +1 -0
- package/dist/video/report.d.ts +15 -0
- package/dist/video/report.d.ts.map +1 -0
- package/dist/video/report.js +21 -0
- package/dist/video/report.js.map +1 -0
- package/dist/video/review-ui.d.ts +180 -0
- package/dist/video/review-ui.d.ts.map +1 -0
- package/dist/video/review-ui.js +2008 -0
- package/dist/video/review-ui.js.map +1 -0
- package/dist/video/scene-candidate-store.d.ts +12 -0
- package/dist/video/scene-candidate-store.d.ts.map +1 -0
- package/dist/video/scene-candidate-store.js +134 -0
- package/dist/video/scene-candidate-store.js.map +1 -0
- package/dist/video/scene-candidates.d.ts +57 -0
- package/dist/video/scene-candidates.d.ts.map +1 -0
- package/dist/video/scene-candidates.js +149 -0
- package/dist/video/scene-candidates.js.map +1 -0
- package/dist/video/scene-selection-store.d.ts +5 -0
- package/dist/video/scene-selection-store.d.ts.map +1 -0
- package/dist/video/scene-selection-store.js +22 -0
- package/dist/video/scene-selection-store.js.map +1 -0
- package/dist/video/scene-selection.d.ts +83 -0
- package/dist/video/scene-selection.d.ts.map +1 -0
- package/dist/video/scene-selection.js +225 -0
- package/dist/video/scene-selection.js.map +1 -0
- package/dist/video/scheduling.d.ts +3 -0
- package/dist/video/scheduling.d.ts.map +1 -0
- package/dist/video/scheduling.js +16 -0
- package/dist/video/scheduling.js.map +1 -0
- package/dist/video/scorecard.d.ts +12 -0
- package/dist/video/scorecard.d.ts.map +1 -0
- package/dist/video/scorecard.js +68 -0
- package/dist/video/scorecard.js.map +1 -0
- package/dist/video/seedance-asset-library.d.ts +82 -0
- package/dist/video/seedance-asset-library.d.ts.map +1 -0
- package/dist/video/seedance-asset-library.js +146 -0
- package/dist/video/seedance-asset-library.js.map +1 -0
- package/dist/video/seedance-blocks.d.ts +56 -0
- package/dist/video/seedance-blocks.d.ts.map +1 -0
- package/dist/video/seedance-blocks.js +97 -0
- package/dist/video/seedance-blocks.js.map +1 -0
- package/dist/video/seedance-chain-host.d.ts +42 -0
- package/dist/video/seedance-chain-host.d.ts.map +1 -0
- package/dist/video/seedance-chain-host.js +128 -0
- package/dist/video/seedance-chain-host.js.map +1 -0
- package/dist/video/seedance-content-filter.d.ts +80 -0
- package/dist/video/seedance-content-filter.d.ts.map +1 -0
- package/dist/video/seedance-content-filter.js +293 -0
- package/dist/video/seedance-content-filter.js.map +1 -0
- package/dist/video/seedance-skill-loader.d.ts +40 -0
- package/dist/video/seedance-skill-loader.d.ts.map +1 -0
- package/dist/video/seedance-skill-loader.js +53 -0
- package/dist/video/seedance-skill-loader.js.map +1 -0
- package/dist/video/sfx.d.ts +49 -0
- package/dist/video/sfx.d.ts.map +1 -0
- package/dist/video/sfx.js +104 -0
- package/dist/video/sfx.js.map +1 -0
- package/dist/video/shot-grammar.d.ts +103 -0
- package/dist/video/shot-grammar.d.ts.map +1 -0
- package/dist/video/shot-grammar.js +286 -0
- package/dist/video/shot-grammar.js.map +1 -0
- package/dist/video/show-bible.d.ts +113 -0
- package/dist/video/show-bible.d.ts.map +1 -0
- package/dist/video/show-bible.js +140 -0
- package/dist/video/show-bible.js.map +1 -0
- package/dist/video/soundtrack.d.ts +72 -0
- package/dist/video/soundtrack.d.ts.map +1 -0
- package/dist/video/soundtrack.js +171 -0
- package/dist/video/soundtrack.js.map +1 -0
- package/dist/video/stage-guards.d.ts +4 -0
- package/dist/video/stage-guards.d.ts.map +1 -0
- package/dist/video/stage-guards.js +94 -0
- package/dist/video/stage-guards.js.map +1 -0
- package/dist/video/status.d.ts +69 -0
- package/dist/video/status.d.ts.map +1 -0
- package/dist/video/status.js +245 -0
- package/dist/video/status.js.map +1 -0
- package/dist/video/story-bible.d.ts +70 -0
- package/dist/video/story-bible.d.ts.map +1 -0
- package/dist/video/story-bible.js +181 -0
- package/dist/video/story-bible.js.map +1 -0
- package/dist/video/storyboard-grid.d.ts +28 -0
- package/dist/video/storyboard-grid.d.ts.map +1 -0
- package/dist/video/storyboard-grid.js +231 -0
- package/dist/video/storyboard-grid.js.map +1 -0
- package/dist/video/storyboard-markdown.d.ts +62 -0
- package/dist/video/storyboard-markdown.d.ts.map +1 -0
- package/dist/video/storyboard-markdown.js +332 -0
- package/dist/video/storyboard-markdown.js.map +1 -0
- package/dist/video/storyboard-still-candidates.d.ts +31 -0
- package/dist/video/storyboard-still-candidates.d.ts.map +1 -0
- package/dist/video/storyboard-still-candidates.js +57 -0
- package/dist/video/storyboard-still-candidates.js.map +1 -0
- package/dist/video/storyboard-templates.d.ts +28 -0
- package/dist/video/storyboard-templates.d.ts.map +1 -0
- package/dist/video/storyboard-templates.js +215 -0
- package/dist/video/storyboard-templates.js.map +1 -0
- package/dist/video/studio/execute.d.ts +142 -0
- package/dist/video/studio/execute.d.ts.map +1 -0
- package/dist/video/studio/execute.js +270 -0
- package/dist/video/studio/execute.js.map +1 -0
- package/dist/video/studio/planner.d.ts +3 -0
- package/dist/video/studio/planner.d.ts.map +1 -0
- package/dist/video/studio/planner.js +110 -0
- package/dist/video/studio/planner.js.map +1 -0
- package/dist/video/studio/project-context.d.ts +4 -0
- package/dist/video/studio/project-context.d.ts.map +1 -0
- package/dist/video/studio/project-context.js +20 -0
- package/dist/video/studio/project-context.js.map +1 -0
- package/dist/video/studio/recipes.d.ts +4 -0
- package/dist/video/studio/recipes.d.ts.map +1 -0
- package/dist/video/studio/recipes.js +343 -0
- package/dist/video/studio/recipes.js.map +1 -0
- package/dist/video/studio/session.d.ts +8 -0
- package/dist/video/studio/session.d.ts.map +1 -0
- package/dist/video/studio/session.js +17 -0
- package/dist/video/studio/session.js.map +1 -0
- package/dist/video/studio/types.d.ts +59 -0
- package/dist/video/studio/types.d.ts.map +1 -0
- package/dist/video/studio/types.js +2 -0
- package/dist/video/studio/types.js.map +1 -0
- package/dist/video/template-store.d.ts +65 -0
- package/dist/video/template-store.d.ts.map +1 -0
- package/dist/video/template-store.js +168 -0
- package/dist/video/template-store.js.map +1 -0
- package/dist/video/timeline.d.ts +8 -0
- package/dist/video/timeline.d.ts.map +1 -0
- package/dist/video/timeline.js +21 -0
- package/dist/video/timeline.js.map +1 -0
- package/dist/video/title-overlay.d.ts +85 -0
- package/dist/video/title-overlay.d.ts.map +1 -0
- package/dist/video/title-overlay.js +163 -0
- package/dist/video/title-overlay.js.map +1 -0
- package/dist/video/types.d.ts +403 -0
- package/dist/video/types.d.ts.map +1 -0
- package/dist/video/types.js +2 -0
- package/dist/video/types.js.map +1 -0
- package/dist/video/veo-subprocess.d.ts +27 -0
- package/dist/video/veo-subprocess.d.ts.map +1 -0
- package/dist/video/veo-subprocess.js +52 -0
- package/dist/video/veo-subprocess.js.map +1 -0
- package/dist/video/verify-env.d.ts +43 -0
- package/dist/video/verify-env.d.ts.map +1 -0
- package/dist/video/verify-env.js +156 -0
- package/dist/video/verify-env.js.map +1 -0
- package/dist/video/verify-final.d.ts +20 -0
- package/dist/video/verify-final.d.ts.map +1 -0
- package/dist/video/verify-final.js +39 -0
- package/dist/video/verify-final.js.map +1 -0
- package/dist/video/video-context.d.ts +10 -0
- package/dist/video/video-context.d.ts.map +1 -0
- package/dist/video/video-context.js +74 -0
- package/dist/video/video-context.js.map +1 -0
- package/dist/video/vocal-map.d.ts +55 -0
- package/dist/video/vocal-map.d.ts.map +1 -0
- package/dist/video/vocal-map.js +107 -0
- package/dist/video/vocal-map.js.map +1 -0
- package/dist/video/vocal-sync-plan.d.ts +76 -0
- package/dist/video/vocal-sync-plan.d.ts.map +1 -0
- package/dist/video/vocal-sync-plan.js +166 -0
- package/dist/video/vocal-sync-plan.js.map +1 -0
- package/dist/video/voice-clone.d.ts +152 -0
- package/dist/video/voice-clone.d.ts.map +1 -0
- package/dist/video/voice-clone.js +267 -0
- package/dist/video/voice-clone.js.map +1 -0
- package/dist/video/with-retry.d.ts +67 -0
- package/dist/video/with-retry.d.ts.map +1 -0
- package/dist/video/with-retry.js +105 -0
- package/dist/video/with-retry.js.map +1 -0
- package/dist/video/workload.d.ts +20 -0
- package/dist/video/workload.d.ts.map +1 -0
- package/dist/video/workload.js +55 -0
- package/dist/video/workload.js.map +1 -0
- package/dist/video/workspace.d.ts +109 -0
- package/dist/video/workspace.d.ts.map +1 -0
- package/dist/video/workspace.js +132 -0
- package/dist/video/workspace.js.map +1 -0
- package/docs/AGENT_INTEGRATION_RESEARCH.md +123 -0
- package/docs/AI_FILMMAKING_PROMPTS.md +195 -0
- package/docs/ARCHITECTURE.md +257 -0
- package/docs/ASSEMBLE.md +376 -0
- package/docs/BRAND_AGENCY.md +63 -0
- package/docs/CLAWBOT_COVERAGE_PROMPT.md +78 -0
- package/docs/CLI_REFERENCE.md +2638 -0
- package/docs/CONCIERGE_PROMPT.md +139 -0
- package/docs/Claude Code + Higgsfield MCP = FULL Creative Agency.md +179 -0
- package/docs/DEMO_RECORDING.md +61 -0
- package/docs/DEPRECATION.md +79 -0
- package/docs/DIAGRAMS_SOURCE.md +347 -0
- package/docs/DIRECTOR_BLUEPRINT.md +94 -0
- package/docs/GENERATION_TELEMETRY.md +81 -0
- package/docs/IMPROVE_PROMPT.md +76 -0
- package/docs/INFOGRAPHICS_PROMPT.md +83 -0
- package/docs/MASTER_PLAN_ALIGNMENT.md +563 -0
- package/docs/MIGRATION.md +213 -0
- package/docs/MOTION_OVERLAY.md +355 -0
- package/docs/OBSIDIAN.md +300 -0
- package/docs/OPERATIONS.md +142 -0
- package/docs/OPERATOR_HANDOFF.md +108 -0
- package/docs/PRODUCTION_WORKFLOW.md +148 -0
- package/docs/PROJECT_LAYOUT.md +262 -0
- package/docs/PROMPT_QUALITY.md +214 -0
- package/docs/PROVIDER_PLATFORM.md +195 -0
- package/docs/PUBLISHING.md +175 -0
- package/docs/PYTHON_PIPELINE.md +139 -0
- package/docs/REFERENCE_SHEETS.md +469 -0
- package/docs/REFERENCE_VIDEO_SEEDANCE_MOTION_DESIGN_WORKFLOW.md +465 -0
- package/docs/RELEASE_READINESS.md +573 -0
- package/docs/REVIEW_UI_STORYBOARD_WORKFLOW.md +200 -0
- package/docs/SCENE_CANDIDATES.md +518 -0
- package/docs/SKILLS.md +477 -0
- package/docs/SKILL_COHESION_PROMPT.md +88 -0
- package/docs/STORY_BIBLE.md +288 -0
- package/docs/STUDIO.md +96 -0
- package/docs/TEMPLATES.md +143 -0
- package/docs/UNIFICATION_AUDIT.md +321 -0
- package/docs/UPDATE_DOCS_PROMPT.md +78 -0
- package/docs/assets/demo-quickstart.cast +13 -0
- package/docs/assets/demo-quickstart.gif +0 -0
- package/docs/assets/diagram-architecture.jpg +0 -0
- package/docs/assets/diagram-assemble.jpg +0 -0
- package/docs/assets/diagram-lifecycle.jpg +0 -0
- package/docs/assets/diagram-obsidian-loop.jpg +0 -0
- package/docs/assets/diagram-obsidian-vault.jpg +0 -0
- package/docs/assets/diagram-routing.jpg +0 -0
- package/docs/assets/diagram-skills-ecosystem.jpg +0 -0
- package/docs/assets/diagram-story-bible.jpg +0 -0
- package/docs/assets/diagram-studio-goals.jpg +0 -0
- package/docs/assets/docsite-preview.png +0 -0
- package/docs/assets/logo.jpg +0 -0
- package/docs/assets/logo.png +0 -0
- package/docs/preview-portal-audit.md +151 -0
- package/package.json +119 -0
- package/playbooks/seedance-ugc.json +32 -0
- package/playbooks/veo-generic.json +26 -0
- package/references/video/.fixtures/multi-shot-runway-10s.txt +9 -0
- package/references/video/.fixtures/multi-shot-seedance-10s.txt +9 -0
- package/references/video/.fixtures/multi-shot-valid.txt +13 -0
- package/references/video/.fixtures/multi-shot-veo-8s.txt +9 -0
- package/references/video/ai-director-blueprint.md +614 -0
- package/references/video/camera-bible.md +294 -0
- package/references/video/character-reference-sheet.md +14 -0
- package/references/video/checkpoint-protocol.md +26 -0
- package/references/video/clone-ad-template-workflow.md +14 -0
- package/references/video/dialogue-duration-preflight.md +17 -0
- package/references/video/generation-telemetry.md +18 -0
- package/references/video/multi-shot-framework.md +455 -0
- package/references/video/seedance-skills/01-cinematic.md +1329 -0
- package/references/video/seedance-skills/02-3d-cgi.md +884 -0
- package/references/video/seedance-skills/03-cartoon.md +1668 -0
- package/references/video/seedance-skills/04-comic-to-video.md +1810 -0
- package/references/video/seedance-skills/05-fight-scenes.md +741 -0
- package/references/video/seedance-skills/06-motion-design-ad.md +1145 -0
- package/references/video/seedance-skills/07-ecommerce-ad.md +928 -0
- package/references/video/seedance-skills/08-anime-action.md +1145 -0
- package/references/video/seedance-skills/09-product-360.md +988 -0
- package/references/video/seedance-skills/10-music-video.md +1662 -0
- package/references/video/seedance-skills/11-social-hook.md +1874 -0
- package/references/video/seedance-skills/12-brand-story.md +1151 -0
- package/references/video/seedance-skills/13-fashion-lookbook.md +1236 -0
- package/references/video/seedance-skills/14-food-beverage.md +1110 -0
- package/references/video/seedance-skills/15-real-estate.md +2344 -0
- package/references/video/seedance-transport-payloads.md +144 -0
- package/references/video/seedance-ugc-formulas.md +104 -0
- package/references/video/stage-directors.md +47 -0
- package/references/video/style-template-schema.md +40 -0
- package/references/video/veo-prompting-guide.md +42 -0
- package/schemas/video/artifacts/analyze-output.schema.json +60 -0
- package/schemas/video/artifacts/assemble-report.schema.json +116 -0
- package/schemas/video/artifacts/asset-manifest.schema.json +23 -0
- package/schemas/video/artifacts/batch-queue-manifest.schema.json +59 -0
- package/schemas/video/artifacts/brand-definition.schema.json +93 -0
- package/schemas/video/artifacts/brand-dna.schema.json +55 -0
- package/schemas/video/artifacts/brief.schema.json +13 -0
- package/schemas/video/artifacts/clone-plan.schema.json +44 -0
- package/schemas/video/artifacts/dialogue.schema.json +52 -0
- package/schemas/video/artifacts/environment-assets.schema.json +30 -0
- package/schemas/video/artifacts/execution-plan.schema.json +64 -0
- package/schemas/video/artifacts/execution-report.schema.json +37 -0
- package/schemas/video/artifacts/filmmaking-prompts.schema.json +129 -0
- package/schemas/video/artifacts/flow-characters.schema.json +31 -0
- package/schemas/video/artifacts/flow-voices.schema.json +30 -0
- package/schemas/video/artifacts/motion-overlay-plan.schema.json +50 -0
- package/schemas/video/artifacts/multi-shot-prompt.schema.json +90 -0
- package/schemas/video/artifacts/music-video-config.schema.json +108 -0
- package/schemas/video/artifacts/narration.schema.json +54 -0
- package/schemas/video/artifacts/product-references.schema.json +29 -0
- package/schemas/video/artifacts/project-blueprint.schema.json +236 -0
- package/schemas/video/artifacts/publish-report.schema.json +12 -0
- package/schemas/video/artifacts/reference-sheets.schema.json +85 -0
- package/schemas/video/artifacts/review-report.schema.json +12 -0
- package/schemas/video/artifacts/scene-candidates.schema.json +86 -0
- package/schemas/video/artifacts/scene-selection.schema.json +50 -0
- package/schemas/video/artifacts/seedance-assets.schema.json +31 -0
- package/schemas/video/artifacts/sfx.schema.json +31 -0
- package/schemas/video/artifacts/show-bible.schema.json +66 -0
- package/schemas/video/artifacts/soundtrack.schema.json +39 -0
- package/schemas/video/artifacts/story-bible.schema.json +131 -0
- package/schemas/video/artifacts/storyboard.schema.json +58 -0
- package/schemas/video/artifacts/voice-clones.schema.json +37 -0
- package/schemas/video/brand-profile.schema.json +20 -0
- package/schemas/video/errors.json +48 -0
- package/schemas/video/pipeline-manifest.schema.json +51 -0
- package/skills/README.md +113 -0
- package/skills/ai-director/SKILL.md +140 -0
- package/skills/ai-filmmaking/SKILL.md +239 -0
- package/skills/ai-slop-cleaner/SKILL.md +114 -0
- package/skills/brand-agency/SKILL.md +181 -0
- package/skills/brand-presenter/SKILL.md +114 -0
- package/skills/build-fix/SKILL.md +145 -0
- package/skills/bunty/SKILL.md +41 -0
- package/skills/catalog.json +326 -0
- package/skills/character-ad/SKILL.md +154 -0
- package/skills/character-creator/SKILL.md +303 -0
- package/skills/character-library/README.md +12 -0
- package/skills/character-library/SKILL.md +110 -0
- package/skills/clawbot/SKILL.md +26 -0
- package/skills/concierge/SKILL.md +183 -0
- package/skills/configure-notifications/SKILL.md +286 -0
- package/skills/davendra-presenter/SKILL.md +27 -0
- package/skills/davendra-presenter/assets/davendra_intro_1.jpg +0 -0
- package/skills/davendra-presenter/assets/davendra_intro_2.jpg +0 -0
- package/skills/davendra-presenter/assets/davendra_outro_1.jpg +0 -0
- package/skills/davendra-presenter/assets/davendra_outro_2.jpg +0 -0
- package/skills/deep-interview/SKILL.md +358 -0
- package/skills/deepsearch/SKILL.md +38 -0
- package/skills/doctor/SKILL.md +200 -0
- package/skills/graphify/SKILL.md +616 -0
- package/skills/help/SKILL.md +200 -0
- package/skills/higgsfield-generate/SKILL.md +171 -0
- package/skills/improvement-run/SKILL.md +47 -0
- package/skills/motion-reel/SKILL.md +102 -0
- package/skills/movie-director/SKILL.md +338 -0
- package/skills/multi-shot-prompt/SKILL.md +77 -0
- package/skills/nex-presenter/SKILL.md +25 -0
- package/skills/nex-presenter/assets/logo_manifest.json +26 -0
- package/skills/nex-presenter/assets/logo_source.jpg +0 -0
- package/skills/nex-presenter/assets/nex_brief_intro.mp4 +0 -0
- package/skills/nex-presenter/assets/nex_intro_1.jpg +0 -0
- package/skills/nex-presenter/assets/nex_intro_2.jpg +0 -0
- package/skills/nex-presenter/assets/nex_outro_1.jpg +0 -0
- package/skills/nex-presenter/assets/nex_outro_2.jpg +0 -0
- package/skills/nex-presenter/assets/text_overlay.png +0 -0
- package/skills/note/SKILL.md +62 -0
- package/skills/pipeline/SKILL.md +86 -0
- package/skills/review/SKILL.md +38 -0
- package/skills/runway/SKILL.md +131 -0
- package/skills/seedance-prompts/SKILL.md +194 -0
- package/skills/skill/SKILL.md +835 -0
- package/skills/skills-auditor/SKILL.md +73 -0
- package/skills/studio-mode/SKILL.md +148 -0
- package/skills/ugc/SKILL.md +386 -0
- package/skills/ui-ux-pro-max/SKILL.md +386 -0
- package/skills/video-analyze-template/SKILL.md +77 -0
- package/skills/video-clone-ad/SKILL.md +67 -0
- package/skills/video-framework/SKILL.md +201 -0
- package/skills/video-portfolio-ops/SKILL.md +84 -0
- package/skills/video-post/SKILL.md +97 -0
- package/skills/video-production-handoff/SKILL.md +130 -0
- package/skills/video-release-readiness/SKILL.md +93 -0
- package/skills/video-replicator/SKILL.md +368 -0
- package/skills/video-review-ui-qa/SKILL.md +103 -0
- package/skills/video-storyboard/SKILL.md +71 -0
- package/skills/video-thumbnail-lab/SKILL.md +67 -0
- package/skills/web-clone/SKILL.md +366 -0
- package/skills/worker/SKILL.md +106 -0
- package/skills/youtube-audio/SKILL.md +114 -0
- package/src/video/analyze-output.ts +10 -0
- package/src/video/archive-project.ts +65 -0
- package/src/video/artifact-history.ts +23 -0
- package/src/video/artifact-store.ts +59 -0
- package/src/video/artifact-validation.ts +268 -0
- package/src/video/artifacts.ts +156 -0
- package/src/video/assemble/animate-slides.ts +199 -0
- package/src/video/assemble/animation-styles.json +97 -0
- package/src/video/assemble/animation-styles.ts +54 -0
- package/src/video/assemble/assemble.ts +547 -0
- package/src/video/assemble/audio-concat.ts +165 -0
- package/src/video/assemble/audio-mix-plan.ts +150 -0
- package/src/video/assemble/audio-utils.ts +101 -0
- package/src/video/assemble/cut-segment.ts +121 -0
- package/src/video/assemble/ffmpeg.ts +333 -0
- package/src/video/assemble/gemini-vision-classify.ts +153 -0
- package/src/video/assemble/index.ts +247 -0
- package/src/video/assemble/media-qc.ts +252 -0
- package/src/video/assemble/music.ts +261 -0
- package/src/video/assemble/narration-fit.ts +90 -0
- package/src/video/assemble/overlay.ts +225 -0
- package/src/video/assemble/pdf.ts +169 -0
- package/src/video/assemble/qa-dialogue-lint.ts +129 -0
- package/src/video/assemble/qa-image-filter.ts +147 -0
- package/src/video/assemble/qa-image-vision.ts +154 -0
- package/src/video/assemble/qa-narration-vision.ts +135 -0
- package/src/video/assemble/qa-narration.ts +139 -0
- package/src/video/assemble/stitch-ad.ts +222 -0
- package/src/video/assemble/stitch.ts +918 -0
- package/src/video/assemble/text-card.ts +285 -0
- package/src/video/assemble/title-card.ts +186 -0
- package/src/video/assemble/transcript.ts +240 -0
- package/src/video/assemble/tts-elevenlabs.ts +182 -0
- package/src/video/assemble/tts.ts +227 -0
- package/src/video/assemble/types.ts +45 -0
- package/src/video/assemble/upscale.ts +80 -0
- package/src/video/asset-spec.ts +53 -0
- package/src/video/asset-tag-lookup.ts +51 -0
- package/src/video/atomic-write.ts +7 -0
- package/src/video/audio-platform/native-elevenlabs-sfx.ts +128 -0
- package/src/video/audio-platform/native-elevenlabs-tts.ts +119 -0
- package/src/video/audio-platform/native-flowmusic.ts +167 -0
- package/src/video/audio-platform/native-gemini-tts.ts +226 -0
- package/src/video/audio-platform/native-lyria.ts +231 -0
- package/src/video/audio-platform/native-lyria3.ts +244 -0
- package/src/video/audio-platform/registry.ts +220 -0
- package/src/video/audio-platform/suno-backend.ts +36 -0
- package/src/video/audio-platform/types.ts +138 -0
- package/src/video/batch-queue.ts +685 -0
- package/src/video/blueprint-prompt.ts +118 -0
- package/src/video/brand-definition.ts +287 -0
- package/src/video/brand-dna.ts +478 -0
- package/src/video/brand-prompt.ts +28 -0
- package/src/video/candidate-migrate.ts +171 -0
- package/src/video/category-registry.ts +224 -0
- package/src/video/chain-fallback.ts +53 -0
- package/src/video/character-auto-create.ts +547 -0
- package/src/video/character-consistency.ts +85 -0
- package/src/video/characters.ts +145 -0
- package/src/video/checkpoints.ts +60 -0
- package/src/video/cinema-profile.ts +120 -0
- package/src/video/cinematography.ts +1229 -0
- package/src/video/cli-output.ts +94 -0
- package/src/video/cli-schema.ts +505 -0
- package/src/video/cost-estimate.ts +150 -0
- package/src/video/csv-export.ts +150 -0
- package/src/video/dependencies.ts +64 -0
- package/src/video/dialogue-fit.ts +62 -0
- package/src/video/dialogue.ts +221 -0
- package/src/video/director-defaults.ts +432 -0
- package/src/video/director-preflight.ts +543 -0
- package/src/video/doctor-portfolio.ts +197 -0
- package/src/video/doctor.ts +499 -0
- package/src/video/emotion-cues.ts +36 -0
- package/src/video/environment-assets.ts +69 -0
- package/src/video/environment-auto-create.ts +122 -0
- package/src/video/errors.ts +133 -0
- package/src/video/events.ts +42 -0
- package/src/video/execute-autochain.ts +226 -0
- package/src/video/execute.ts +569 -0
- package/src/video/execution-cancel.ts +103 -0
- package/src/video/execution-plan.ts +178 -0
- package/src/video/execution-profile.ts +162 -0
- package/src/video/execution-runtime.ts +975 -0
- package/src/video/execution-seed.ts +46 -0
- package/src/video/execution-status.ts +736 -0
- package/src/video/filmmaking-prompts.ts +1789 -0
- package/src/video/final-media.ts +118 -0
- package/src/video/finish.ts +255 -0
- package/src/video/flow-character-library.ts +342 -0
- package/src/video/flow-markers.ts +330 -0
- package/src/video/gemini-analyze.ts +387 -0
- package/src/video/gemini-continuity.ts +186 -0
- package/src/video/gemini-judge.ts +300 -0
- package/src/video/gemini-key-pool.ts +153 -0
- package/src/video/gen-image-flow.ts +491 -0
- package/src/video/gen-image.ts +392 -0
- package/src/video/generation-telemetry.ts +282 -0
- package/src/video/http-error-safety.ts +13 -0
- package/src/video/image-dimensions.ts +69 -0
- package/src/video/legacy-import.ts +197 -0
- package/src/video/library-clean.ts +399 -0
- package/src/video/lipsync.ts +200 -0
- package/src/video/media-host.ts +153 -0
- package/src/video/metrics.ts +116 -0
- package/src/video/motion-overlay/analyze-reel.ts +200 -0
- package/src/video/motion-overlay/animate-render.ts +176 -0
- package/src/video/motion-overlay/animate.ts +93 -0
- package/src/video/motion-overlay/avatar-host-transport.ts +458 -0
- package/src/video/motion-overlay/avatar-host.ts +238 -0
- package/src/video/motion-overlay/compose-prompt.ts +247 -0
- package/src/video/motion-overlay/execute.ts +355 -0
- package/src/video/motion-overlay/flow-pack.ts +223 -0
- package/src/video/motion-overlay/ingest.ts +210 -0
- package/src/video/motion-overlay/motifs.ts +223 -0
- package/src/video/motion-overlay/motion-style.ts +162 -0
- package/src/video/motion-overlay/plan.ts +111 -0
- package/src/video/motion-overlay/preview.ts +191 -0
- package/src/video/motion-overlay/render-local.ts +441 -0
- package/src/video/motion-overlay/run.ts +217 -0
- package/src/video/motion-overlay/slice.ts +98 -0
- package/src/video/motion-overlay/transcribe.ts +211 -0
- package/src/video/motion-overlay/types.ts +89 -0
- package/src/video/motion-overlay/v2v-transport.ts +209 -0
- package/src/video/motion-overlay/write.ts +142 -0
- package/src/video/multi-shot-artifact.ts +64 -0
- package/src/video/multi-shot-prompt.ts +608 -0
- package/src/video/music-video.ts +324 -0
- package/src/video/narrate.ts +221 -0
- package/src/video/native-dreamina.ts +638 -0
- package/src/video/native-flow-r2v.ts +279 -0
- package/src/video/native-runway.ts +647 -0
- package/src/video/native-seedance.ts +615 -0
- package/src/video/native-veo.ts +470 -0
- package/src/video/next-actions.ts +247 -0
- package/src/video/obsidian-export.ts +336 -0
- package/src/video/obsidian-sync.ts +649 -0
- package/src/video/obsidian-vault.ts +96 -0
- package/src/video/outfit-prompts.ts +14 -0
- package/src/video/outpaint-keyframe.ts +365 -0
- package/src/video/pipeline-manifest.ts +16 -0
- package/src/video/pipeline-manifests/director.json +46 -0
- package/src/video/pipeline-manifests/storyboard.json +46 -0
- package/src/video/platform-specs.ts +50 -0
- package/src/video/playbooks.ts +34 -0
- package/src/video/post-production.ts +277 -0
- package/src/video/preview-portal/audit.ts +20 -0
- package/src/video/preview-portal/discovery.ts +787 -0
- package/src/video/preview-portal/generate.ts +138 -0
- package/src/video/preview-portal/index.ts +41 -0
- package/src/video/preview-portal/publish.ts +215 -0
- package/src/video/preview-portal/render.ts +865 -0
- package/src/video/preview-portal/shared-assets.ts +455 -0
- package/src/video/preview-portal/templates.ts +112 -0
- package/src/video/preview-portal/types.ts +288 -0
- package/src/video/product-references.ts +43 -0
- package/src/video/project-blueprint.ts +458 -0
- package/src/video/project-index.ts +179 -0
- package/src/video/projects.ts +18 -0
- package/src/video/prompt-guidance.ts +64 -0
- package/src/video/prompt-library.ts +96 -0
- package/src/video/prompt-lint.ts +568 -0
- package/src/video/prompt-quality.ts +635 -0
- package/src/video/prompt-rules.ts +209 -0
- package/src/video/provider-adapter-runner.ts +104 -0
- package/src/video/provider-platform/index.ts +5 -0
- package/src/video/provider-platform/registry.ts +286 -0
- package/src/video/provider-platform/route-capabilities.ts +327 -0
- package/src/video/provider-platform/router.ts +221 -0
- package/src/video/provider-platform/security.ts +29 -0
- package/src/video/provider-platform/telemetry.ts +116 -0
- package/src/video/provider-platform/types.ts +192 -0
- package/src/video/provider-status.ts +199 -0
- package/src/video/providers/dreamina-useapi.ts +345 -0
- package/src/video/providers/flowmusic-useapi.ts +252 -0
- package/src/video/providers/google-flow.ts +110 -0
- package/src/video/providers/public-host.ts +128 -0
- package/src/video/providers/runway-useapi.ts +377 -0
- package/src/video/providers/xskill.ts +304 -0
- package/src/video/readiness.ts +284 -0
- package/src/video/reference-sheet-store.ts +40 -0
- package/src/video/reference-sheets.ts +224 -0
- package/src/video/remix-narrated.ts +92 -0
- package/src/video/report-diff.ts +299 -0
- package/src/video/report-history.ts +122 -0
- package/src/video/report.ts +35 -0
- package/src/video/review-ui.ts +2495 -0
- package/src/video/scene-candidate-store.ts +152 -0
- package/src/video/scene-candidates.ts +195 -0
- package/src/video/scene-selection-store.ts +36 -0
- package/src/video/scene-selection.ts +306 -0
- package/src/video/scheduling.ts +18 -0
- package/src/video/scorecard.ts +90 -0
- package/src/video/seedance-asset-library.ts +259 -0
- package/src/video/seedance-blocks.ts +118 -0
- package/src/video/seedance-chain-host.ts +152 -0
- package/src/video/seedance-content-filter.ts +354 -0
- package/src/video/seedance-skill-loader.ts +83 -0
- package/src/video/sfx.ts +159 -0
- package/src/video/shot-grammar.ts +349 -0
- package/src/video/show-bible.ts +235 -0
- package/src/video/soundtrack.ts +257 -0
- package/src/video/stage-guards.ts +112 -0
- package/src/video/status.ts +342 -0
- package/src/video/story-bible.ts +302 -0
- package/src/video/storyboard-grid.ts +320 -0
- package/src/video/storyboard-markdown.ts +434 -0
- package/src/video/storyboard-still-candidates.ts +82 -0
- package/src/video/storyboard-templates.ts +249 -0
- package/src/video/studio/execute.ts +401 -0
- package/src/video/studio/planner.ts +114 -0
- package/src/video/studio/project-context.ts +25 -0
- package/src/video/studio/recipes.ts +346 -0
- package/src/video/studio/session.ts +24 -0
- package/src/video/studio/types.ts +76 -0
- package/src/video/template-store.ts +241 -0
- package/src/video/timeline.ts +32 -0
- package/src/video/title-overlay.ts +234 -0
- package/src/video/types.ts +465 -0
- package/src/video/veo-subprocess.ts +77 -0
- package/src/video/verify-env.ts +206 -0
- package/src/video/verify-final.ts +65 -0
- package/src/video/video-context.ts +92 -0
- package/src/video/vocal-map.ts +155 -0
- package/src/video/vocal-sync-plan.ts +224 -0
- package/src/video/voice-clone.ts +410 -0
- package/src/video/with-retry.ts +149 -0
- package/src/video/workload.ts +87 -0
- package/src/video/workspace.ts +255 -0
- package/tmp/review-station/index.html +4194 -0
- package/tsconfig.json +19 -0
|
@@ -0,0 +1,148 @@
|
|
|
1
|
+
# Production Workflow
|
|
2
|
+
|
|
3
|
+
VideoClaw should feel like one reliable production workflow, not a catalog of
|
|
4
|
+
commands. Keep the advanced command surface available, but introduce users
|
|
5
|
+
through these three doors.
|
|
6
|
+
|
|
7
|
+
For human operators, start with `vclaw studio --dry-run`. It maps goals like
|
|
8
|
+
presenter video, UGC campaign, music video, copy-reference, review, and publish
|
|
9
|
+
to the deterministic CLI commands described below.
|
|
10
|
+
|
|
11
|
+
The matching workflow skills are:
|
|
12
|
+
|
|
13
|
+
1. `video-production-handoff` for one project from creation into review and
|
|
14
|
+
publish handoff.
|
|
15
|
+
2. `video-review-ui-qa` for browser review, mobile/desktop QA, and Review UI to
|
|
16
|
+
CLI truth alignment.
|
|
17
|
+
3. `video-portfolio-ops` for multi-project reports, CSV/Obsidian handoff, and
|
|
18
|
+
operator queues.
|
|
19
|
+
4. `video-release-readiness` for package-shape, generated-artifact, and release
|
|
20
|
+
verification evidence.
|
|
21
|
+
|
|
22
|
+
For a short runbook that can be handed to an operator, use
|
|
23
|
+
[`OPERATOR_HANDOFF.md`](./OPERATOR_HANDOFF.md).
|
|
24
|
+
|
|
25
|
+
## 1. Make A Campaign Video
|
|
26
|
+
|
|
27
|
+
Use this when the operator has an intent and needs a reviewed, provider-ready
|
|
28
|
+
short-form video project.
|
|
29
|
+
|
|
30
|
+
```bash
|
|
31
|
+
vclaw video create "A 20s product story for ..." --project <slug> --production-mode director
|
|
32
|
+
|
|
33
|
+
# Choose one review path.
|
|
34
|
+
vclaw video review-ui --project <slug>
|
|
35
|
+
|
|
36
|
+
# Or, when completed storyboard still candidates already exist:
|
|
37
|
+
vclaw video review-autopilot --project <slug>
|
|
38
|
+
|
|
39
|
+
vclaw video status --project <slug>
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
`review-ui` serves the packaged Review UI by default, so installed CLI users do
|
|
43
|
+
not need a source checkout or a project-local `tmp/review-station/index.html`.
|
|
44
|
+
Reserve `--ui-path` for testing a local replacement UI. `review-autopilot` is
|
|
45
|
+
the non-interactive counterpart: use it instead of browser review only when the
|
|
46
|
+
project already has completed storyboard still candidates and the operator wants
|
|
47
|
+
the agent to lock the handoff.
|
|
48
|
+
|
|
49
|
+
The expected result is a project with a brief, storyboard, locked stills,
|
|
50
|
+
artifact-backed 4K handoff assets, a passing review report, and one clear next
|
|
51
|
+
action. The system must not claim a publish handoff until `review-report.json`
|
|
52
|
+
has `verdict: "pass"` and `metrics.publishReady: true`.
|
|
53
|
+
|
|
54
|
+
Every storyboard-producing command (`create`, `storyboard`, `clone-execute`,
|
|
55
|
+
`storyboard-from-clone`, `storyboard-review`, and `director-preflight
|
|
56
|
+
--apply-content-fixes`) also emits `artifacts/story-bible.json` at
|
|
57
|
+
storyboard-write time — a deterministic continuity bible (cast, settings, props,
|
|
58
|
+
per-scene timeline, and continuity notes) derived from the brief, storyboard, and
|
|
59
|
+
character profiles. It spends no credits and calls no providers; its path is
|
|
60
|
+
surfaced as `storyBiblePath` in the command JSON output and recorded on the
|
|
61
|
+
storyboard checkpoint. Downstream generation reads it so scenes and regenerations
|
|
62
|
+
stay continuity-consistent. After director content-fixes are applied, the bible
|
|
63
|
+
is regenerated to match.
|
|
64
|
+
|
|
65
|
+
## 2. Review And Fix A Project
|
|
66
|
+
|
|
67
|
+
Use this when a project exists but the operator is unsure whether it is safe to
|
|
68
|
+
continue.
|
|
69
|
+
|
|
70
|
+
```bash
|
|
71
|
+
vclaw video status --project <slug>
|
|
72
|
+
vclaw video next-actions
|
|
73
|
+
vclaw video doctor-project --project <slug>
|
|
74
|
+
vclaw video review-ui --project <slug>
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
Trust order:
|
|
78
|
+
|
|
79
|
+
1. `status` tells the current stage and stale review state.
|
|
80
|
+
2. `next-actions` tells the highest-priority human or agent action.
|
|
81
|
+
3. `doctor-project` verifies artifacts and checkpoints.
|
|
82
|
+
4. `review-ui` is the visual station for fixing images, references, 4K assets,
|
|
83
|
+
and final assembly checks.
|
|
84
|
+
|
|
85
|
+
If these disagree, treat it as a product bug and fix the canonical artifact or
|
|
86
|
+
derived next-action logic before continuing.
|
|
87
|
+
|
|
88
|
+
## 3. Manage A Portfolio
|
|
89
|
+
|
|
90
|
+
Use this when multiple video projects are in flight.
|
|
91
|
+
|
|
92
|
+
```bash
|
|
93
|
+
vclaw video metrics
|
|
94
|
+
vclaw video report
|
|
95
|
+
vclaw video export-csv
|
|
96
|
+
vclaw video sync-obsidian
|
|
97
|
+
```
|
|
98
|
+
|
|
99
|
+
Portfolio views should communicate production truth for non-technical operators:
|
|
100
|
+
what is blocked, what needs review, what is stale, what is ready to publish, and
|
|
101
|
+
where spend or provider risk is accumulating. CSV exports include
|
|
102
|
+
`reviewReportVerdict` and `reviewPublishReady` so spreadsheet handoffs can filter
|
|
103
|
+
on the same review truth as the CLI and Review UI.
|
|
104
|
+
|
|
105
|
+
For release handoff, keep source checkout commands and installed CLI commands
|
|
106
|
+
separate. In this repository, use `node dist/cli/vclaw.js ...` only after
|
|
107
|
+
building. Installed users should see `vclaw ...` examples.
|
|
108
|
+
|
|
109
|
+
## Authoring aid: multi-shot prompts
|
|
110
|
+
|
|
111
|
+
For a compressed cinematic clip, `vclaw video multi-shot` scaffolds a timecoded,
|
|
112
|
+
non-repeating-camera shot plan (`cinematic-15s`, `seedance-10s`, `veo-8s`, or
|
|
113
|
+
`runway-10s`), validates the hard rules (char budget, contiguous timecodes,
|
|
114
|
+
metadata block), and can author prose end-to-end with `--auto`:
|
|
115
|
+
|
|
116
|
+
```bash
|
|
117
|
+
vclaw video multi-shot --plan # timecode scaffold + camera grid
|
|
118
|
+
vclaw video multi-shot --validate --file prompt.txt # enforce the rules (nonzero exit on error)
|
|
119
|
+
vclaw video multi-shot --plan --from-storyboard --project demo --scene 0 --route seedance-direct
|
|
120
|
+
```
|
|
121
|
+
|
|
122
|
+
It can run standalone, or hydrate action/characters/location defaults from a
|
|
123
|
+
project storyboard scene with `--from-storyboard`. Project status/readiness
|
|
124
|
+
summarize the latest persisted `multi-shot-prompt` artifact for review.
|
|
125
|
+
Full reference: [`docs/CLI_REFERENCE.md`](./CLI_REFERENCE.md#multi-shot-prompt).
|
|
126
|
+
|
|
127
|
+
## Production Readiness Rules
|
|
128
|
+
|
|
129
|
+
- One source of truth: review handoff readiness comes from `review-report.json`.
|
|
130
|
+
- Simple review command rule: `video review --verdict pass` is for projects that
|
|
131
|
+
already have equivalent review evidence outside the Review UI. Director image
|
|
132
|
+
handoffs should use `review-ui` or `review-autopilot` so publish readiness is
|
|
133
|
+
derived from locked stills, artifact-backed 4K assets, and final approvals.
|
|
134
|
+
- No stale approval: if storyboard content changed after `storyboard.md`, refresh
|
|
135
|
+
the storyboard review before execution.
|
|
136
|
+
- No marker-only handoff: a 4K/upscaled still must be an artifact-backed scene
|
|
137
|
+
candidate, not just a browser marker.
|
|
138
|
+
- Keep verification output separate from source: local `outputs/`,
|
|
139
|
+
`.playwright-mcp/`, nested project `outputs/`, and Review UI screenshots
|
|
140
|
+
should remain ignored unless a fixture update is explicitly intentional.
|
|
141
|
+
- No hidden provider switch: provider routes fail hard instead of silently
|
|
142
|
+
falling back.
|
|
143
|
+
- Dry-run never demotes assets: the assets checkpoint preserves its
|
|
144
|
+
`asset-manifest` reference across all `execute` paths — including
|
|
145
|
+
`execute --dry-run` when the plan is not yet ready — instead of overwriting it
|
|
146
|
+
to `failed`, so a dry-run preview cannot strand a project's asset stage.
|
|
147
|
+
- Every user-facing surface should give the same next action for the same
|
|
148
|
+
project state.
|
|
@@ -0,0 +1,262 @@
|
|
|
1
|
+
# Project Layout
|
|
2
|
+
|
|
3
|
+
This doc describes the canonical on-disk structure of a `videoclaw`
|
|
4
|
+
project — the unit `vclaw video init <slug>` creates and every
|
|
5
|
+
downstream stage operates on.
|
|
6
|
+
|
|
7
|
+
## Slug rules
|
|
8
|
+
|
|
9
|
+
Enforced at `vclaw video init` time:
|
|
10
|
+
|
|
11
|
+
| Rule | Constraint |
|
|
12
|
+
|---|---|
|
|
13
|
+
| Allowed chars | `[a-z0-9-]` |
|
|
14
|
+
| Must start with | `[a-z0-9]` (not `-`) |
|
|
15
|
+
| Must end with | `[a-z0-9]` (not `-`) |
|
|
16
|
+
| Length | 3–64 chars |
|
|
17
|
+
| Disallowed substrings | `--`, leading `.`, reserved names (`history`, `artifacts`, `checkpoints`, `events`, `state`, `outputs`, `assets`, `obsidian`, `characters`, `notes`, `tmp`) |
|
|
18
|
+
| Argv guard | Reject anything that looks like a flag (`^-`). Prevents the historical bug where `vclaw video init --project foo` parsed `--project` as the slug. |
|
|
19
|
+
|
|
20
|
+
Recommended slug template when the user doesn't provide one:
|
|
21
|
+
`<yyyy-mm-dd>-<noun>-<noun>` (e.g., `2026-05-25-disco-monster`).
|
|
22
|
+
|
|
23
|
+
## Canonical layout
|
|
24
|
+
|
|
25
|
+
```
|
|
26
|
+
projects/<slug>/
|
|
27
|
+
│
|
|
28
|
+
├── project.json # MANIFEST (see "project.json shape" below)
|
|
29
|
+
├── storyboard.md # Director-mode human-readable approval doc
|
|
30
|
+
│ (absent in storyboard-mode until storyboard
|
|
31
|
+
│ stage)
|
|
32
|
+
│
|
|
33
|
+
├── artifacts/ # CANONICAL machine-readable outputs.
|
|
34
|
+
│ │ JSON only. Every file MUST have a schema
|
|
35
|
+
│ │ in schemas/video/artifacts/.
|
|
36
|
+
│ ├── brief.json
|
|
37
|
+
│ ├── storyboard.json
|
|
38
|
+
│ ├── story-bible.json # Deterministic continuity bible (cast,
|
|
39
|
+
│ │ settings, props, scene timeline, continuity
|
|
40
|
+
│ │ notes) auto-emitted at storyboard-write time.
|
|
41
|
+
│ ├── asset-manifest.json
|
|
42
|
+
│ ├── scene-candidates.json
|
|
43
|
+
│ ├── scene-selection.json
|
|
44
|
+
│ ├── reference-sheets.json
|
|
45
|
+
│ ├── execution-plan.json
|
|
46
|
+
│ ├── execution-report.json
|
|
47
|
+
│ ├── review-report.json
|
|
48
|
+
│ ├── publish-report.json
|
|
49
|
+
│ ├── analyze-output.json
|
|
50
|
+
│ ├── clone-plan.json
|
|
51
|
+
│ ├── multi-shot-prompt.json # Written only when `vclaw video multi-shot
|
|
52
|
+
│ │ --project <slug>` is used; absent for
|
|
53
|
+
│ │ standalone (no --project) invocations.
|
|
54
|
+
│ ├── filmmaking-prompts.json # Character sheet, 9-panel storyboard grid,
|
|
55
|
+
│ │ reference map, and Seedance prompt packets.
|
|
56
|
+
│ └── history/ # Snapshots of artifacts/ files on overwrite.
|
|
57
|
+
│ Append-only. One subdir per artifact:
|
|
58
|
+
│ history/brief/<ts>.json.
|
|
59
|
+
│
|
|
60
|
+
├── checkpoints/ # ONE FILE per stage. Tracks approval state,
|
|
61
|
+
│ ├── brief.json who approved when, retry count, verdict.
|
|
62
|
+
│ ├── storyboard.json
|
|
63
|
+
│ ├── assets.json
|
|
64
|
+
│ ├── review.json
|
|
65
|
+
│ └── publish.json
|
|
66
|
+
│
|
|
67
|
+
├── characters/ # CANONICAL identity store for this project.
|
|
68
|
+
│ └── characters.json
|
|
69
|
+
│
|
|
70
|
+
├── events/ # Append-only timeline. JSONL.
|
|
71
|
+
│ └── events.jsonl Payloads use project-relative paths only.
|
|
72
|
+
│
|
|
73
|
+
├── notes/ # Human-authored or model-authored MD.
|
|
74
|
+
│ │ Free-form. Anything NOT a canonical
|
|
75
|
+
│ │ JSON artifact lives here.
|
|
76
|
+
│ └── (markdown files)
|
|
77
|
+
│
|
|
78
|
+
├── outputs/ # DERIVED. Final encoded media only.
|
|
79
|
+
│ ├── final/<slug>-<mode>.mp4 Created by publish stage.
|
|
80
|
+
│ ├── scene-0.mp4 Per-scene renders.
|
|
81
|
+
│ ├── scene-1.mp4
|
|
82
|
+
│ └── ... (Gitignored at project level.)
|
|
83
|
+
│
|
|
84
|
+
├── preview.html # DERIVED. Final portal showcase.
|
|
85
|
+
├── edit.html # DERIVED. Editor edit/check portal.
|
|
86
|
+
├── review.html # DERIVED. Editor review portal.
|
|
87
|
+
├── client-review.html # DERIVED. Client review portal.
|
|
88
|
+
├── compare.html # DERIVED. Version/run comparison portal.
|
|
89
|
+
├── project-audit.jsonl # Append-only preview portal generation/publish audit.
|
|
90
|
+
│
|
|
91
|
+
├── assets/ # DERIVED. Intermediate visual assets.
|
|
92
|
+
│ ├── storyboard-grid.png Deterministic 3x3 production board from
|
|
93
|
+
│ │ `vclaw video storyboard-grid`.
|
|
94
|
+
│ ├── storyboard/ Per-scene stills.
|
|
95
|
+
│ ├── upscaled/ Upscaled variants.
|
|
96
|
+
│ └── ... (Gitignored.)
|
|
97
|
+
│
|
|
98
|
+
├── obsidian/ # DERIVED. Mirror of canonical artifacts
|
|
99
|
+
│ in Obsidian-friendly MD. Created by
|
|
100
|
+
│ `vclaw video obsidian-export`.
|
|
101
|
+
│ (Gitignored.)
|
|
102
|
+
│
|
|
103
|
+
└── state/ # Derived state cache. Created on init by
|
|
104
|
+
ensureProjectWorkspace.
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
## Directory disposition
|
|
108
|
+
|
|
109
|
+
| Directory | Always-present on init | Schema-enforced | Gitignored at project level |
|
|
110
|
+
|---|---|---|---|
|
|
111
|
+
| `project.json` | yes | yes | no (commit) |
|
|
112
|
+
| `storyboard.md` | director-mode only | n/a (free-form) | no |
|
|
113
|
+
| `artifacts/` | yes (empty) | **yes — every file** | no |
|
|
114
|
+
| `artifacts/history/` | yes (mkdir at init) | yes | no |
|
|
115
|
+
| `checkpoints/` | yes (empty) | yes (per-stage shape) | no |
|
|
116
|
+
| `characters/` | yes (empty) | yes (characters.json shape) | no |
|
|
117
|
+
| `events/` | yes (empty) | line shape enforced | no |
|
|
118
|
+
| `state/` | yes (empty) | internal cache | no |
|
|
119
|
+
| `notes/` | on demand | no (MD) | no |
|
|
120
|
+
| `outputs/` | on demand | n/a (media) | **yes** |
|
|
121
|
+
| `preview.html` / `edit.html` / `review.html` / `client-review.html` / `compare.html` | on portal generation | n/a (static HTML) | no |
|
|
122
|
+
| `project-audit.jsonl` | on portal generation/publish | JSONL event shape | no |
|
|
123
|
+
| `assets/` | on demand | n/a (media) | **yes** |
|
|
124
|
+
| `obsidian/` | opt-in command | n/a (MD mirror) | **yes** |
|
|
125
|
+
|
|
126
|
+
## Git tracking
|
|
127
|
+
|
|
128
|
+
`vclaw video init` does **not** write a per-project `.gitignore` —
|
|
129
|
+
`handleVideoInit` only writes `project.json`, the pending `brief`
|
|
130
|
+
checkpoint, and the `project.initialized` event. Any gitignore handling
|
|
131
|
+
is at the repo root, not per-project.
|
|
132
|
+
|
|
133
|
+
The derived directories — `outputs/`, `assets/`, `obsidian/` — are
|
|
134
|
+
re-generable from canonical artifacts and are the candidates to ignore
|
|
135
|
+
if you wire up repo-root gitignore rules. `artifacts/`, `checkpoints/`,
|
|
136
|
+
`characters/`, `events/`, `notes/`, `project.json`, and `storyboard.md`
|
|
137
|
+
are **canonical by design** so a project is reproducible from its
|
|
138
|
+
on-disk state.
|
|
139
|
+
|
|
140
|
+
## `project.json` shape
|
|
141
|
+
|
|
142
|
+
The manifest is `VideoProjectManifest` (`src/video/workspace.ts`). The
|
|
143
|
+
pipeline manifest is **embedded inline** — there is no versioned
|
|
144
|
+
reference and no `schemaVersion`. On init, `handleVideoInit` writes:
|
|
145
|
+
|
|
146
|
+
```json
|
|
147
|
+
{
|
|
148
|
+
"slug": "fresh-proof",
|
|
149
|
+
"productionMode": "director",
|
|
150
|
+
"createdAt": "2026-05-06T02:20:19.421Z",
|
|
151
|
+
"updatedAt": "2026-05-06T02:20:19.421Z",
|
|
152
|
+
"pipeline": { "name": "director", "stages": ["..."] },
|
|
153
|
+
"currentStage": "brief",
|
|
154
|
+
"lastCompletedStage": null,
|
|
155
|
+
"lastCheckpointStatus": "pending"
|
|
156
|
+
}
|
|
157
|
+
```
|
|
158
|
+
|
|
159
|
+
Required fields:
|
|
160
|
+
|
|
161
|
+
- `slug` — the project slug.
|
|
162
|
+
- `productionMode` — `"storyboard"` or `"director"`.
|
|
163
|
+
- `createdAt` / `updatedAt` — ISO timestamps.
|
|
164
|
+
- `pipeline` — the **full embedded `VideoPipelineManifest` object**
|
|
165
|
+
(not a `pipelineRef` string). In practice only `pipeline.name` is read
|
|
166
|
+
back by downstream code.
|
|
167
|
+
- `currentStage` / `lastCompletedStage` / `lastCheckpointStatus` —
|
|
168
|
+
stage-machine cursor. On init these are `"brief"`, `null`, and
|
|
169
|
+
`"pending"`.
|
|
170
|
+
|
|
171
|
+
Optional fields, written only by `updateProjectManifestMetadata`
|
|
172
|
+
(`owner`, `priority`, `dueDate`, `tags`, `blockedBy`, `blockedReason`)
|
|
173
|
+
and `updateProjectManifestCinemaProfile` (`cinemaProfile`). There is no
|
|
174
|
+
`schemaVersion`, no `pipelineRef`, no `createdBy`, and no nested
|
|
175
|
+
`metadata` object.
|
|
176
|
+
|
|
177
|
+
### `routePreference` (optional)
|
|
178
|
+
|
|
179
|
+
An ordered list of provider route ids that overrides the built-in
|
|
180
|
+
per-mode default ordering when `buildExecutionPlan` (`plan`/`produce`)
|
|
181
|
+
picks a route:
|
|
182
|
+
|
|
183
|
+
```json
|
|
184
|
+
{
|
|
185
|
+
"routePreference": ["dreamina-useapi", "seedance-direct", "veo-useapi"]
|
|
186
|
+
}
|
|
187
|
+
```
|
|
188
|
+
|
|
189
|
+
- Valid ids: `veo-useapi`, `runway-useapi`, `dreamina-useapi`,
|
|
190
|
+
`seedance-direct` (the `ProviderRouteId` union). An unknown id makes
|
|
191
|
+
`plan`/`produce` **fail at plan time** — free, before any submission.
|
|
192
|
+
- Listed routes are tried first, in order; any built-in default route not
|
|
193
|
+
listed is appended as fallback, so a **partial** preference is safe (a
|
|
194
|
+
preferred route that turns out unavailable falls through to the rest).
|
|
195
|
+
- **Absent/empty ⇒ byte-identical** to the built-in defaults
|
|
196
|
+
(`storyboard`: `veo-useapi` → `seedance-direct`; `director`:
|
|
197
|
+
`seedance-direct` → `veo-useapi`).
|
|
198
|
+
|
|
199
|
+
Use it when a project must pin a route the default order wouldn't pick —
|
|
200
|
+
e.g. an image-to-video project whose references are remote URLs needs
|
|
201
|
+
`dreamina-useapi` (which uploads the bytes) rather than `seedance-direct`
|
|
202
|
+
(which requires the provider to fetch the URL itself).
|
|
203
|
+
|
|
204
|
+
## Event log shape
|
|
205
|
+
|
|
206
|
+
`events.jsonl` lines follow the `VideoProjectEvent` envelope
|
|
207
|
+
(`src/video/events.ts`): `{ type, recordedAt, payload? }`. There is no
|
|
208
|
+
`id`/ULID and no `source` field.
|
|
209
|
+
|
|
210
|
+
```jsonl
|
|
211
|
+
{"type":"artifact.review-report.written","recordedAt":"2026-05-06T21:54:52.404Z","payload":{"artifactPath":"artifacts/review-report.json","verdict":"pass"}}
|
|
212
|
+
```
|
|
213
|
+
|
|
214
|
+
Readers split on newlines and `JSON.parse` each non-empty line;
|
|
215
|
+
`appendProjectEvent` fills `recordedAt` if absent. Event-payload paths
|
|
216
|
+
are project-relative by convention.
|
|
217
|
+
|
|
218
|
+
## Artifact schema coverage guardrail
|
|
219
|
+
|
|
220
|
+
The build pipeline includes `check:artifact-schema-coverage`
|
|
221
|
+
(`scripts/check-artifact-schema-coverage.mjs`), which asserts:
|
|
222
|
+
|
|
223
|
+
1. Every artifact name passed to `writeArtifact(workspace, '<name>', ...)`
|
|
224
|
+
in `src/video/**/*.ts` has a matching
|
|
225
|
+
`schemas/video/artifacts/<name>.schema.json`.
|
|
226
|
+
2. Every schema in `schemas/video/artifacts/` has either a matching
|
|
227
|
+
`writeArtifact()` call OR is in the script's
|
|
228
|
+
`KNOWN_ALTERNATE_WRITERS` allowlist (audit-pending; some artifacts
|
|
229
|
+
are written via specialized helpers rather than the typed
|
|
230
|
+
`writeArtifact()` shim).
|
|
231
|
+
|
|
232
|
+
**Modes:**
|
|
233
|
+
|
|
234
|
+
- Default (advisory) — prints any drift but always exits 0. This is
|
|
235
|
+
what `check:release-readiness-lite` invokes, so the guardrail
|
|
236
|
+
reports status inline without blocking the release-readiness
|
|
237
|
+
pre-flight while the allowlist is being burned down.
|
|
238
|
+
- `--strict` — exits 1 on drift. Wire into CI gates / pre-commit hooks
|
|
239
|
+
when you want hard enforcement. Currently zero unexpected drift
|
|
240
|
+
with the allowlist applied.
|
|
241
|
+
|
|
242
|
+
Current allowlist (9 schemas needing per-artifact audit): `analyze-output`,
|
|
243
|
+
`clone-plan`, `execution-plan`, `multi-shot-prompt`, `publish-report`,
|
|
244
|
+
`reference-sheets`, `review-report`, `scene-candidates`, `scene-selection`.
|
|
245
|
+
The audit work is tracked in `MERGE_PLAN.md` §A2.
|
|
246
|
+
|
|
247
|
+
## Slug validation implementation
|
|
248
|
+
|
|
249
|
+
The slug rules above are enforced by `validateInitSlug()` in
|
|
250
|
+
`src/cli/vclaw.ts`, called from the `init` command before any
|
|
251
|
+
filesystem operation. Test coverage in
|
|
252
|
+
`src/tests/cli-init-slug-validation.test.ts` (6 cases):
|
|
253
|
+
|
|
254
|
+
1. rejects `--project` as the slug (the historical argv-as-slug bug)
|
|
255
|
+
2. rejects uppercase / whitespace / dots / underscores / leading dots / leading dashes
|
|
256
|
+
3. rejects reserved per-project directory names
|
|
257
|
+
4. rejects consecutive `--`
|
|
258
|
+
5. rejects too-short / too-long
|
|
259
|
+
6. accepts a well-formed slug (`2026-05-25-disco-monster`)
|
|
260
|
+
|
|
261
|
+
Each failure mode has a distinct error message; the argv-as-slug case
|
|
262
|
+
explicitly names the bug to make the fix discoverable.
|
|
@@ -0,0 +1,214 @@
|
|
|
1
|
+
# Prompt-quality preflight
|
|
2
|
+
|
|
3
|
+
Seven mechanical anti-pattern checks driven by the Seedance 2.0 Handbook. They
|
|
4
|
+
run inside `director-preflight` against every storyboard scene's text. They are
|
|
5
|
+
**warnings by default** and promote to blocking **errors** when
|
|
6
|
+
`DIRECTOR_STRICT_PROMPT_QUALITY=1` is set in the environment.
|
|
7
|
+
|
|
8
|
+
The module (`src/video/prompt-quality.ts`) is pure: no disk I/O, no global
|
|
9
|
+
state beyond reading the severity env var at runtime. The checks surface
|
|
10
|
+
through the existing `director-preflight` JSON output — there is no new CLI
|
|
11
|
+
command and no new smoke.
|
|
12
|
+
|
|
13
|
+
## Issue codes
|
|
14
|
+
|
|
15
|
+
| Code | What it catches | Threshold |
|
|
16
|
+
|---|---|---|
|
|
17
|
+
| `prompt-quality-adjective-soup` | A single clause piling up comma-separated modifiers | `> ADJECTIVE_SOUP_THRESHOLD` (default 4) |
|
|
18
|
+
| `prompt-quality-multiple-actions` | Serial third-person-present actions in one clause | `> 1` |
|
|
19
|
+
| `prompt-quality-multiple-camera-moves` | More than one camera-move family per prompt | `> 1` movement family |
|
|
20
|
+
| `prompt-quality-style-word-overload` | Stacked "cinematic/epic/atmospheric" style words | `> STYLE_WORDS_THRESHOLD` (default 3) |
|
|
21
|
+
| `prompt-quality-literary-emotion` | Inner-state language (`feels`, `profound sadness`) instead of visible behavior | any match |
|
|
22
|
+
| `prompt-quality-overlong` | Prompt word count above the single-shot budget | `> OVERLONG_WORDS_THRESHOLD` (default 120) |
|
|
23
|
+
| `negative-direction` | A negated motion/tempo clause (`no`/`don't`/`avoid`/`without`/`never` + `slow-motion`/`blur`/`motion`/`movement`/`zoom`/`camera shake`) — these models ignore negated direction | any match outside the sanctioned-negation allowlist (on-screen text, specular kill, anti-plastic) |
|
|
24
|
+
|
|
25
|
+
Vocabularies live in `CAMERA_MOVE_VOCABULARY`, `SHOT_TYPE_VOCABULARY`, and
|
|
26
|
+
`STYLE_VOCABULARY` in `src/video/prompt-quality.ts` and are deliberately short
|
|
27
|
+
and conservative.
|
|
28
|
+
|
|
29
|
+
Camera movement is checked separately from shot size. Movement families include
|
|
30
|
+
`push-in`, `pull-out`, `tracking`, `orbit`, `static` / `locked-off`, `crane reveal`,
|
|
31
|
+
`pan`, `tilt`, `zoom`, `handheld`, and `steadicam`. Shot-size terms such as
|
|
32
|
+
`wide shot`, `medium shot`, `close-up`, and `establishing shot` do not count as
|
|
33
|
+
movement conflicts, so `wide shot, slow push-in` is valid while `push-in and orbit`
|
|
34
|
+
still raises `prompt-quality-multiple-camera-moves`.
|
|
35
|
+
|
|
36
|
+
For Seedance image-to-video work, keep imported still-image guidance separate
|
|
37
|
+
from motion prompting. The still image should carry composition, identity,
|
|
38
|
+
wardrobe, props, lighting, and framing. The Seedance prompt should preserve the
|
|
39
|
+
source image and add one visible action plus one camera move for a short clip.
|
|
40
|
+
|
|
41
|
+
## Dialogue duration fit
|
|
42
|
+
|
|
43
|
+
`director-preflight` also runs a dialogue timing check from `dialogue-fit.ts`.
|
|
44
|
+
It is separate from the seven prompt-quality anti-pattern checks because it uses
|
|
45
|
+
a duration budget rather than prompt wording alone.
|
|
46
|
+
|
|
47
|
+
Default behavior:
|
|
48
|
+
|
|
49
|
+
1. scenes without `durationSeconds` use a 15-second target
|
|
50
|
+
2. spoken dialogue is estimated at about 2.5 words per second
|
|
51
|
+
3. `DIALOGUE_DURATION_OVERFLOW` is emitted when the estimated spoken duration
|
|
52
|
+
exceeds the scene target
|
|
53
|
+
4. the issue is a warning by default
|
|
54
|
+
5. `DIRECTOR_STRICT_DIALOGUE_FIT=1` promotes it to a blocking error
|
|
55
|
+
|
|
56
|
+
This check catches scripts that look fine as text but cannot be delivered
|
|
57
|
+
naturally inside the clip duration.
|
|
58
|
+
|
|
59
|
+
## Sample output
|
|
60
|
+
|
|
61
|
+
A scene with adjective soup and a second camera move produces
|
|
62
|
+
`director-preflight` JSON like:
|
|
63
|
+
|
|
64
|
+
```json
|
|
65
|
+
{
|
|
66
|
+
"pass": true,
|
|
67
|
+
"warnings": [
|
|
68
|
+
{
|
|
69
|
+
"severity": "warn",
|
|
70
|
+
"code": "prompt-quality-adjective-soup",
|
|
71
|
+
"scope": "scene:0",
|
|
72
|
+
"message": "Scene 1: clause has 6 adjectives (threshold: 4): ...",
|
|
73
|
+
"suggestion": "Tighten scene wording before approval; see docs/PROMPT_QUALITY.md."
|
|
74
|
+
}
|
|
75
|
+
],
|
|
76
|
+
"errors": []
|
|
77
|
+
}
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
Under `DIRECTOR_STRICT_PROMPT_QUALITY=1` the same issues appear on `errors`,
|
|
81
|
+
`pass` flips to `false`, and `execute`/`produce` is blocked (director-mode
|
|
82
|
+
preflight failures gate provider submission).
|
|
83
|
+
|
|
84
|
+
## Promoting to blocking
|
|
85
|
+
|
|
86
|
+
```bash
|
|
87
|
+
DIRECTOR_STRICT_PROMPT_QUALITY=1 vclaw video director-preflight --project <slug>
|
|
88
|
+
```
|
|
89
|
+
|
|
90
|
+
Team workflows that want prompt-quality to be a release gate can export the
|
|
91
|
+
variable in CI so every run treats handbook violations the same as content
|
|
92
|
+
hazards. Teams still iterating can leave it unset and treat the warnings as
|
|
93
|
+
review cues.
|
|
94
|
+
|
|
95
|
+
## Integration points
|
|
96
|
+
|
|
97
|
+
- Emitted by `checkPromptQuality` in `src/video/director-preflight.ts`.
|
|
98
|
+
- Surfaces in the existing `vclaw video director-preflight` JSON payload.
|
|
99
|
+
- Flows into `director-preflight`'s `result.warnings` / `result.errors`
|
|
100
|
+
buckets, so all downstream consumers (tests, CI checks, storyboard.md
|
|
101
|
+
approval review) see them automatically.
|
|
102
|
+
|
|
103
|
+
## Multi-shot cinematic prompt validation
|
|
104
|
+
|
|
105
|
+
`runMultiShotChecks(prompt, preset)` enforces the structural rules for
|
|
106
|
+
multi-shot cinematic prompts. It lives in the same module as
|
|
107
|
+
`runPromptQualityChecks` (`src/video/prompt-quality.ts`) and is invoked
|
|
108
|
+
via:
|
|
109
|
+
|
|
110
|
+
```bash
|
|
111
|
+
vclaw video multi-shot --validate
|
|
112
|
+
```
|
|
113
|
+
|
|
114
|
+
Unlike the seven anti-pattern checks above, all issues from
|
|
115
|
+
`runMultiShotChecks` are **always `error` severity** — they are
|
|
116
|
+
structural requirements of the multi-shot format, not stylistic
|
|
117
|
+
guidelines, so they cannot be downgraded to warnings by omitting
|
|
118
|
+
`DIRECTOR_STRICT_PROMPT_QUALITY`.
|
|
119
|
+
|
|
120
|
+
### Presets
|
|
121
|
+
|
|
122
|
+
Four presets ship today, each declaring its own duration, shot-count
|
|
123
|
+
window, per-shot duration bounds, and character budget. The default
|
|
124
|
+
remains `cinematic-15s`; the others target a specific provider's clip
|
|
125
|
+
duration:
|
|
126
|
+
|
|
127
|
+
| Preset | total | shot range | shot count | maxChars |
|
|
128
|
+
|---|---|---|---|---|
|
|
129
|
+
| `cinematic-15s` *(default)* | 15 s | 2–5 s | 3–7 | 1500 |
|
|
130
|
+
| `seedance-10s` | 10 s | 2–5 s | 2–5 | 1500 |
|
|
131
|
+
| `veo-8s` | 8 s | 2–4 s | 2–4 | 1500 |
|
|
132
|
+
| `runway-10s` | 10 s | 2–5 s | 2–5 | 1000 |
|
|
133
|
+
|
|
134
|
+
### Issue codes
|
|
135
|
+
|
|
136
|
+
| Code | What it catches |
|
|
137
|
+
|---|---|
|
|
138
|
+
| `multi-shot-timecode-parse` | A timecode in the prompt cannot be parsed |
|
|
139
|
+
| `multi-shot-timecode-start` | First timecode is not `00:00` |
|
|
140
|
+
| `multi-shot-timecode-gap` | Consecutive timecodes overlap or leave a gap |
|
|
141
|
+
| `multi-shot-timecode-total` | Timecodes do not sum to the preset's `totalSeconds` |
|
|
142
|
+
| `multi-shot-shot-duration` | A shot's duration falls outside the preset's `[minShotSeconds, maxShotSeconds]` |
|
|
143
|
+
| `multi-shot-shot-count-out-of-range` | Parsed shot count is outside the preset's `[minShots, maxShots]` window. Message branches on under vs over |
|
|
144
|
+
| `multi-shot-overlong` | Total prompt character count exceeds the preset's `maxChars` |
|
|
145
|
+
| `multi-shot-repeated-parameter` | A consecutive pair of shots shares the same shot size, lens, angle, or camera movement |
|
|
146
|
+
| `multi-shot-missing-metadata` | The required `Location / Style / Audio` metadata block is absent |
|
|
147
|
+
|
|
148
|
+
Matching for consecutive-shot-repeat checks is hyphen/space-insensitive,
|
|
149
|
+
so `push in` and `push-in` are treated as the same value.
|
|
150
|
+
|
|
151
|
+
### Canonical vocabularies
|
|
152
|
+
|
|
153
|
+
The shot-parameter vocabularies used for consecutive-repeat detection are
|
|
154
|
+
defined in `src/video/prompt-quality.ts` and are now canonical for the
|
|
155
|
+
entire module:
|
|
156
|
+
|
|
157
|
+
- `SHOT_SIZE_VOCABULARY` — e.g. `wide shot`, `medium shot`, `close-up`
|
|
158
|
+
- `LENS_VOCABULARY` — e.g. `wide angle`, `telephoto`, `macro`
|
|
159
|
+
- `ANGLE_VOCABULARY` — e.g. `eye level`, `low angle`, `bird's eye`
|
|
160
|
+
- `CAMERA_MOVE_VOCABULARY` — movement families shared with `runPromptQualityChecks`
|
|
161
|
+
|
|
162
|
+
### Smoke
|
|
163
|
+
|
|
164
|
+
```bash
|
|
165
|
+
npm run smoke:multi-shot
|
|
166
|
+
```
|
|
167
|
+
|
|
168
|
+
Builds the project, runs `vclaw video multi-shot --plan`, then validates
|
|
169
|
+
a fixture at `references/video/.fixtures/multi-shot-valid.txt` — a
|
|
170
|
+
no-network plan → validate round-trip.
|
|
171
|
+
|
|
172
|
+
## filmmaking-prompts artifact lint (`prompt-lint`)
|
|
173
|
+
|
|
174
|
+
Distinct from the storyboard-scene anti-pattern checks above,
|
|
175
|
+
`lintFilmmakingPrompts` (`src/video/prompt-lint.ts`) is a separate, pure
|
|
176
|
+
validator that runs over a **`filmmaking-prompts.json` artifact** (not
|
|
177
|
+
storyboard scenes). It is exposed as its own command:
|
|
178
|
+
|
|
179
|
+
```bash
|
|
180
|
+
vclaw video prompt-lint (--project <slug> | --file <path>) [--register prose|numeric] [--cast <Name:descriptor> ...] [--brand <token> ...]
|
|
181
|
+
```
|
|
182
|
+
|
|
183
|
+
Per Seedance packet it checks the 10-block order (text-driven packets only),
|
|
184
|
+
word count (warn outside the **280–600 words/packet** window), the required
|
|
185
|
+
video blocks `SUBJECT LOCK` / `CAPTURE REALISM` / `CAMERA CAPTURE` (text-driven
|
|
186
|
+
only), the single-full-frame grid guard whenever a storyboard-grid reference is
|
|
187
|
+
attached (else error — the grid leaks as a moving split-screen), no Kelvin/degree
|
|
188
|
+
numeric tokens in a prose-register packet, and optional proper-name / brand scrubs
|
|
189
|
+
when `--cast` / `--brand` are passed. Output is
|
|
190
|
+
`{ packets: [{ sceneIndex, issues[] }], ok }`, where `ok` is true **iff** no
|
|
191
|
+
`error`-severity issue is raised on any packet.
|
|
192
|
+
|
|
193
|
+
### Issue codes
|
|
194
|
+
|
|
195
|
+
| Code | What it catches |
|
|
196
|
+
|---|---|
|
|
197
|
+
| `seedance-block-order` | 10-block order violated (text-driven packets only) |
|
|
198
|
+
| `word-count` | Packet word count outside the 280–600 window (warning) |
|
|
199
|
+
| `missing-required-block` | A required video block (`SUBJECT LOCK` / `CAPTURE REALISM` / `CAMERA CAPTURE`) is absent |
|
|
200
|
+
| `grid-guard-missing` | A storyboard-grid reference is attached but the single-full-frame guard is missing (error) |
|
|
201
|
+
| `numeric-in-prose` | Kelvin/degree numeric tokens in a `prose`-register packet |
|
|
202
|
+
| `proper-name-leak` | A proper name survives the cast scrub (only when `--cast` is passed) |
|
|
203
|
+
| `brand-leak` | A brand token survives the scrub (only when `--brand` is passed) |
|
|
204
|
+
|
|
205
|
+
## Follow-on roadmap
|
|
206
|
+
|
|
207
|
+
- Per-project threshold overrides (today: hardcoded constants).
|
|
208
|
+
- LLM-backed checks for subtler anti-patterns ("show don't tell", beat
|
|
209
|
+
structure).
|
|
210
|
+
- Auto-fix suggestions, analogous to `DIRECTOR_AUTO_FIX_CONTENT=1` for
|
|
211
|
+
content hazards.
|
|
212
|
+
- Tie into the Tier-2 prompt-structure schema (item 9 in
|
|
213
|
+
`MASTER_PLAN_ALIGNMENT.md`) so each check points at the matching schema
|
|
214
|
+
section.
|