@vibeframe/cli 0.54.0 → 0.55.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/dist/index.js +63452 -233
- package/package.json +11 -6
- package/dist/agent/adapters/claude.d.ts +0 -15
- package/dist/agent/adapters/claude.d.ts.map +0 -1
- package/dist/agent/adapters/claude.js +0 -119
- package/dist/agent/adapters/claude.js.map +0 -1
- package/dist/agent/adapters/gemini.d.ts +0 -15
- package/dist/agent/adapters/gemini.d.ts.map +0 -1
- package/dist/agent/adapters/gemini.js +0 -132
- package/dist/agent/adapters/gemini.js.map +0 -1
- package/dist/agent/adapters/index.d.ts +0 -28
- package/dist/agent/adapters/index.d.ts.map +0 -1
- package/dist/agent/adapters/index.js +0 -43
- package/dist/agent/adapters/index.js.map +0 -1
- package/dist/agent/adapters/ollama.d.ts +0 -20
- package/dist/agent/adapters/ollama.d.ts.map +0 -1
- package/dist/agent/adapters/ollama.js +0 -186
- package/dist/agent/adapters/ollama.js.map +0 -1
- package/dist/agent/adapters/openai.d.ts +0 -15
- package/dist/agent/adapters/openai.d.ts.map +0 -1
- package/dist/agent/adapters/openai.js +0 -92
- package/dist/agent/adapters/openai.js.map +0 -1
- package/dist/agent/adapters/openrouter.d.ts +0 -16
- package/dist/agent/adapters/openrouter.d.ts.map +0 -1
- package/dist/agent/adapters/openrouter.js +0 -100
- package/dist/agent/adapters/openrouter.js.map +0 -1
- package/dist/agent/adapters/openrouter.test.d.ts +0 -5
- package/dist/agent/adapters/openrouter.test.d.ts.map +0 -1
- package/dist/agent/adapters/openrouter.test.js +0 -73
- package/dist/agent/adapters/openrouter.test.js.map +0 -1
- package/dist/agent/adapters/xai.d.ts +0 -15
- package/dist/agent/adapters/xai.d.ts.map +0 -1
- package/dist/agent/adapters/xai.js +0 -95
- package/dist/agent/adapters/xai.js.map +0 -1
- package/dist/agent/index.d.ts +0 -69
- package/dist/agent/index.d.ts.map +0 -1
- package/dist/agent/index.js +0 -180
- package/dist/agent/index.js.map +0 -1
- package/dist/agent/memory/index.d.ts +0 -70
- package/dist/agent/memory/index.d.ts.map +0 -1
- package/dist/agent/memory/index.js +0 -132
- package/dist/agent/memory/index.js.map +0 -1
- package/dist/agent/prompts/system.d.ts +0 -6
- package/dist/agent/prompts/system.d.ts.map +0 -1
- package/dist/agent/prompts/system.js +0 -103
- package/dist/agent/prompts/system.js.map +0 -1
- package/dist/agent/tools/ai-editing.d.ts +0 -15
- package/dist/agent/tools/ai-editing.d.ts.map +0 -1
- package/dist/agent/tools/ai-editing.js +0 -763
- package/dist/agent/tools/ai-editing.js.map +0 -1
- package/dist/agent/tools/ai-generation.d.ts +0 -13
- package/dist/agent/tools/ai-generation.d.ts.map +0 -1
- package/dist/agent/tools/ai-generation.js +0 -973
- package/dist/agent/tools/ai-generation.js.map +0 -1
- package/dist/agent/tools/ai-pipeline.d.ts +0 -14
- package/dist/agent/tools/ai-pipeline.d.ts.map +0 -1
- package/dist/agent/tools/ai-pipeline.js +0 -961
- package/dist/agent/tools/ai-pipeline.js.map +0 -1
- package/dist/agent/tools/ai.d.ts +0 -13
- package/dist/agent/tools/ai.d.ts.map +0 -1
- package/dist/agent/tools/ai.js +0 -19
- package/dist/agent/tools/ai.js.map +0 -1
- package/dist/agent/tools/batch.d.ts +0 -6
- package/dist/agent/tools/batch.d.ts.map +0 -1
- package/dist/agent/tools/batch.js +0 -383
- package/dist/agent/tools/batch.js.map +0 -1
- package/dist/agent/tools/e2e.test.d.ts +0 -26
- package/dist/agent/tools/e2e.test.d.ts.map +0 -1
- package/dist/agent/tools/e2e.test.js +0 -397
- package/dist/agent/tools/e2e.test.js.map +0 -1
- package/dist/agent/tools/export.d.ts +0 -6
- package/dist/agent/tools/export.d.ts.map +0 -1
- package/dist/agent/tools/export.js +0 -171
- package/dist/agent/tools/export.js.map +0 -1
- package/dist/agent/tools/filesystem.d.ts +0 -6
- package/dist/agent/tools/filesystem.d.ts.map +0 -1
- package/dist/agent/tools/filesystem.js +0 -212
- package/dist/agent/tools/filesystem.js.map +0 -1
- package/dist/agent/tools/index.d.ts +0 -66
- package/dist/agent/tools/index.d.ts.map +0 -1
- package/dist/agent/tools/index.js +0 -123
- package/dist/agent/tools/index.js.map +0 -1
- package/dist/agent/tools/integration.test.d.ts +0 -11
- package/dist/agent/tools/integration.test.d.ts.map +0 -1
- package/dist/agent/tools/integration.test.js +0 -659
- package/dist/agent/tools/integration.test.js.map +0 -1
- package/dist/agent/tools/media.d.ts +0 -6
- package/dist/agent/tools/media.d.ts.map +0 -1
- package/dist/agent/tools/media.js +0 -616
- package/dist/agent/tools/media.js.map +0 -1
- package/dist/agent/tools/project.d.ts +0 -6
- package/dist/agent/tools/project.d.ts.map +0 -1
- package/dist/agent/tools/project.js +0 -284
- package/dist/agent/tools/project.js.map +0 -1
- package/dist/agent/tools/scene.d.ts +0 -17
- package/dist/agent/tools/scene.d.ts.map +0 -1
- package/dist/agent/tools/scene.js +0 -263
- package/dist/agent/tools/scene.js.map +0 -1
- package/dist/agent/tools/scene.test.d.ts +0 -2
- package/dist/agent/tools/scene.test.d.ts.map +0 -1
- package/dist/agent/tools/scene.test.js +0 -139
- package/dist/agent/tools/scene.test.js.map +0 -1
- package/dist/agent/tools/timeline.d.ts +0 -6
- package/dist/agent/tools/timeline.d.ts.map +0 -1
- package/dist/agent/tools/timeline.js +0 -875
- package/dist/agent/tools/timeline.js.map +0 -1
- package/dist/agent/types.d.ts +0 -59
- package/dist/agent/types.d.ts.map +0 -1
- package/dist/agent/types.js +0 -5
- package/dist/agent/types.js.map +0 -1
- package/dist/commands/_shared/scene-html-emit.d.ts +0 -120
- package/dist/commands/_shared/scene-html-emit.d.ts.map +0 -1
- package/dist/commands/_shared/scene-html-emit.js +0 -422
- package/dist/commands/_shared/scene-html-emit.js.map +0 -1
- package/dist/commands/_shared/scene-html-emit.test.d.ts +0 -2
- package/dist/commands/_shared/scene-html-emit.test.d.ts.map +0 -1
- package/dist/commands/_shared/scene-html-emit.test.js +0 -396
- package/dist/commands/_shared/scene-html-emit.test.js.map +0 -1
- package/dist/commands/_shared/scene-lint.d.ts +0 -110
- package/dist/commands/_shared/scene-lint.d.ts.map +0 -1
- package/dist/commands/_shared/scene-lint.js +0 -207
- package/dist/commands/_shared/scene-lint.js.map +0 -1
- package/dist/commands/_shared/scene-lint.test.d.ts +0 -2
- package/dist/commands/_shared/scene-lint.test.d.ts.map +0 -1
- package/dist/commands/_shared/scene-lint.test.js +0 -208
- package/dist/commands/_shared/scene-lint.test.js.map +0 -1
- package/dist/commands/_shared/scene-project.d.ts +0 -101
- package/dist/commands/_shared/scene-project.d.ts.map +0 -1
- package/dist/commands/_shared/scene-project.js +0 -281
- package/dist/commands/_shared/scene-project.js.map +0 -1
- package/dist/commands/_shared/scene-project.test.d.ts +0 -2
- package/dist/commands/_shared/scene-project.test.d.ts.map +0 -1
- package/dist/commands/_shared/scene-project.test.js +0 -203
- package/dist/commands/_shared/scene-project.test.js.map +0 -1
- package/dist/commands/_shared/scene-render.d.ts +0 -79
- package/dist/commands/_shared/scene-render.d.ts.map +0 -1
- package/dist/commands/_shared/scene-render.js +0 -138
- package/dist/commands/_shared/scene-render.js.map +0 -1
- package/dist/commands/_shared/scene-render.test.d.ts +0 -2
- package/dist/commands/_shared/scene-render.test.d.ts.map +0 -1
- package/dist/commands/_shared/scene-render.test.js +0 -145
- package/dist/commands/_shared/scene-render.test.js.map +0 -1
- package/dist/commands/_shared/segments-to-scenes.d.ts +0 -85
- package/dist/commands/_shared/segments-to-scenes.d.ts.map +0 -1
- package/dist/commands/_shared/segments-to-scenes.js +0 -202
- package/dist/commands/_shared/segments-to-scenes.js.map +0 -1
- package/dist/commands/_shared/segments-to-scenes.test.d.ts +0 -2
- package/dist/commands/_shared/segments-to-scenes.test.d.ts.map +0 -1
- package/dist/commands/_shared/segments-to-scenes.test.js +0 -219
- package/dist/commands/_shared/segments-to-scenes.test.js.map +0 -1
- package/dist/commands/_shared/tts-resolve.d.ts +0 -75
- package/dist/commands/_shared/tts-resolve.d.ts.map +0 -1
- package/dist/commands/_shared/tts-resolve.js +0 -89
- package/dist/commands/_shared/tts-resolve.js.map +0 -1
- package/dist/commands/_shared/tts-resolve.test.d.ts +0 -6
- package/dist/commands/_shared/tts-resolve.test.d.ts.map +0 -1
- package/dist/commands/_shared/tts-resolve.test.js +0 -147
- package/dist/commands/_shared/tts-resolve.test.js.map +0 -1
- package/dist/commands/agent.d.ts +0 -21
- package/dist/commands/agent.d.ts.map +0 -1
- package/dist/commands/agent.js +0 -285
- package/dist/commands/agent.js.map +0 -1
- package/dist/commands/ai-analyze.d.ts +0 -106
- package/dist/commands/ai-analyze.d.ts.map +0 -1
- package/dist/commands/ai-analyze.js +0 -320
- package/dist/commands/ai-analyze.js.map +0 -1
- package/dist/commands/ai-animated-caption.d.ts +0 -64
- package/dist/commands/ai-animated-caption.d.ts.map +0 -1
- package/dist/commands/ai-animated-caption.js +0 -272
- package/dist/commands/ai-animated-caption.js.map +0 -1
- package/dist/commands/ai-audio.d.ts +0 -98
- package/dist/commands/ai-audio.d.ts.map +0 -1
- package/dist/commands/ai-audio.js +0 -1059
- package/dist/commands/ai-audio.js.map +0 -1
- package/dist/commands/ai-broll.d.ts +0 -15
- package/dist/commands/ai-broll.d.ts.map +0 -1
- package/dist/commands/ai-broll.js +0 -421
- package/dist/commands/ai-broll.js.map +0 -1
- package/dist/commands/ai-edit-cli.d.ts +0 -14
- package/dist/commands/ai-edit-cli.d.ts.map +0 -1
- package/dist/commands/ai-edit-cli.js +0 -585
- package/dist/commands/ai-edit-cli.js.map +0 -1
- package/dist/commands/ai-edit.d.ts +0 -398
- package/dist/commands/ai-edit.d.ts.map +0 -1
- package/dist/commands/ai-edit.js +0 -1060
- package/dist/commands/ai-edit.js.map +0 -1
- package/dist/commands/ai-fill-gaps.d.ts +0 -14
- package/dist/commands/ai-fill-gaps.d.ts.map +0 -1
- package/dist/commands/ai-fill-gaps.js +0 -447
- package/dist/commands/ai-fill-gaps.js.map +0 -1
- package/dist/commands/ai-helpers.d.ts +0 -20
- package/dist/commands/ai-helpers.d.ts.map +0 -1
- package/dist/commands/ai-helpers.js +0 -59
- package/dist/commands/ai-helpers.js.map +0 -1
- package/dist/commands/ai-highlights.d.ts +0 -127
- package/dist/commands/ai-highlights.d.ts.map +0 -1
- package/dist/commands/ai-highlights.js +0 -1053
- package/dist/commands/ai-highlights.js.map +0 -1
- package/dist/commands/ai-image.d.ts +0 -76
- package/dist/commands/ai-image.d.ts.map +0 -1
- package/dist/commands/ai-image.js +0 -858
- package/dist/commands/ai-image.js.map +0 -1
- package/dist/commands/ai-motion.d.ts +0 -50
- package/dist/commands/ai-motion.d.ts.map +0 -1
- package/dist/commands/ai-motion.js +0 -297
- package/dist/commands/ai-motion.js.map +0 -1
- package/dist/commands/ai-narrate.d.ts +0 -66
- package/dist/commands/ai-narrate.d.ts.map +0 -1
- package/dist/commands/ai-narrate.js +0 -332
- package/dist/commands/ai-narrate.js.map +0 -1
- package/dist/commands/ai-review.d.ts +0 -57
- package/dist/commands/ai-review.d.ts.map +0 -1
- package/dist/commands/ai-review.js +0 -270
- package/dist/commands/ai-review.js.map +0 -1
- package/dist/commands/ai-script-pipeline-cli.d.ts +0 -9
- package/dist/commands/ai-script-pipeline-cli.d.ts.map +0 -1
- package/dist/commands/ai-script-pipeline-cli.js +0 -502
- package/dist/commands/ai-script-pipeline-cli.js.map +0 -1
- package/dist/commands/ai-script-pipeline.d.ts +0 -305
- package/dist/commands/ai-script-pipeline.d.ts.map +0 -1
- package/dist/commands/ai-script-pipeline.js +0 -1546
- package/dist/commands/ai-script-pipeline.js.map +0 -1
- package/dist/commands/ai-suggest-edit.d.ts +0 -14
- package/dist/commands/ai-suggest-edit.d.ts.map +0 -1
- package/dist/commands/ai-suggest-edit.js +0 -215
- package/dist/commands/ai-suggest-edit.js.map +0 -1
- package/dist/commands/ai-video-fx.d.ts +0 -14
- package/dist/commands/ai-video-fx.d.ts.map +0 -1
- package/dist/commands/ai-video-fx.js +0 -396
- package/dist/commands/ai-video-fx.js.map +0 -1
- package/dist/commands/ai-video.d.ts +0 -91
- package/dist/commands/ai-video.d.ts.map +0 -1
- package/dist/commands/ai-video.js +0 -1055
- package/dist/commands/ai-video.js.map +0 -1
- package/dist/commands/ai-viral.d.ts +0 -15
- package/dist/commands/ai-viral.d.ts.map +0 -1
- package/dist/commands/ai-viral.js +0 -507
- package/dist/commands/ai-viral.js.map +0 -1
- package/dist/commands/ai-visual-fx.d.ts +0 -14
- package/dist/commands/ai-visual-fx.d.ts.map +0 -1
- package/dist/commands/ai-visual-fx.js +0 -521
- package/dist/commands/ai-visual-fx.js.map +0 -1
- package/dist/commands/ai.d.ts +0 -38
- package/dist/commands/ai.d.ts.map +0 -1
- package/dist/commands/ai.js +0 -225
- package/dist/commands/ai.js.map +0 -1
- package/dist/commands/ai.test.d.ts +0 -2
- package/dist/commands/ai.test.d.ts.map +0 -1
- package/dist/commands/ai.test.js +0 -557
- package/dist/commands/ai.test.js.map +0 -1
- package/dist/commands/analyze.d.ts +0 -16
- package/dist/commands/analyze.d.ts.map +0 -1
- package/dist/commands/analyze.js +0 -247
- package/dist/commands/analyze.js.map +0 -1
- package/dist/commands/audio.d.ts +0 -18
- package/dist/commands/audio.d.ts.map +0 -1
- package/dist/commands/audio.js +0 -539
- package/dist/commands/audio.js.map +0 -1
- package/dist/commands/batch.d.ts +0 -3
- package/dist/commands/batch.d.ts.map +0 -1
- package/dist/commands/batch.js +0 -419
- package/dist/commands/batch.js.map +0 -1
- package/dist/commands/batch.test.d.ts +0 -2
- package/dist/commands/batch.test.d.ts.map +0 -1
- package/dist/commands/batch.test.js +0 -203
- package/dist/commands/batch.test.js.map +0 -1
- package/dist/commands/context.d.ts +0 -7
- package/dist/commands/context.d.ts.map +0 -1
- package/dist/commands/context.js +0 -66
- package/dist/commands/context.js.map +0 -1
- package/dist/commands/demo.d.ts +0 -7
- package/dist/commands/demo.d.ts.map +0 -1
- package/dist/commands/demo.js +0 -192
- package/dist/commands/demo.js.map +0 -1
- package/dist/commands/detect.d.ts +0 -56
- package/dist/commands/detect.d.ts.map +0 -1
- package/dist/commands/detect.js +0 -464
- package/dist/commands/detect.js.map +0 -1
- package/dist/commands/doctor.d.ts +0 -6
- package/dist/commands/doctor.d.ts.map +0 -1
- package/dist/commands/doctor.js +0 -322
- package/dist/commands/doctor.js.map +0 -1
- package/dist/commands/edit-cmd.d.ts +0 -112
- package/dist/commands/edit-cmd.d.ts.map +0 -1
- package/dist/commands/edit-cmd.js +0 -1041
- package/dist/commands/edit-cmd.js.map +0 -1
- package/dist/commands/export.d.ts +0 -61
- package/dist/commands/export.d.ts.map +0 -1
- package/dist/commands/export.js +0 -980
- package/dist/commands/export.js.map +0 -1
- package/dist/commands/export.test.d.ts +0 -2
- package/dist/commands/export.test.d.ts.map +0 -1
- package/dist/commands/export.test.js +0 -107
- package/dist/commands/export.test.js.map +0 -1
- package/dist/commands/generate.d.ts +0 -84
- package/dist/commands/generate.d.ts.map +0 -1
- package/dist/commands/generate.js +0 -2030
- package/dist/commands/generate.js.map +0 -1
- package/dist/commands/media.d.ts +0 -3
- package/dist/commands/media.d.ts.map +0 -1
- package/dist/commands/media.js +0 -163
- package/dist/commands/media.js.map +0 -1
- package/dist/commands/output.d.ts +0 -51
- package/dist/commands/output.d.ts.map +0 -1
- package/dist/commands/output.js +0 -219
- package/dist/commands/output.js.map +0 -1
- package/dist/commands/output.test.d.ts +0 -2
- package/dist/commands/output.test.d.ts.map +0 -1
- package/dist/commands/output.test.js +0 -151
- package/dist/commands/output.test.js.map +0 -1
- package/dist/commands/pipeline.d.ts +0 -19
- package/dist/commands/pipeline.d.ts.map +0 -1
- package/dist/commands/pipeline.js +0 -345
- package/dist/commands/pipeline.js.map +0 -1
- package/dist/commands/project.d.ts +0 -3
- package/dist/commands/project.d.ts.map +0 -1
- package/dist/commands/project.js +0 -181
- package/dist/commands/project.js.map +0 -1
- package/dist/commands/project.test.d.ts +0 -2
- package/dist/commands/project.test.d.ts.map +0 -1
- package/dist/commands/project.test.js +0 -105
- package/dist/commands/project.test.js.map +0 -1
- package/dist/commands/run.d.ts +0 -15
- package/dist/commands/run.d.ts.map +0 -1
- package/dist/commands/run.js +0 -204
- package/dist/commands/run.js.map +0 -1
- package/dist/commands/sanitize.d.ts +0 -21
- package/dist/commands/sanitize.d.ts.map +0 -1
- package/dist/commands/sanitize.js +0 -56
- package/dist/commands/sanitize.js.map +0 -1
- package/dist/commands/scene.d.ts +0 -86
- package/dist/commands/scene.d.ts.map +0 -1
- package/dist/commands/scene.js +0 -719
- package/dist/commands/scene.js.map +0 -1
- package/dist/commands/scene.test.d.ts +0 -2
- package/dist/commands/scene.test.d.ts.map +0 -1
- package/dist/commands/scene.test.js +0 -219
- package/dist/commands/scene.test.js.map +0 -1
- package/dist/commands/schema.d.ts +0 -13
- package/dist/commands/schema.d.ts.map +0 -1
- package/dist/commands/schema.js +0 -218
- package/dist/commands/schema.js.map +0 -1
- package/dist/commands/setup.d.ts +0 -6
- package/dist/commands/setup.d.ts.map +0 -1
- package/dist/commands/setup.js +0 -461
- package/dist/commands/setup.js.map +0 -1
- package/dist/commands/timeline.d.ts +0 -3
- package/dist/commands/timeline.d.ts.map +0 -1
- package/dist/commands/timeline.js +0 -609
- package/dist/commands/timeline.js.map +0 -1
- package/dist/commands/timeline.test.d.ts +0 -2
- package/dist/commands/timeline.test.d.ts.map +0 -1
- package/dist/commands/timeline.test.js +0 -334
- package/dist/commands/timeline.test.js.map +0 -1
- package/dist/commands/validate.d.ts +0 -34
- package/dist/commands/validate.d.ts.map +0 -1
- package/dist/commands/validate.js +0 -70
- package/dist/commands/validate.js.map +0 -1
- package/dist/config/config.test.d.ts +0 -2
- package/dist/config/config.test.d.ts.map +0 -1
- package/dist/config/config.test.js +0 -164
- package/dist/config/config.test.js.map +0 -1
- package/dist/config/index.d.ts +0 -35
- package/dist/config/index.d.ts.map +0 -1
- package/dist/config/index.js +0 -101
- package/dist/config/index.js.map +0 -1
- package/dist/config/schema.d.ts +0 -52
- package/dist/config/schema.d.ts.map +0 -1
- package/dist/config/schema.js +0 -44
- package/dist/config/schema.js.map +0 -1
- package/dist/engine/index.d.ts +0 -3
- package/dist/engine/index.d.ts.map +0 -1
- package/dist/engine/index.js +0 -2
- package/dist/engine/index.js.map +0 -1
- package/dist/engine/project.d.ts +0 -84
- package/dist/engine/project.d.ts.map +0 -1
- package/dist/engine/project.js +0 -355
- package/dist/engine/project.js.map +0 -1
- package/dist/engine/project.test.d.ts +0 -2
- package/dist/engine/project.test.d.ts.map +0 -1
- package/dist/engine/project.test.js +0 -599
- package/dist/engine/project.test.js.map +0 -1
- package/dist/index.d.ts +0 -7
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/pipeline/executor.d.ts +0 -19
- package/dist/pipeline/executor.d.ts.map +0 -1
- package/dist/pipeline/executor.js +0 -397
- package/dist/pipeline/executor.js.map +0 -1
- package/dist/pipeline/index.d.ts +0 -4
- package/dist/pipeline/index.d.ts.map +0 -1
- package/dist/pipeline/index.js +0 -2
- package/dist/pipeline/index.js.map +0 -1
- package/dist/pipeline/renderers/__tests__/html-template.test.d.ts +0 -2
- package/dist/pipeline/renderers/__tests__/html-template.test.d.ts.map +0 -1
- package/dist/pipeline/renderers/__tests__/html-template.test.js +0 -170
- package/dist/pipeline/renderers/__tests__/html-template.test.js.map +0 -1
- package/dist/pipeline/renderers/__tests__/integration.test.d.ts +0 -2
- package/dist/pipeline/renderers/__tests__/integration.test.d.ts.map +0 -1
- package/dist/pipeline/renderers/__tests__/integration.test.js +0 -175
- package/dist/pipeline/renderers/__tests__/integration.test.js.map +0 -1
- package/dist/pipeline/renderers/chrome.d.ts +0 -26
- package/dist/pipeline/renderers/chrome.d.ts.map +0 -1
- package/dist/pipeline/renderers/chrome.js +0 -48
- package/dist/pipeline/renderers/chrome.js.map +0 -1
- package/dist/pipeline/renderers/html-clips.d.ts +0 -20
- package/dist/pipeline/renderers/html-clips.d.ts.map +0 -1
- package/dist/pipeline/renderers/html-clips.js +0 -50
- package/dist/pipeline/renderers/html-clips.js.map +0 -1
- package/dist/pipeline/renderers/html-runtime.d.ts +0 -7
- package/dist/pipeline/renderers/html-runtime.d.ts.map +0 -1
- package/dist/pipeline/renderers/html-runtime.js +0 -80
- package/dist/pipeline/renderers/html-runtime.js.map +0 -1
- package/dist/pipeline/renderers/html-template.d.ts +0 -3
- package/dist/pipeline/renderers/html-template.d.ts.map +0 -1
- package/dist/pipeline/renderers/html-template.js +0 -36
- package/dist/pipeline/renderers/html-template.js.map +0 -1
- package/dist/pipeline/renderers/hyperframes.d.ts +0 -8
- package/dist/pipeline/renderers/hyperframes.d.ts.map +0 -1
- package/dist/pipeline/renderers/hyperframes.js +0 -63
- package/dist/pipeline/renderers/hyperframes.js.map +0 -1
- package/dist/pipeline/renderers/project-builder.d.ts +0 -8
- package/dist/pipeline/renderers/project-builder.d.ts.map +0 -1
- package/dist/pipeline/renderers/project-builder.js +0 -65
- package/dist/pipeline/renderers/project-builder.js.map +0 -1
- package/dist/pipeline/renderers/types.d.ts +0 -41
- package/dist/pipeline/renderers/types.d.ts.map +0 -1
- package/dist/pipeline/renderers/types.js +0 -11
- package/dist/pipeline/renderers/types.js.map +0 -1
- package/dist/pipeline/resolver.d.ts +0 -20
- package/dist/pipeline/resolver.d.ts.map +0 -1
- package/dist/pipeline/resolver.js +0 -74
- package/dist/pipeline/resolver.js.map +0 -1
- package/dist/pipeline/types.d.ts +0 -82
- package/dist/pipeline/types.d.ts.map +0 -1
- package/dist/pipeline/types.js +0 -8
- package/dist/pipeline/types.js.map +0 -1
- package/dist/utils/api-key.d.ts +0 -33
- package/dist/utils/api-key.d.ts.map +0 -1
- package/dist/utils/api-key.js +0 -228
- package/dist/utils/api-key.js.map +0 -1
- package/dist/utils/api-key.test.d.ts +0 -2
- package/dist/utils/api-key.test.d.ts.map +0 -1
- package/dist/utils/api-key.test.js +0 -35
- package/dist/utils/api-key.test.js.map +0 -1
- package/dist/utils/audio.d.ts +0 -23
- package/dist/utils/audio.d.ts.map +0 -1
- package/dist/utils/audio.js +0 -79
- package/dist/utils/audio.js.map +0 -1
- package/dist/utils/exec-safe.d.ts +0 -22
- package/dist/utils/exec-safe.d.ts.map +0 -1
- package/dist/utils/exec-safe.js +0 -62
- package/dist/utils/exec-safe.js.map +0 -1
- package/dist/utils/first-run.d.ts +0 -17
- package/dist/utils/first-run.d.ts.map +0 -1
- package/dist/utils/first-run.js +0 -73
- package/dist/utils/first-run.js.map +0 -1
- package/dist/utils/input-validation.d.ts +0 -27
- package/dist/utils/input-validation.d.ts.map +0 -1
- package/dist/utils/input-validation.js +0 -67
- package/dist/utils/input-validation.js.map +0 -1
- package/dist/utils/provider-resolver.d.ts +0 -19
- package/dist/utils/provider-resolver.d.ts.map +0 -1
- package/dist/utils/provider-resolver.js +0 -75
- package/dist/utils/provider-resolver.js.map +0 -1
- package/dist/utils/remotion.d.ts +0 -231
- package/dist/utils/remotion.d.ts.map +0 -1
- package/dist/utils/remotion.js +0 -879
- package/dist/utils/remotion.js.map +0 -1
- package/dist/utils/subtitle.d.ts +0 -65
- package/dist/utils/subtitle.d.ts.map +0 -1
- package/dist/utils/subtitle.js +0 -135
- package/dist/utils/subtitle.js.map +0 -1
- package/dist/utils/subtitle.test.d.ts +0 -2
- package/dist/utils/subtitle.test.d.ts.map +0 -1
- package/dist/utils/subtitle.test.js +0 -175
- package/dist/utils/subtitle.test.js.map +0 -1
- package/dist/utils/tty.d.ts +0 -45
- package/dist/utils/tty.d.ts.map +0 -1
- package/dist/utils/tty.js +0 -231
- package/dist/utils/tty.js.map +0 -1
|
@@ -1,105 +0,0 @@
|
|
|
1
|
-
import { describe, it, expect, beforeEach, afterEach } from "vitest";
|
|
2
|
-
import { execSync } from "child_process";
|
|
3
|
-
import { readFileSync, existsSync, mkdtempSync, rmSync } from "fs";
|
|
4
|
-
import { join, resolve } from "path";
|
|
5
|
-
import { tmpdir } from "os";
|
|
6
|
-
const CLI = `npx tsx ${resolve(__dirname, "../index.ts")}`;
|
|
7
|
-
describe("project commands", () => {
|
|
8
|
-
let tempDir;
|
|
9
|
-
let projectFile;
|
|
10
|
-
beforeEach(() => {
|
|
11
|
-
tempDir = mkdtempSync(join(tmpdir(), "vibe-test-"));
|
|
12
|
-
projectFile = join(tempDir, "test.vibe.json");
|
|
13
|
-
});
|
|
14
|
-
afterEach(() => {
|
|
15
|
-
rmSync(tempDir, { recursive: true, force: true });
|
|
16
|
-
});
|
|
17
|
-
describe("project create", () => {
|
|
18
|
-
it("creates a project file with given name", () => {
|
|
19
|
-
execSync(`${CLI} project create "My Project" -o "${projectFile}"`, {
|
|
20
|
-
cwd: process.cwd(),
|
|
21
|
-
encoding: "utf-8",
|
|
22
|
-
});
|
|
23
|
-
expect(existsSync(projectFile)).toBe(true);
|
|
24
|
-
const content = JSON.parse(readFileSync(projectFile, "utf-8"));
|
|
25
|
-
expect(content.version).toBe("1.0.0");
|
|
26
|
-
expect(content.state.project.name).toBe("My Project");
|
|
27
|
-
});
|
|
28
|
-
it("creates project with custom aspect ratio", () => {
|
|
29
|
-
execSync(`${CLI} project create "Vertical" -o "${projectFile}" -r 9:16`, {
|
|
30
|
-
cwd: process.cwd(),
|
|
31
|
-
encoding: "utf-8",
|
|
32
|
-
});
|
|
33
|
-
const content = JSON.parse(readFileSync(projectFile, "utf-8"));
|
|
34
|
-
expect(content.state.project.aspectRatio).toBe("9:16");
|
|
35
|
-
});
|
|
36
|
-
it("creates project with custom frame rate", () => {
|
|
37
|
-
execSync(`${CLI} project create "HFR" -o "${projectFile}" -f 60`, {
|
|
38
|
-
cwd: process.cwd(),
|
|
39
|
-
encoding: "utf-8",
|
|
40
|
-
});
|
|
41
|
-
const content = JSON.parse(readFileSync(projectFile, "utf-8"));
|
|
42
|
-
expect(content.state.project.frameRate).toBe(60);
|
|
43
|
-
});
|
|
44
|
-
it("creates project with default tracks", () => {
|
|
45
|
-
execSync(`${CLI} project create "Test" -o "${projectFile}"`, {
|
|
46
|
-
cwd: process.cwd(),
|
|
47
|
-
encoding: "utf-8",
|
|
48
|
-
});
|
|
49
|
-
const content = JSON.parse(readFileSync(projectFile, "utf-8"));
|
|
50
|
-
expect(content.state.tracks).toHaveLength(2);
|
|
51
|
-
expect(content.state.tracks[0].type).toBe("video");
|
|
52
|
-
expect(content.state.tracks[1].type).toBe("audio");
|
|
53
|
-
});
|
|
54
|
-
});
|
|
55
|
-
describe("project info", () => {
|
|
56
|
-
beforeEach(() => {
|
|
57
|
-
execSync(`${CLI} project create "Info Test" -o "${projectFile}"`, {
|
|
58
|
-
cwd: process.cwd(),
|
|
59
|
-
encoding: "utf-8",
|
|
60
|
-
});
|
|
61
|
-
});
|
|
62
|
-
it("displays project information", () => {
|
|
63
|
-
const output = execSync(`${CLI} project info "${projectFile}"`, {
|
|
64
|
-
cwd: process.cwd(),
|
|
65
|
-
encoding: "utf-8",
|
|
66
|
-
});
|
|
67
|
-
expect(output).toContain("Info Test");
|
|
68
|
-
expect(output).toContain("16:9");
|
|
69
|
-
expect(output).toContain("30");
|
|
70
|
-
});
|
|
71
|
-
});
|
|
72
|
-
describe("project set", () => {
|
|
73
|
-
beforeEach(() => {
|
|
74
|
-
execSync(`${CLI} project create "Original" -o "${projectFile}"`, {
|
|
75
|
-
cwd: process.cwd(),
|
|
76
|
-
encoding: "utf-8",
|
|
77
|
-
});
|
|
78
|
-
});
|
|
79
|
-
it("updates project name", () => {
|
|
80
|
-
execSync(`${CLI} project set "${projectFile}" -n "Updated Name"`, {
|
|
81
|
-
cwd: process.cwd(),
|
|
82
|
-
encoding: "utf-8",
|
|
83
|
-
});
|
|
84
|
-
const content = JSON.parse(readFileSync(projectFile, "utf-8"));
|
|
85
|
-
expect(content.state.project.name).toBe("Updated Name");
|
|
86
|
-
});
|
|
87
|
-
it("updates aspect ratio", () => {
|
|
88
|
-
execSync(`${CLI} project set "${projectFile}" -r 1:1`, {
|
|
89
|
-
cwd: process.cwd(),
|
|
90
|
-
encoding: "utf-8",
|
|
91
|
-
});
|
|
92
|
-
const content = JSON.parse(readFileSync(projectFile, "utf-8"));
|
|
93
|
-
expect(content.state.project.aspectRatio).toBe("1:1");
|
|
94
|
-
});
|
|
95
|
-
it("updates frame rate", () => {
|
|
96
|
-
execSync(`${CLI} project set "${projectFile}" -f 24`, {
|
|
97
|
-
cwd: process.cwd(),
|
|
98
|
-
encoding: "utf-8",
|
|
99
|
-
});
|
|
100
|
-
const content = JSON.parse(readFileSync(projectFile, "utf-8"));
|
|
101
|
-
expect(content.state.project.frameRate).toBe(24);
|
|
102
|
-
});
|
|
103
|
-
});
|
|
104
|
-
});
|
|
105
|
-
//# sourceMappingURL=project.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"project.test.js","sourceRoot":"","sources":["../../src/commands/project.test.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/run.d.ts
DELETED
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* `vibe run` command — Execute declarative YAML video pipelines.
|
|
3
|
-
*
|
|
4
|
-
* Video as Code: define reproducible, shareable video workflows in YAML.
|
|
5
|
-
* Each step maps to an existing CLI command's execute function.
|
|
6
|
-
*
|
|
7
|
-
* Usage:
|
|
8
|
-
* vibe run pipeline.yaml
|
|
9
|
-
* vibe run pipeline.yaml --dry-run
|
|
10
|
-
* vibe run pipeline.yaml --resume
|
|
11
|
-
* vibe run pipeline.yaml -o ./output/
|
|
12
|
-
*/
|
|
13
|
-
import { Command } from "commander";
|
|
14
|
-
export declare const runCommand: Command;
|
|
15
|
-
//# sourceMappingURL=run.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../../src/commands/run.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAQpC,eAAO,MAAM,UAAU,SA8LnB,CAAC"}
|
package/dist/commands/run.js
DELETED
|
@@ -1,204 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* `vibe run` command — Execute declarative YAML video pipelines.
|
|
3
|
-
*
|
|
4
|
-
* Video as Code: define reproducible, shareable video workflows in YAML.
|
|
5
|
-
* Each step maps to an existing CLI command's execute function.
|
|
6
|
-
*
|
|
7
|
-
* Usage:
|
|
8
|
-
* vibe run pipeline.yaml
|
|
9
|
-
* vibe run pipeline.yaml --dry-run
|
|
10
|
-
* vibe run pipeline.yaml --resume
|
|
11
|
-
* vibe run pipeline.yaml -o ./output/
|
|
12
|
-
*/
|
|
13
|
-
import { Command } from "commander";
|
|
14
|
-
import chalk from "chalk";
|
|
15
|
-
import ora from "ora";
|
|
16
|
-
import { loadPipeline, executePipeline } from "../pipeline/index.js";
|
|
17
|
-
import { outputResult, exitWithError, generalError, usageError } from "./output.js";
|
|
18
|
-
import { loadEnv } from "../utils/api-key.js";
|
|
19
|
-
export const runCommand = new Command("run")
|
|
20
|
-
.description("Execute a YAML video pipeline (Video as Code)")
|
|
21
|
-
.argument("<pipeline>", "Path to pipeline YAML file")
|
|
22
|
-
.option("-o, --output <dir>", "Output directory for step results")
|
|
23
|
-
.option("--dry-run", "Validate and show execution plan without running")
|
|
24
|
-
.option("--resume", "Resume from last checkpoint (skip completed steps)")
|
|
25
|
-
.option("--fail-fast", "Stop on first failed step (default: continue)")
|
|
26
|
-
.option("--budget-usd <n>", "Abort if upper-bound cost estimate exceeds this USD amount", parseFloat)
|
|
27
|
-
.option("--budget-tokens <n>", "Abort if provider token usage exceeds this count", parseInt)
|
|
28
|
-
.option("--max-errors <n>", "Abort if failed step count exceeds this", parseInt)
|
|
29
|
-
.option("--effort <level>", "LLM effort level: low|medium|high|xhigh (Opus 4.7)")
|
|
30
|
-
.option("--json", "Output results as JSON")
|
|
31
|
-
.addHelpText("after", `
|
|
32
|
-
Examples:
|
|
33
|
-
$ vibe run my-pipeline.yaml
|
|
34
|
-
$ vibe run my-pipeline.yaml --dry-run
|
|
35
|
-
$ vibe run my-pipeline.yaml --resume -o ./output/
|
|
36
|
-
$ vibe run my-pipeline.yaml --fail-fast
|
|
37
|
-
$ vibe run my-pipeline.yaml --budget-usd 5 --max-errors 2
|
|
38
|
-
$ vibe run my-pipeline.yaml --effort xhigh
|
|
39
|
-
|
|
40
|
-
Pipeline YAML format:
|
|
41
|
-
name: my-video
|
|
42
|
-
budget: # optional — executor aborts when exceeded
|
|
43
|
-
costUsd: 5.00
|
|
44
|
-
maxToolErrors: 3
|
|
45
|
-
effort: xhigh # optional — Opus 4.7 Task Budgets
|
|
46
|
-
steps:
|
|
47
|
-
- id: image
|
|
48
|
-
action: generate-image
|
|
49
|
-
prompt: "sunset over mountains"
|
|
50
|
-
output: backdrop.png
|
|
51
|
-
- id: video
|
|
52
|
-
action: generate-video
|
|
53
|
-
prompt: "camera push in"
|
|
54
|
-
image: $image.output
|
|
55
|
-
duration: 10
|
|
56
|
-
output: scene.mp4
|
|
57
|
-
|
|
58
|
-
Variable references: $step_id.output, $step_id.data.field, \${ENV_VAR}
|
|
59
|
-
|
|
60
|
-
Cost: Depends on steps. Use --dry-run to preview before executing.
|
|
61
|
-
Run 'vibe schema run' for structured parameter info.
|
|
62
|
-
`)
|
|
63
|
-
.action(async (pipelinePath, options) => {
|
|
64
|
-
// Pipeline steps call execute*() functions directly (not CLI actions),
|
|
65
|
-
// so we must ensure .env is loaded before executor dispatches steps.
|
|
66
|
-
loadEnv();
|
|
67
|
-
const isJson = options.json || process.env.VIBE_JSON_OUTPUT === "1";
|
|
68
|
-
// Build CLI budget override from flags (merged with manifest.budget in executor)
|
|
69
|
-
const cliBudget = {};
|
|
70
|
-
if (typeof options.budgetUsd === "number")
|
|
71
|
-
cliBudget.costUsd = options.budgetUsd;
|
|
72
|
-
if (typeof options.budgetTokens === "number")
|
|
73
|
-
cliBudget.tokens = options.budgetTokens;
|
|
74
|
-
if (typeof options.maxErrors === "number")
|
|
75
|
-
cliBudget.maxToolErrors = options.maxErrors;
|
|
76
|
-
const hasBudgetFlag = Object.keys(cliBudget).length > 0;
|
|
77
|
-
if (options.effort && !["low", "medium", "high", "xhigh"].includes(options.effort)) {
|
|
78
|
-
exitWithError(usageError(`Invalid --effort level: ${options.effort}`, "Use one of: low, medium, high, xhigh"));
|
|
79
|
-
}
|
|
80
|
-
try {
|
|
81
|
-
// Load and validate pipeline
|
|
82
|
-
const manifest = await loadPipeline(pipelinePath);
|
|
83
|
-
if (options.effort)
|
|
84
|
-
manifest.effort = options.effort;
|
|
85
|
-
if (!isJson) {
|
|
86
|
-
console.log();
|
|
87
|
-
console.log(chalk.bold.cyan(` Pipeline: ${manifest.name}`));
|
|
88
|
-
if (manifest.description)
|
|
89
|
-
console.log(chalk.dim(` ${manifest.description}`));
|
|
90
|
-
console.log(chalk.dim(` ${manifest.steps.length} steps`));
|
|
91
|
-
if (manifest.effort)
|
|
92
|
-
console.log(chalk.dim(` effort: ${manifest.effort}`));
|
|
93
|
-
console.log(chalk.dim(" " + "─".repeat(50)));
|
|
94
|
-
console.log();
|
|
95
|
-
}
|
|
96
|
-
// Dry run
|
|
97
|
-
if (options.dryRun) {
|
|
98
|
-
const result = await executePipeline(manifest, {
|
|
99
|
-
dryRun: true,
|
|
100
|
-
outputDir: options.output,
|
|
101
|
-
budget: hasBudgetFlag ? cliBudget : undefined,
|
|
102
|
-
});
|
|
103
|
-
if (isJson) {
|
|
104
|
-
outputResult({
|
|
105
|
-
dryRun: true,
|
|
106
|
-
command: "run",
|
|
107
|
-
name: manifest.name,
|
|
108
|
-
steps: result.steps.map(s => ({ id: s.id, action: s.action, estimatedCost: s.data?.estimatedCost })),
|
|
109
|
-
totalSteps: result.totalSteps,
|
|
110
|
-
budget: result.budget,
|
|
111
|
-
});
|
|
112
|
-
}
|
|
113
|
-
else {
|
|
114
|
-
console.log(chalk.bold(" Execution Plan:"));
|
|
115
|
-
console.log();
|
|
116
|
-
for (let i = 0; i < result.steps.length; i++) {
|
|
117
|
-
const step = result.steps[i];
|
|
118
|
-
const est = step.data?.estimatedCost;
|
|
119
|
-
const costTag = est ? chalk.dim(` ~${est}`) : "";
|
|
120
|
-
console.log(` ${chalk.dim(`${i + 1}.`)} ${chalk.bold(step.id)} ${chalk.dim(`→ ${step.action}`)}${costTag}`);
|
|
121
|
-
}
|
|
122
|
-
if (result.budget) {
|
|
123
|
-
console.log();
|
|
124
|
-
console.log(chalk.dim(` Total upper-bound: $${result.budget.estimatedCostUsd.toFixed(2)}`));
|
|
125
|
-
if (result.budget.abortedBy) {
|
|
126
|
-
console.log(chalk.yellow(` ⚠ Budget ceiling exceeded (${result.budget.abortedBy}) — execution will abort.`));
|
|
127
|
-
}
|
|
128
|
-
}
|
|
129
|
-
console.log();
|
|
130
|
-
console.log(chalk.dim(" Run without --dry-run to execute."));
|
|
131
|
-
}
|
|
132
|
-
return;
|
|
133
|
-
}
|
|
134
|
-
// Execute pipeline
|
|
135
|
-
const spinner = !isJson ? ora("Starting pipeline...").start() : null;
|
|
136
|
-
const result = await executePipeline(manifest, {
|
|
137
|
-
outputDir: options.output,
|
|
138
|
-
resume: options.resume,
|
|
139
|
-
failFast: options.failFast,
|
|
140
|
-
budget: hasBudgetFlag ? cliBudget : undefined,
|
|
141
|
-
});
|
|
142
|
-
spinner?.stop();
|
|
143
|
-
if (isJson) {
|
|
144
|
-
outputResult({
|
|
145
|
-
success: result.success,
|
|
146
|
-
name: result.name,
|
|
147
|
-
error: result.error,
|
|
148
|
-
completedSteps: result.completedSteps,
|
|
149
|
-
totalSteps: result.totalSteps,
|
|
150
|
-
totalDuration: result.totalDuration,
|
|
151
|
-
outputDir: result.outputDir,
|
|
152
|
-
budget: result.budget,
|
|
153
|
-
steps: result.steps.map(s => ({
|
|
154
|
-
id: s.id,
|
|
155
|
-
action: s.action,
|
|
156
|
-
success: s.success,
|
|
157
|
-
output: s.output,
|
|
158
|
-
duration: s.duration,
|
|
159
|
-
error: s.error,
|
|
160
|
-
})),
|
|
161
|
-
});
|
|
162
|
-
}
|
|
163
|
-
else {
|
|
164
|
-
console.log();
|
|
165
|
-
for (const step of result.steps) {
|
|
166
|
-
const icon = step.success ? chalk.green("✓") : chalk.red("✗");
|
|
167
|
-
const time = step.duration ? chalk.dim(` (${(step.duration / 1000).toFixed(1)}s)`) : "";
|
|
168
|
-
const output = step.output ? chalk.dim(` → ${step.output}`) : "";
|
|
169
|
-
console.log(` ${icon} ${step.id}${time}${output}`);
|
|
170
|
-
if (!step.success && step.error) {
|
|
171
|
-
console.log(` ${chalk.red(step.error)}`);
|
|
172
|
-
}
|
|
173
|
-
}
|
|
174
|
-
console.log();
|
|
175
|
-
console.log(chalk.dim(" " + "─".repeat(50)));
|
|
176
|
-
console.log(` ${chalk.bold(`${result.completedSteps}/${result.totalSteps} steps completed`)}${result.success ? chalk.green(" ✓") : ""}`);
|
|
177
|
-
if (result.error) {
|
|
178
|
-
console.log(chalk.red(` ${result.error}`));
|
|
179
|
-
}
|
|
180
|
-
if (result.totalDuration) {
|
|
181
|
-
console.log(chalk.dim(` Total: ${(result.totalDuration / 1000).toFixed(1)}s`));
|
|
182
|
-
}
|
|
183
|
-
if (result.budget) {
|
|
184
|
-
console.log(chalk.dim(` Est. spent: $${result.budget.estimatedCostUsd.toFixed(2)}${result.budget.tokensUsed ? ` · ${result.budget.tokensUsed} tokens` : ""} · ${result.budget.toolErrors} errors`));
|
|
185
|
-
if (result.budget.abortedBy) {
|
|
186
|
-
console.log(chalk.yellow(` ⚠ Aborted by budget: ${result.budget.abortedBy}`));
|
|
187
|
-
}
|
|
188
|
-
}
|
|
189
|
-
if (result.outputDir) {
|
|
190
|
-
console.log(chalk.dim(` Output: ${result.outputDir}`));
|
|
191
|
-
}
|
|
192
|
-
console.log();
|
|
193
|
-
if (!result.success) {
|
|
194
|
-
console.log(chalk.dim(" Use --resume to retry failed steps."));
|
|
195
|
-
console.log();
|
|
196
|
-
}
|
|
197
|
-
}
|
|
198
|
-
}
|
|
199
|
-
catch (error) {
|
|
200
|
-
const msg = error instanceof Error ? error.message : String(error);
|
|
201
|
-
exitWithError(generalError(msg));
|
|
202
|
-
}
|
|
203
|
-
});
|
|
204
|
-
//# sourceMappingURL=run.js.map
|
package/dist/commands/run.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"run.js","sourceRoot":"","sources":["../../src/commands/run.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @module sanitize
|
|
3
|
-
* @description Sanitize AI/LLM responses to prevent prompt injection and terminal exploits.
|
|
4
|
-
*/
|
|
5
|
-
/**
|
|
6
|
-
* Strip suspicious prompt injection patterns from LLM text output.
|
|
7
|
-
* Catches common injection attempts like "Ignore previous instructions",
|
|
8
|
-
* fake system prompts, and markdown-disguised commands.
|
|
9
|
-
*/
|
|
10
|
-
export declare function sanitizeLLMResponse(text: string): string;
|
|
11
|
-
/**
|
|
12
|
-
* Sanitize a file path returned by an AI model.
|
|
13
|
-
* Prevents path traversal and null byte injection.
|
|
14
|
-
*/
|
|
15
|
-
export declare function sanitizeFilePath(path: string): string;
|
|
16
|
-
/**
|
|
17
|
-
* Sanitize structured data from AI responses (e.g., JSON parsed results).
|
|
18
|
-
* Recursively sanitizes all string values.
|
|
19
|
-
*/
|
|
20
|
-
export declare function sanitizeAIResult<T>(data: T): T;
|
|
21
|
-
//# sourceMappingURL=sanitize.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"sanitize.d.ts","sourceRoot":"","sources":["../../src/commands/sanitize.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAcxD;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAWrD;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,CAY9C"}
|
|
@@ -1,56 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @module sanitize
|
|
3
|
-
* @description Sanitize AI/LLM responses to prevent prompt injection and terminal exploits.
|
|
4
|
-
*/
|
|
5
|
-
/**
|
|
6
|
-
* Strip suspicious prompt injection patterns from LLM text output.
|
|
7
|
-
* Catches common injection attempts like "Ignore previous instructions",
|
|
8
|
-
* fake system prompts, and markdown-disguised commands.
|
|
9
|
-
*/
|
|
10
|
-
export function sanitizeLLMResponse(text) {
|
|
11
|
-
if (!text || typeof text !== "string")
|
|
12
|
-
return text;
|
|
13
|
-
let sanitized = text;
|
|
14
|
-
// Strip ANSI escape sequences that could manipulate terminal
|
|
15
|
-
// eslint-disable-next-line no-control-regex
|
|
16
|
-
sanitized = sanitized.replace(/\x1b\[[0-9;]*[a-zA-Z]/g, "");
|
|
17
|
-
// Strip other control characters (except newline, tab, carriage return)
|
|
18
|
-
// eslint-disable-next-line no-control-regex
|
|
19
|
-
sanitized = sanitized.replace(/[\x00-\x08\x0b\x0c\x0e-\x1f\x7f-\x9f]/g, "");
|
|
20
|
-
return sanitized;
|
|
21
|
-
}
|
|
22
|
-
/**
|
|
23
|
-
* Sanitize a file path returned by an AI model.
|
|
24
|
-
* Prevents path traversal and null byte injection.
|
|
25
|
-
*/
|
|
26
|
-
export function sanitizeFilePath(path) {
|
|
27
|
-
if (!path || typeof path !== "string")
|
|
28
|
-
return path;
|
|
29
|
-
// Remove null bytes
|
|
30
|
-
let sanitized = path.replace(/\0/g, "");
|
|
31
|
-
// Remove control characters
|
|
32
|
-
// eslint-disable-next-line no-control-regex
|
|
33
|
-
sanitized = sanitized.replace(/[\x00-\x1f\x7f-\x9f]/g, "");
|
|
34
|
-
return sanitized;
|
|
35
|
-
}
|
|
36
|
-
/**
|
|
37
|
-
* Sanitize structured data from AI responses (e.g., JSON parsed results).
|
|
38
|
-
* Recursively sanitizes all string values.
|
|
39
|
-
*/
|
|
40
|
-
export function sanitizeAIResult(data) {
|
|
41
|
-
if (data === null || data === undefined)
|
|
42
|
-
return data;
|
|
43
|
-
if (typeof data === "string")
|
|
44
|
-
return sanitizeLLMResponse(data);
|
|
45
|
-
if (Array.isArray(data))
|
|
46
|
-
return data.map(sanitizeAIResult);
|
|
47
|
-
if (typeof data === "object") {
|
|
48
|
-
const result = {};
|
|
49
|
-
for (const [key, value] of Object.entries(data)) {
|
|
50
|
-
result[key] = sanitizeAIResult(value);
|
|
51
|
-
}
|
|
52
|
-
return result;
|
|
53
|
-
}
|
|
54
|
-
return data;
|
|
55
|
-
}
|
|
56
|
-
//# sourceMappingURL=sanitize.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"sanitize.js","sourceRoot":"","sources":["../../src/commands/sanitize.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;GAIG;AACH,MAAM,UAAU,mBAAmB,CAAC,IAAY;IAC9C,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IAEnD,IAAI,SAAS,GAAG,IAAI,CAAC;IAErB,6DAA6D;IAC7D,4CAA4C;IAC5C,SAAS,GAAG,SAAS,CAAC,OAAO,CAAC,wBAAwB,EAAE,EAAE,CAAC,CAAC;IAE5D,wEAAwE;IACxE,4CAA4C;IAC5C,SAAS,GAAG,SAAS,CAAC,OAAO,CAAC,wCAAwC,EAAE,EAAE,CAAC,CAAC;IAE5E,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,gBAAgB,CAAC,IAAY;IAC3C,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IAEnD,oBAAoB;IACpB,IAAI,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IAExC,4BAA4B;IAC5B,4CAA4C;IAC5C,SAAS,GAAG,SAAS,CAAC,OAAO,CAAC,uBAAuB,EAAE,EAAE,CAAC,CAAC;IAE3D,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,gBAAgB,CAAI,IAAO;IACzC,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IACrD,IAAI,OAAO,IAAI,KAAK,QAAQ;QAAE,OAAO,mBAAmB,CAAC,IAAI,CAAM,CAAC;IACpE,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAM,CAAC;IAChE,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC7B,MAAM,MAAM,GAA4B,EAAE,CAAC;QAC3C,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAA+B,CAAC,EAAE,CAAC;YAC3E,MAAM,CAAC,GAAG,CAAC,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC;QACxC,CAAC;QACD,OAAO,MAAW,CAAC;IACrB,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC"}
|
package/dist/commands/scene.d.ts
DELETED
|
@@ -1,86 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @module scene
|
|
3
|
-
*
|
|
4
|
-
* `vibe scene <sub>` — author, lint, and render per-scene HTML projects that
|
|
5
|
-
* target the Hyperframes render backend. A scene project is bilingual: it's
|
|
6
|
-
* also a valid Hyperframes project (hyperframes.json + meta.json +
|
|
7
|
-
* index.html + compositions/). Users and AI agents can hand-author rich per-
|
|
8
|
-
* scene animation instead of relying on flat YAML steps or opaque MP4s.
|
|
9
|
-
*
|
|
10
|
-
* Subcommands land incrementally across MVP 1:
|
|
11
|
-
* - init [C1] — scaffold project directory
|
|
12
|
-
* - add [C2] — author one scene (template + assets)
|
|
13
|
-
* - lint [C3] — in-process Hyperframes lint + --fix
|
|
14
|
-
* - render [C4, this commit] — render scene project to MP4/WebM/MOV
|
|
15
|
-
*/
|
|
16
|
-
import { Command } from "commander";
|
|
17
|
-
import { type TtsProviderName } from "./_shared/tts-resolve.js";
|
|
18
|
-
import { type ScenePreset } from "./_shared/scene-html-emit.js";
|
|
19
|
-
export declare const sceneCommand: Command;
|
|
20
|
-
export interface SceneAddOptions {
|
|
21
|
-
name: string;
|
|
22
|
-
preset: ScenePreset;
|
|
23
|
-
/** Narration text. If the value is an existing file path, its content is used. */
|
|
24
|
-
narration?: string;
|
|
25
|
-
/**
|
|
26
|
-
* Path to an existing narration audio file (.wav/.mp3). When provided,
|
|
27
|
-
* skips TTS entirely and copies the file into the project's `assets/`.
|
|
28
|
-
* Compatible with `npx hyperframes tts`, `say`, or any other external
|
|
29
|
-
* synthesis tool. The transcript is still generated unless
|
|
30
|
-
* `skipTranscribe` is set.
|
|
31
|
-
*/
|
|
32
|
-
narrationFile?: string;
|
|
33
|
-
/** Explicit duration in seconds. Overrides narration-derived duration. */
|
|
34
|
-
duration?: number;
|
|
35
|
-
/** Image generation prompt. */
|
|
36
|
-
visuals?: string;
|
|
37
|
-
headline?: string;
|
|
38
|
-
kicker?: string;
|
|
39
|
-
/** Project directory. Defaults to cwd. */
|
|
40
|
-
projectDir?: string;
|
|
41
|
-
/** Filename of the root composition (relative to projectDir). */
|
|
42
|
-
insertInto?: string;
|
|
43
|
-
/** "gemini" | "openai". */
|
|
44
|
-
imageProvider?: string;
|
|
45
|
-
/** TTS provider preference. Defaults to `"auto"` (ElevenLabs if key set, else Kokoro). */
|
|
46
|
-
tts?: TtsProviderName;
|
|
47
|
-
/** Voice id (ElevenLabs name/id, or Kokoro id like `af_heart`). */
|
|
48
|
-
voice?: string;
|
|
49
|
-
/** When true, skip TTS even if narration is provided. */
|
|
50
|
-
skipAudio?: boolean;
|
|
51
|
-
/** When true, skip image generation even if visuals is provided. */
|
|
52
|
-
skipImage?: boolean;
|
|
53
|
-
/**
|
|
54
|
-
* When true, skip the Whisper word-level transcribe step that would
|
|
55
|
-
* otherwise emit `assets/transcript-<id>.json`.
|
|
56
|
-
*/
|
|
57
|
-
skipTranscribe?: boolean;
|
|
58
|
-
/** BCP-47 language hint forwarded to Whisper (e.g. `"en"`, `"ko"`). */
|
|
59
|
-
transcribeLanguage?: string;
|
|
60
|
-
/** Overwrite existing compositions/scene-<id>.html. */
|
|
61
|
-
force?: boolean;
|
|
62
|
-
/** Progress sink (CLI spinner / agent stream). */
|
|
63
|
-
onProgress?: (msg: string) => void;
|
|
64
|
-
}
|
|
65
|
-
export interface SceneAddResult {
|
|
66
|
-
success: boolean;
|
|
67
|
-
id: string;
|
|
68
|
-
preset: ScenePreset;
|
|
69
|
-
start: number;
|
|
70
|
-
duration: number;
|
|
71
|
-
scenePath: string;
|
|
72
|
-
rootPath: string;
|
|
73
|
-
audioPath?: string;
|
|
74
|
-
imagePath?: string;
|
|
75
|
-
/**
|
|
76
|
-
* Project-relative path to `assets/transcript-<id>.json` when Whisper
|
|
77
|
-
* word-level transcribe ran. `undefined` when skipped or when the audio
|
|
78
|
-
* source produced no narration text to transcribe.
|
|
79
|
-
*/
|
|
80
|
-
transcriptPath?: string;
|
|
81
|
-
/** Number of word entries emitted into the transcript JSON. */
|
|
82
|
-
transcriptWordCount?: number;
|
|
83
|
-
error?: string;
|
|
84
|
-
}
|
|
85
|
-
export declare function executeSceneAdd(opts: SceneAddOptions): Promise<SceneAddResult>;
|
|
86
|
-
//# sourceMappingURL=scene.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"scene.d.ts","sourceRoot":"","sources":["../../src/commands/scene.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAYpC,OAAO,EAIL,KAAK,eAAe,EACrB,MAAM,0BAA0B,CAAC;AAOlC,OAAO,EAOL,KAAK,WAAW,EACjB,MAAM,8BAA8B,CAAC;AA8CtC,eAAO,MAAM,YAAY,SAkByC,CAAC;AAoMnE,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,WAAW,CAAC;IACpB,kFAAkF;IAClF,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;;;OAMG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,0EAA0E;IAC1E,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,+BAA+B;IAC/B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,0CAA0C;IAC1C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,iEAAiE;IACjE,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,2BAA2B;IAC3B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,0FAA0F;IAC1F,GAAG,CAAC,EAAE,eAAe,CAAC;IACtB,mEAAmE;IACnE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,yDAAyD;IACzD,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,oEAAoE;IACpE,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;;OAGG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,uEAAuE;IACvE,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,uDAAuD;IACvD,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,kDAAkD;IAClD,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;CACpC;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,OAAO,CAAC;IACjB,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,WAAW,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;OAIG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,+DAA+D;IAC/D,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAwCD,wBAAsB,eAAe,CAAC,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,cAAc,CAAC,CAuPpF"}
|