create-image-fal
Generate or edit an image via any FAL image model (nano-banana edit, gpt-image, flux, ...), ROUTED THROUGH THE fal-proxy so it bills the Ads agent. image_urls…
Render a 'brand identity reveal' video from a config — a single poster frame in a real, softly-lit space (real wall, soft-focus plant in the corner, dappled leaf shadow, illuminated poster) whose artwork HARD-CUTS through ~10 on-brand poster mockups (hero product, IG post,
$ npx -y skills add gooseworks-ai/goose-skills --skill render-brand-identity-reveal --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/render-brand-identity-revealContext preview
The summary Claude sees to decide when to auto-load this skill.
Render a 'brand identity reveal' video from a config — a single poster frame in a real, softly-lit space (real wall, soft-focus plant in the corner, dappled leaf shadow, illuminated poster) whose artwork HARD-CUTS through ~10 on-brand poster mockups (hero product, IG post,
name: render-brand-identity-reveal description: Render a 'brand identity reveal' video from a config — a single poster frame in a real, softly-lit space (real wall, soft-focus plant in the corner, dappled leaf shadow, illuminated poster) whose artwork HARD-CUTS through ~10 on-brand poster mockups (hero product, IG post, hanging banners, sticker sheet, logo lockup, poster, two lifestyle stills, packaging, big icon) then holds on a brand end card. The environment plate is one create-image-fal generation; the mockups are real-DOM HTML frame-stepped via Playwright, perspective-composited into the detected frame quad with the plate's real leaf-shadow multiplied back onto each poster (reads as behind glass), sequenced by FFmpeg. Deterministic assembly, FREE (the plate comes from create-image-fal, the bed from create-music-elevenlabs), music bed only and approved brand copy only. Use for the brand-identity-reveal format. status: active
Render the 'brand identity reveal' format from a config. The signature is a single fixed poster frame in a REAL, softly-lit space (the illuminated poster-frame look of a boutique/cinema): a real wall, a real soft-focus plant in the lower-left corner, dappled leaf shadow. The artwork INSIDE the frame HARD-CUTS (no crossfade) through 11 beats — 10 on-brand poster mockups + a brand END CARD held ~3s. Music bed only, NO voiceover; copy is baked into each mockup, never overlaid as captions.
This capability is the **FREE** assembly only. The paid parts are separate generic capabilities the recipe names — `create-image-fal` (the one-shot environment plate) and `create-music-elevenlabs` (the bed). Never re-implement them here.
1. **Environment plate** (PAID, `create-image-fal`, flux-pro ultra, 9:16) — an *empty* lit poster frame in a real space, high-res so the camera can be pushed closer by cropping. Pick a wall color that makes the brand's poster colors POP (complement of the dominant hue). 2. **Mockups** (FREE) — real-DOM HTML/CSS (`scene.html`), one poster per beat, built from the brand's real assets + approved copy, frame-stepped via Playwright (`render_art.py`, bare mode, device_scale_factor 2). 3. **Composite** (FREE) — `measure_frame.py` detects the blank poster interior quad; `composite.py` perspective-warps each poster into it AND multiplies the plate's real leaf-shadow/light back onto the poster (so it reads as behind glass) + a glass sheen; `build_video.sh` sequences the frames with the music bed.
wall_style, camera crop, per-beat durations, end-card copy). Schema + per-file working-dir layout are documented in `scripts/PIPELINE.md`.
as an SVG `<mask>` if the only source has an occluding element). Approved copy only.
CAP=skills/ads/capabilities/render-brand-identity-reveal RUN=<project>/working # holds scene.html + assets/ + the create-image-fal plate in bg/ python3 $CAP/scripts/recrop.py 0.72 0.13 # camera distance (bigger frac = bigger frame) python3 $CAP/scripts/measure_frame.py # detect the blank poster interior quad python3 $CAP/scripts/render_art.py # render each poster standalone (Playwright, dsf 2) python3 $CAP/scripts/composite.py # warp into frame + shadow multiply + sheen bash $CAP/scripts/build_video.sh $RUN/concat.txt $RUN/music.mp3 out.mp4 13.05 1.0
Then `watch` the master (music-only, every poster legible, shadow falls across the art, end card holds). See `scripts/PIPELINE.md` for adapting `scene.html` per brand.
`display:none` toggle and paints one state over all others).
opacity.
JS string and return the applied state to assert it.
corner-flood-fill.
Put your AI agent on the growth team. Research customers and competitors, analyze what is working, create the next campaign, and learn from the result.
Repo: gooseworks-ai/goose-skills
Generate or edit an image via any FAL image model (nano-banana edit, gpt-image, flux, ...), ROUTED THROUGH THE fal-proxy so it bills the Ads agent. image_urls…
Generate a single photoreal or designed image with OpenAI gpt-image via fal.ai. Supports gpt-image-1 (default, fixed sizes — the FAL fallback for Higgsfield's…
Generate an instrumental music bed via ElevenLabs Music, ROUTED THROUGH THE elevenlabs-proxy so it bills the Ads agent. Trims any sparse intro, loudnorm, fades…
Image-to-video (or text-to-video) via any FAL video model (Kling, Seedance, Veo), ROUTED THROUGH THE GooseWorks fal-proxy so the call bills the Ads agent. The…
Generate a voiceover (VO) clip via ElevenLabs text-to-speech, ROUTED THROUGH THE elevenlabs-proxy so it bills the Ads agent. Voice id + script text come from…
Scrape competitor ads from Google Ads by domain. Returns ad creatives, formats, and campaign details. Use for competitive ad research and messaging analysis.