$npx -y skills add gooseworks-ai/goose-skills --skill render-cgi-sizzleAssemble a 3D-CGI app sizzle — nano-banana CGI plates (blank-glow floating phone + smoky-black studio + amaranth rim-light + placeholder burst shapes) plus PIL compositing of the REAL App Store screenshots onto the bezel + burst-out overlays, driven by Kling 3.0 i2v steady-float
| 1 | # render-cgi-sizzle |
| 2 | |
| 3 | Assembles the **3D-CGI app sizzle** video format: a gold-trimmed phone floats in a |
| 4 | smoky-black studio while six app features demo one per beat — each beat bursts REAL App |
| 5 | Store UI elements out of the phone in 3D with amaranth rim-light + bokeh, then everything |
| 6 | collapses back into the screen at a climax ("200+ classes. One app.") + a brand end card |
| 7 | over a premium-tech bed. It reads as an Apple-keynote product film, not UGC and not a |
| 8 | physical-product shoot. |
| 9 | |
| 10 | This capability ships the **recipe** (`scripts/config.example.json`) + a config→step map |
| 11 | (`scripts/PIPELINE.md`) + the FREE-assembly how-to (`scripts/README.md`). It documents the |
| 12 | FREE, deterministic assembly between the paid model calls: |
| 13 | |
| 14 | - **nano-banana CGI plates** (paid, separate cap) render only the phone shell + smoky-black |
| 15 | studio + amaranth rim-light + bokeh + placeholder burst shapes; the screen is left a blank |
| 16 | warm glow on purpose, and every plate is `--anchor`ed on beat 1 so the phone/studio stay |
| 17 | identical across beats. |
| 18 | - **PIL real-UI compositing (FREE)** — auto-detect the bright phone-screen bbox in each |
| 19 | plate and feather the REAL App Store screenshot into the bezel → `scene-NN-composite.png`; |
| 20 | bake real burst-out overlays (e.g. climax instructor portrait tiles, rim-light baked before |
| 21 | rotation) around the plate. The on-screen UI + faces + wordmark are ALWAYS real assets — |
| 22 | never AI-rendered, so no claim is invented and nothing reads fake. |
| 23 | - **Kling 3.0 i2v steady-float** (paid, separate cap) drives each composite; the burst-out |
| 24 | pops/settles while the phone + screen stay locked. Any beat Kling garbles drops to a **FREE |
| 25 | Ken-Burns FFmpeg push-in** (`zoompan`, heavier on the climax) — the shipped demo used this |
| 26 | path for the feature beats. |
| 27 | - **Assembly + finalize (FREE)** — dice + intercut concat (timeline locked from the measured |
| 28 | VO durations), audio mix (sidechain-duck the music under VO, loudnorm -14 LUFS master), PIL |
| 29 | brand end card (real wordmark, never AI), then **1.15x speed + anti-AI grain** master. |
| 30 | |
| 31 | See `scripts/README.md` for the full FREE-assembly detail and `scripts/PIPELINE.md` for the |
| 32 | config-field → source-step map. |
| 33 | |
| 34 | ## Run |
| 35 | |
| 36 | Config-and-PIPELINE capability (no re-built runnable pipeline here). Copy |
| 37 | `scripts/config.example.json` → `config.json`, edit the brand/beats/screens, and follow |
| 38 | `scripts/PIPELINE.md`: |
| 39 | |
| 40 | VO first (locks the timeline) → nano-banana CGI plates → PIL screen composites → burst-climax |
| 41 | overlays → Kling i2v clips (Ken-Burns fallback per garbled beat) → PIL end card → captions → |
| 42 | sidechain-ducked mix → 1.15x speed + grain. |
| 43 | |
| 44 | Output: 1080x1920, ~22.6s H.264 (+ AAC music). 6 feature beats + PIL end card. |
| 45 | |
| 46 | ## Contract |
| 47 | |
| 48 | - **REAL UI, always PIL — never AI.** Every app screen, instructor face, and the wordmark is |
| 49 | the real asset composited via PIL. AI plates only ever render the phone shell, studio, bokeh, |
| 50 | and placeholder burst shapes. This is the format's whole credibility and the guard against |
| 51 | invented claims. |
| 52 | - **Kling for the float, Ken-Burns fallback per beat.** If a Kling beat garbles the burst-out |
| 53 | UI, distorts the phone, or animates the screen, fall that beat to a FREE Ken-Burns push-in — |
| 54 | never ship a garbled beat. |
| 55 | - **Anchor every plate on beat 1** so the phone/studio read identical across beats (one shoot). |
| 56 | - **Timeline locked from the measured VO durations**, never planned word counts. |
| 57 | - The paid steps — nano-banana plates, Kling 3.0 i2v beats, ElevenLabs VO + music — are |
| 58 | separate capabilities (create-image-fal, create-video-fal, create-vo-elevenlabs, |
| 59 | create-music-elevenlabs); the recipe orchestrates them and gates the spend. |