Skip to content
cccskills
FreePublished on GitHub

render-narrated-ugc-wardrobe-stitch

Assemble a vertical testimonial ad from a config: align short creator and product clips to the narration, add word-by-word captions and an animated landing-page view, then close with the brand’s real end card.

OriginalShow the original description

Assemble a narrated-UGC "stitch reply" ad from a config: one voiceover carries a verbatim testimonial while about 30 short clips (one creator across about 5 outfits and 3 settings, plus product B-roll) are trimmed to windows cut from the voiceover's word timings and joined. The voiceover sits over a ducked music bed, word-by-word captions run throughout, a landing-page scroll is animated from a screenshot, and the brand's real end card closes it (never AI-rendered text). Free, deterministic assembly using the shared stitch-videos-ffmpeg helper; the voiceover, creator stills and clips come from create-vo-elevenlabs, create-image-gpt-image-fal, create-image-fal and create-video-fal. Use for the narrated-ugc-wardrobe-stitch format.

gooseworks-ai/goose-skills1,272 stars(GitHub 1,272 + cccskills 0)

Run score Not tested

See how to install

Good for

  • Turn a spoken testimonial into a fast-cut ad
  • Pair creator clips with product B-roll
  • Add timed captions to a narrated video
  • Show a landing page in a product ad

Files included (6)

  • SKILL.md6.6 KB
  • scripts/config.example.json12.3 KB
  • scripts/PIPELINE.md6.8 KB
  • scripts/README.md8.8 KB
  • skill.meta.json257 B
  • tests/smoke-test.md2.3 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

render-narrated-ugc-wardrobe-stitch

Assemble a narrated-UGC "stitch reply" ad from a config: a fast-cut vertical testimonial where a single spoken VO carries a verbatim ~13-sentence testimonial over ONE creator across ~5 wardrobe changes in ~3 micro-worlds, interspersed with product B-roll (e.g. product macro, unboxing, a landing-page scroll), ~30 hard cuts on the VO cadence, closing on a brand end card. This capability is the FREE, deterministic assembly — trim-to-EDL, hard-concat, the VO+music mix, the word-by-word caption burn, the landing-page zoompan, and the end-card append.

scripts/config.example.json is one worked example (the fictional Sunnook "Don't buy Sunnook Tan Mousse" demo, ~37s 1080×1920 9:16, ~30 body cuts + a ~2s end card) — its creator, voice, hook, worlds and music are that demo's answers, not defaults; scripts/PIPELINE.md maps every config block to its source step and scripts/README.md documents the free assembly.

Choices

