Skip to content
cccskills
FreePublished on GitHub

render-proof-points-overlay

Create crisp text and icon overlays for a vertical UGC ad, then place proof-point pills in a diagonal sequence over a supplied video and add its music bed. The result is a finished 1080×1920 MP4 assembled from configuration.

OriginalShow the original description

Build the deterministic PIL pill overlays for a 'perfect-score + proof-points' UGC video ad (white 10/10 score header with a medal + orange sub with a finger-down + 3-4 green-check proof pills) and composite them onto a base clip in a diagonal L->R->L->R cascade, then mux the music bed into master-final.mp4. Config-driven (config.json), 1080x1920 9:16, FREE and deterministic (no paid calls, text stays pixel-crisp). Use for the overlay-proof-points format; the base clip + music come from separate paid capabilities.

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

Run score Not tested

See how to install

Good for

  • Building a perfect-score and proof-points ad
  • Adding branded text overlays to a vertical clip
  • Compositing prepared music with an ad video

Files included (10)

  • SKILL.md5.1 KB
  • references/music.md1.2 KB
  • scripts/build_overlays.py9.2 KB
  • scripts/compose_master.py5.4 KB
  • scripts/fetch_icons.py1.0 KB
  • scripts/music_coverage.py4.5 KB
  • skill.meta.json237 B
  • tests/smoke-test.md697 B
  • tests/test_layout.py3.2 KB
  • tests/test_music.py7.4 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

render-proof-points-overlay

Build the deterministic PIL/FFmpeg overlays for the "Instagram comparison-tool reviewer" UGC ad — a white "we got a perfect 10/10 score" headline pill (trailing medal), an orange "but here's also why you'll love us" sub pill (trailing finger-down, width-matched to the header), and 3-4 green-check proof pills — then composite them onto a base clip in the format's signature diagonal cascade and mux the music into the master. FREE and deterministic: the pills are PIL-rendered so the score, checks, and wordmark stay pixel-crisp (a video model would smear type). The base clip (create-image-fal keyframe -> create-video-fal i2v) and the music bed (create-music-elevenlabs) come from separate paid capabilities; this one only does the free rendering.

Run

fetch_icons.py --run-dir <run> ; build_overlays.py --config config.json --out-dir <run>/generated/overlays ; compose_master.py --config config.json --run-dir <run> — reads <run>/generated/clip-handheld.mp4 + generated/music-bed.m4a, writes <run>/master-final.mp4. 1080x1920, deterministic, no paid calls. (Add --no-music to compose for a silent design preview.)

Scripts

  • fetch_icons.py — downloads the three Twemoji PNGs (medal 1f3c5, finger-down 1f447, check 2705) to <run>/assets/icons. PIL cannot render Apple Color Emoji, so pills paste Twemoji PNGs. Free, local.
  • build_overlays.py — PIL: renders the white score header (trailing medal), the orange subhead (trailing finger-down, width-matched to the header), and N green-check proof pills auto-sized to their copy. Bold weight and icon-centered-on-pill-middle are load-bearing.
  • compose_master.py — FFmpeg: scale/crop the base clip to 1080x1920@30, composite the always-on headers, cascade the proof pills (each enable='gte(t,T)' on its own alternating LEFT/RIGHT row), mux the music, apply the anti-AI grain pass, re-encode crf23/maxrate12M -> master-final.mp4.

Contract

  • Deterministic + FREE (PIL + FFmpeg); no paid calls, no AI-rendered text — the score, checks, and wordmark are composited, never generated.
  • Config-driven off one config.json (overlays, layout, duration_sec, optional music/post_production); the template recipe supplies the config from recipe.config.
  • Always re-run build_overlays.py before compose_master.py — the compositor reads pre-rendered PNGs and silently reuses stale ones on a copy change.
  • Headers stay on 0-duration and must not cover the product face; proof pills cascade one-per-beat down the diagonal (NOT four-corners) — the cascade is the format's signature.
  • Requires Pillow + ffmpeg. No API keys.
  • The overlay copy (overlays.header.lines, overlays.subhead.lines, overlays.proof_points) is per brand and must be the brand's own approved claims; build_overlays.py exits with a clear message if any of it is empty (the template recipe ships it empty, with overlays._example_content as the shape).

Choices

This atom renders no people, setting or music. The template's creative choices (whose hand, the setting, the music style) are asked of the user by the recipe and go to the paid keyframe / i2v / music capabilities; this atom only composites the pills over whatever base clip and music bed it is given.

Music coverage

Read the music preparation instructions for the composition options and listening checks.

The bed must cover the complete master, including its end card. Composition checks audio coverage before rendering and stops for missing, short or prematurely silent music. A silent preview requires the explicit no-music option.

Use a full-length approved bed first. For an approved instrumental that can repeat cleanly, the loop-music option trims silent edges and extends it locally with crossfades. It preserves the source and puts the final half-second fade at the master ending. Do not loop speech, lyrics or a musical ending that makes the join obvious. Do not regenerate paid music automatically.

Listen to every join and the final seconds before delivery. The automated check detects silence and insufficient duration; it does not judge musical phrasing, a gradual early fade or how the bed sounds under dialogue.

Local layout checks

The renderer preserves the bold text font and falls back to an installed symbol font for missing glyphs such as ★. Trailing icons sit beyond the longest line of the pill. The composer reserves at least 120 px at the right edge for platform controls and stops if copy does not fit; wrap the text or reduce its font size before rendering.

Run the free regressions with python -m unittest discover -s tests -p 'test_*.py' -v.

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