@scenerok/cli 1.0.4 → 1.0.6
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/README.md +6 -3
- package/dist/commands/auth.d.ts.map +1 -1
- package/dist/commands/auth.js +17 -1
- package/dist/commands/project.d.ts.map +1 -1
- package/dist/commands/project.js +16 -2
- package/dist/commands/render.d.ts.map +1 -1
- package/dist/commands/render.js +14 -0
- package/dist/commands/skills.d.ts.map +1 -1
- package/dist/commands/skills.js +42 -1
- package/dist/commands/validate.d.ts.map +1 -1
- package/dist/commands/validate.js +38 -9
- package/dist/index.js +3 -1
- package/dist/lib/api.d.ts +14 -0
- package/dist/lib/api.d.ts.map +1 -1
- package/dist/lib/api.js +38 -4
- package/dist/lib/format-api-error.d.ts +2 -0
- package/dist/lib/format-api-error.d.ts.map +1 -0
- package/dist/lib/format-api-error.js +24 -0
- package/dist/lib/logger.d.ts +8 -0
- package/dist/lib/logger.d.ts.map +1 -0
- package/dist/lib/logger.js +51 -0
- package/examples/system/3-tips-fitness.vid +45 -0
- package/examples/system/ecom-product-launch.vid +31 -0
- package/examples/system/glitch-title.vid +17 -0
- package/examples/system/meme-remix.vid +15 -0
- package/examples/system/minimal-text-reel.vid +11 -0
- package/examples/system/product-launch.vid +18 -0
- package/examples/system/rokmilk-chocolate-promo.vid +25 -0
- package/examples/system/testimonial-cut.vid +16 -0
- package/examples/system/ugc-testimonial-voiceover.vid +33 -0
- package/examples/system/voice-visual-promo.vid +21 -0
- package/package.json +2 -1
- package/skills/aider/SKILL.md +27 -22
- package/skills/aider/vidscript-guide.md +62 -39
- package/skills/aider/vidscript-sample.md +23 -14
- package/skills/aider/vidscript-strict.md +113 -0
- package/skills/claude/SKILL.md +27 -22
- package/skills/claude/vidscript-guide.md +59 -37
- package/skills/claude/vidscript-sample.md +23 -14
- package/skills/claude/vidscript-strict.md +113 -0
- package/skills/codex/SKILL.md +27 -22
- package/skills/codex/vidscript-guide.md +62 -39
- package/skills/codex/vidscript-sample.md +23 -14
- package/skills/codex/vidscript-strict.md +113 -0
- package/skills/cursor/SKILL.md +27 -22
- package/skills/cursor/vidscript-guide.md +62 -39
- package/skills/cursor/vidscript-sample.md +23 -14
- package/skills/cursor/vidscript-strict.md +113 -0
- package/skills/opencode/SKILL.md +27 -22
- package/skills/opencode/vidscript-guide.md +62 -39
- package/skills/opencode/vidscript-sample.md +23 -14
- package/skills/opencode/vidscript-strict.md +113 -0
- package/skills/skills/aider/SKILL.md +185 -0
- package/skills/skills/aider/vidscript-guide.md +378 -0
- package/skills/skills/aider/vidscript-sample.md +30 -0
- package/skills/skills/aider/vidscript-strict.md +113 -0
- package/skills/skills/claude/SKILL.md +185 -0
- package/skills/skills/claude/vidscript-guide.md +378 -0
- package/skills/skills/claude/vidscript-sample.md +30 -0
- package/skills/skills/claude/vidscript-strict.md +113 -0
- package/skills/skills/codex/SKILL.md +185 -0
- package/skills/skills/codex/vidscript-guide.md +378 -0
- package/skills/skills/codex/vidscript-sample.md +30 -0
- package/skills/skills/codex/vidscript-strict.md +113 -0
- package/skills/skills/cursor/SKILL.md +185 -0
- package/skills/skills/cursor/vidscript-guide.md +378 -0
- package/skills/skills/cursor/vidscript-sample.md +30 -0
- package/skills/skills/cursor/vidscript-strict.md +113 -0
- package/skills/skills/opencode/SKILL.md +185 -0
- package/skills/skills/opencode/vidscript-guide.md +378 -0
- package/skills/skills/opencode/vidscript-sample.md +30 -0
- package/skills/skills/opencode/vidscript-strict.md +113 -0
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
# VidScript v2 — Strict Agent Reference
|
|
2
|
+
|
|
3
|
+
Follow these rules exactly. When in doubt, copy a file from `examples/system/` (installed with `scenerok skills install`).
|
|
4
|
+
|
|
5
|
+
## Rule 1: Package imports are mandatory
|
|
6
|
+
|
|
7
|
+
```vidscript
|
|
8
|
+
import xai from "@scenerok/xai"
|
|
9
|
+
import eleven from "@elevenlabs/music"
|
|
10
|
+
import motion from "@scenerok/basic-animations"
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
Without the owning import, calls like `xai.imagine`, `xai.tts`, `eleven.music`, and `motion.fadeIn` fail validation.
|
|
14
|
+
|
|
15
|
+
**Never** call package functions without importing the package alias first.
|
|
16
|
+
|
|
17
|
+
## Rule 2: Use registered plugin surfaces
|
|
18
|
+
|
|
19
|
+
```vidscript
|
|
20
|
+
import xai from "@scenerok/xai"
|
|
21
|
+
import eleven from "@elevenlabs/music"
|
|
22
|
+
|
|
23
|
+
[-] = video xai.imagine("Prompt here", aspect_ratio: "9:16", duration: 5)
|
|
24
|
+
[-] = audio xai.tts("Voiceover line", voice: "eve")
|
|
25
|
+
[0s .. 15s] = audio eleven.music("Warm premium music bed", duration: 15, instrumental: true)
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
For ElevenLabs music, import `@elevenlabs/music` and use `eleven.music(...)`, `eleven.generateMusic(...)`, or `eleven.composeMusic(...)`.
|
|
29
|
+
|
|
30
|
+
## Rule 3: Time ranges use `..`
|
|
31
|
+
|
|
32
|
+
```vidscript
|
|
33
|
+
[0s .. 5s] = text "Hello"
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
Not `[0s - 5s]`.
|
|
37
|
+
|
|
38
|
+
## Rule 4: Text params stay on one line
|
|
39
|
+
|
|
40
|
+
```vidscript
|
|
41
|
+
[0.5s .. 3s] = text "Headline", font: "Inter", size: 64, color: "#FFFFFF", x: "50%", y: "30%", align: center
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
## Rule 5: Quote safety in prompts
|
|
45
|
+
|
|
46
|
+
Use only straight `"` inside `xai.imagine("...")`. Do not nest quotes inside the prompt string (e.g. avoid `"RokMilk"` inside the prompt — say `labeled RokMilk` without extra quotes).
|
|
47
|
+
|
|
48
|
+
## Rule 6: Audio syntax
|
|
49
|
+
|
|
50
|
+
```vidscript
|
|
51
|
+
import xai from "@scenerok/xai"
|
|
52
|
+
import eleven from "@elevenlabs/music"
|
|
53
|
+
|
|
54
|
+
[-] = audio xai.tts("Spoken line", voice: "eve", speed: 1.0)
|
|
55
|
+
|
|
56
|
+
# Direct music call, no trailing audio params.
|
|
57
|
+
[0s .. 15s] = audio eleven.music("Soft premium ad music", duration: 15, instrumental: true)
|
|
58
|
+
|
|
59
|
+
# Use a binding when you need volume or fades.
|
|
60
|
+
let bed = eleven.music("Soft premium ad music", duration: 15, instrumental: true)
|
|
61
|
+
[0s .. 15s] = audio bed, volume: 0.35, fade_out: 2s
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
**Invalid:** `audio eleven.music("...", duration: 15), volume: 0.35` — trailing `, volume` after a direct plugin call is a parse error.
|
|
65
|
+
|
|
66
|
+
**Invalid:** `eleven.generateMusic(...)` without `import eleven from "@elevenlabs/music"`.
|
|
67
|
+
|
|
68
|
+
## Rule 7: Filters
|
|
69
|
+
|
|
70
|
+
```vidscript
|
|
71
|
+
[0s .. 15s] = filter "vignette", intensity: 0.3
|
|
72
|
+
[0s .. 15s] = filter "saturation", value: 1.12
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
`saturation` uses `value`, not `intensity`.
|
|
76
|
+
|
|
77
|
+
## Rule 8: Always end with output
|
|
78
|
+
|
|
79
|
+
```vidscript
|
|
80
|
+
output to "video.mp4", resolution: "1080x1920", fps: 30
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
Do **not** use legacy `config { }` blocks — they are not part of VidScript v2.
|
|
84
|
+
|
|
85
|
+
## Animations (after import)
|
|
86
|
+
|
|
87
|
+
```vidscript
|
|
88
|
+
import motion from "@scenerok/basic-animations"
|
|
89
|
+
|
|
90
|
+
[0s .. 2s] = text "Launch", x: "50%", y: "50%", animate: motion.popIn(0.7s)
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
Available: `fadeIn`, `fadeOut`, `slideX`, `slideY`, `popIn`, `riseIn`, `swingIn`, `glitchIn`, `float`, `typewriter`.
|
|
94
|
+
|
|
95
|
+
## Validate before render
|
|
96
|
+
|
|
97
|
+
```bash
|
|
98
|
+
scenerok validate my-video.vid
|
|
99
|
+
```
|
|
100
|
+
|
|
101
|
+
Each error line includes `Line N:C — message` when the server returns location info.
|
|
102
|
+
|
|
103
|
+
## Bundled examples
|
|
104
|
+
|
|
105
|
+
| File | Use case |
|
|
106
|
+
|------|----------|
|
|
107
|
+
| `minimal-text-reel.vid` | Text-only, no API keys |
|
|
108
|
+
| `product-launch.vid` | User video input + text + vignette |
|
|
109
|
+
| `ecom-product-launch.vid` | xAI product visuals + CTA |
|
|
110
|
+
| `3-tips-fitness.vid` | Multiple `[-]` blocks + xAI per segment |
|
|
111
|
+
| `rokmilk-chocolate-promo.vid` | 15s generated-video promo pattern |
|
|
112
|
+
|
|
113
|
+
Full grammar: https://scenerok.com/docs/vidscript
|