The creative calls are made upstream by the user (the recipe's choices) and arrive in the config; this assembly never picks them.

  • creator — who is on camera → character.descriptor / character.name. The demo used a 31-year-old curly-haired woman.
  • voice — the narration voice → vo.voice_id / vo.settings. The demo used an excited voice matched to its creator.
  • hook_angle — the testimonial's hook → vo.hook_line / vo.script_md / vo.payoff_line. The demo used a "Don't buy <brand>" reversal.
  • worlds — the 3 places → worlds.briefs. The demo used bedroom / bathroom / balcony.
  • music — the bed under the VO, or none → audio_mix.music_brief. With "no music", skip the bed and mix the VO alone.

Run

This is the FREE, deterministic assembly stage — it spends nothing. The paid inputs are separate capabilities — the spoken VO (create-vo-elevenlabs) Whisper-aligned so the WORD BOUNDARIES set the cut grid; one locked creator (create-image-gpt-image-fal anchor + ~5 wardrobe edits chained off the anchor) + 3 world wides + per-cut start-frames (create-image-fal product composites); and one Veo/Seedance i2v clip per cut (create-video-fal). Given the VO + vo-final.words.json + edl.json + one clip per cut + a Playwright landing-page PNG + the brand end-card PNG, render-narrated-ugc-wardrobe-stitch trims each clip to its EDL window, hard-concats on the VO cadence, mixes the VO over the ducked bed, burns the word-by-word captions, appends the end card → the master. Re-cuts reuse the existing VO / start-frames / clips and spend nothing.

The assembly runs on a shared helper. montage.py lives in the shared stitch-videos-ffmpeg atom, which this package lists in requires_skills, so it installs alongside. After gooseworks fetch render-narrated-ugc-wardrobe-stitch it is at /tmp/gooseworks-scripts/stitch-videos-ffmpeg/scripts/montage.py. Write a montage.json from the config (field mapping in scripts/README.md), then:

M=/tmp/gooseworks-scripts/stitch-videos-ffmpeg/scripts/montage.py
python3 $M edl --spec montage.json --out edits/edl.json            # check every clip + window first
python3 $M run --spec montage.json --out edits/master-final.mp4 --workdir edits/work

run builds the EDL from the VO word boundaries (word_range), trims and hard-cuts every clip with the filter_complex concat filter, renders the landing-page scroll as a zoom/pan over the PNG, holds the end-card PNG, burns word-by-word captions (one word at a time in one colour, with respell; no active-word highlight), mixes the VO over the ducked bed, and masters to -14 LUFS. It writes edits/work/manifest.json. This package ships no scripts of its own.

Contract (the free assembly)

  • The spoken VO carries the narrative — lock it FIRST. The VO IS the narration bed; the whole ad is cut to it. Never plan the cut grid before the VO is locked and Whisper-aligned.
  • Build the EDL from the VO's Whisper word boundaries. ~30 role-tagged cuts (hook, feature, reaction-insert, payoff-hold, b-roll-insert, landing-page); snap every cut window to the word boundaries. The payoff line gets a HELD payoff-hold beat (~3× mean shot length).
  • Hard cuts via filter_complex concat, not the demuxer. Trim each clip to its EDL window and hard-concat with filter_complex concat — the -f concat demuxer drops the audio when a drawtext/scale step shaves a clip a few ms below its window. No dissolves.
  • Karaoke-pop captions on every word, throughout. From the VO's vo-final.words.json (VEED Whisper preset, bold yellow), on every word; re-spell brand tokens Whisper mishears against the locked script (Sunnook demo: "Sunnook" over "Sunook"; kept "I'ma" verbatim) — never edit the script to match Whisper. Captions are suppressed over the end card. If VEED mis-captions a brand token, hand-patch that sentence with local ASS karaoke.
  • Product B-roll breaks up the talking head. Product macro (Sunnook: mousse on a mitt), unboxing, and a landing-page scroll are interspersed with the creator cuts. The landing-page scroll is FFmpeg zoompan over a Playwright-rendered PNG — not an i2v clip (i2v hallucinates the UI).
  • VO over a ducked bed. Mix the optional instrumental bed sidechain-ducked UNDER the VO (−20dB, 20:1) so the VO stays clearly on top; the bed can drop in on the payoff beat.
  • End card via the brand's real PNG — never AI-render brand text. Append the brand's real end-card PNG (~2s) on the tail, captions suppressed. A diffusion model garbles a wordmark.
  • FFmpeg composite, deterministic, FREE. Trim-to-EDL, filter_complex concat, VO+music mix, caption burn, landing-page zoompan, end-card append, loudnorm I=-14 → a 1080×1920 h264+aac master as long as the VO plus the end card (~37 s in the demo). No paid calls, no keys.

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

<slug>

FreeSummary

The supplied material contains only placeholder text for the skill’s purpose, inputs, steps, and completion criteria. It does not provide enough information to describe a task or result reliably.

  • No use case can be identified from the supplied material
  • Purpose is unspecified
  • Inputs and expected results are unspecified
gooseworks-ai/goose-skills1.3KUpdated Oct 27, 2026

ad-angle-miner

FreeSummary

Research supported advertising angles using buyer context, current product facts, customer language, and observed ads. Turn the evidence into static ad, video, or copy ideas, matching video concepts to available recipes. Scores rank ideas for testing; they do not predict results.

  • Finding evidence-backed angles for a product campaign
  • Developing static ad or video concepts from customer research
  • Writing headline and primary-text options for ads
gooseworks-ai/goose-skills1.3KUpdated Oct 27, 2026

Analyze campaign data from Google, Meta, and LinkedIn to find strong and wasteful spend. The skill checks funnel performance and test results, then recommends which campaigns to pause, scale, or test and how to shift budget across channels.

  • Finding campaigns and ads that waste budget
  • Comparing performance across Google, Meta, and LinkedIn
  • Planning specific budget shifts and follow-up tests
gooseworks-ai/goose-skills1.3KUpdated Oct 27, 2026

Compare ad spend and signups with downstream outcomes to calculate the cost of each qualified lead. The skill checks tracking coverage, accounts for how long leads need to mature, and groups creatives into actionable categories with confidence notes.

  • Compare true qualified-lead costs across creatives
  • Find low-CPA ads that bring poor-quality leads
  • Check whether signups can be linked to downstream outcomes
gooseworks-ai/goose-skills1.3KUpdated Oct 27, 2026

Prepare the intake for a Meta ad campaign by reviewing available brand information first, stating reasonable assumptions, and asking only questions whose answers could affect budget, claims, or legal exposure. It records stable brand facts, a campaign brief, and what was asked versus assumed.

  • Prepare a Meta ad campaign when brand facts are missing
  • Clarify budget and timing before campaign planning
  • Record approved claims and audience restrictions
gooseworks-ai/goose-skills1.3KUpdated Oct 27, 2026

ad-policy-check

FreeSummary

Review ad copy, image text, visuals, and people against platform and brand category rules. It suggests honest fixes and needed disclosures, then flags issues requiring human or legal review, with a separate result for each ad and platform.

  • Checking ad copy and visuals before launch
  • Reviewing creator ads for required disclosures
  • Fixing a platform disapproval and recording the issue
gooseworks-ai/goose-skills1.3KUpdated Oct 27, 2026

See all skills by gooseworks-ai

Report a problem with this skill