← Creative ClawCONTENT HISTORY

Update to Creative Claw

Snapshot Oct 24, 2026 · 12:48 UTC · version 5.4.2

Collection source: downloaded plugin package.

WHAT CHANGED

Instructions updated for creativeclaw-create-ugc-ad

Skill instructions — Now says: For each Creative Claw tool call that exposes it, pass the optional `skills_used` array with `creativeclaw-create-ugc-ad`, any other Creative Claw skills...

Observed in instructions or declared skills. Runtime behavior has not been tested.

Save Creative Claw and check future changes in Following.

Up to 10 plugins free · no card required.

All fields and original values.

Skill instructions

Before

Oct 3, 2026 · 06:03 UTC

Unless the user asked for direct text-to-video, supplied a ready shot image, or is editing footage, follow this before `generate_video`. A video request authorizes one keyframe per shot: say so, don't ask. 3. Keyframe per shot: `generate...

After

Oct 24, 2026 · 12:48 UTC

For each Creative Claw tool call that exposes it, pass the optional `skills_used` array with `creativeclaw-create-ugc-ad`, any other Creative Claw skills actually followed, and guide entries in the form `<skill-name>/<relative-guide-path...

Supporting files

Before

Oct 3, 2026 · 06:03 UTC

[{"relative_path":"agents/openai.yaml","size_in_bytes":533},{"relative_path":"references/images/gpt-image-2.md","size_in_bytes":11212},{"relative_path":"references/images/index.md","size_in_bytes":456},{"relative_path":"references/images...

After

Oct 24, 2026 · 12:48 UTC

[{"relative_path":"agents/openai.yaml","size_in_bytes":533},{"relative_path":"references/images/gpt-image-2.md","size_in_bytes":11212},{"relative_path":"references/images/index.md","size_in_bytes":575},{"relative_path":"references/images...

Compare saved observations

Download comparison JSON

SKILL.md text changes

− removed · + added

--- before
+++ after
@@ -5,6 +5,10 @@
 
 # Create UGC Ad
 
+For each Creative Claw tool call that exposes it, pass the optional `skills_used` array with `creativeclaw-create-ugc-ad`, any other Creative Claw skills actually followed, and guide entries in the form `<skill-name>/<relative-guide-path>` (for example, `creativeclaw-create-ugc-ad/references/workflow-basics.md`). Include only skills and guides followed for that call. Omit attribution if the user declines tracking or the field is unavailable. Never send other plugin names, private data, or local paths.
+
+**Not connected yet?** If no Creative Claw tools (such as `list_models` or `generate_image`) are available, the plugin is installed but the server is not connected. Stop and tell the user to open the plugin's Connectors tab in their app (or the MCP server list in a terminal client), connect Creative Claw, sign in, and ask again. Do not substitute other tools or describe a result that was not generated.
+
 Read [video model selection](references/video/index.md), then only the selected model's guide. Model families are covered locally, with live-schema guidance for additional models; do not load every guide or require a sibling model skill. Read [Review/Auto handling](references/video/review.md) before submission.
 
 Read [shared execution guidance](references/workflow-basics.md) once per task before using tools. It covers existing authorization, model discovery, optional cost checks, imports, and recovery.
@@ -13,15 +17,15 @@
 
 ## Reference-first pipeline
 
-Unless the user asked for direct text-to-video, supplied a ready shot image, or is editing footage, follow this before `generate_video`. A video request authorizes one keyframe per shot: say so, don't ask.
+Unless the user asked for direct text-to-video, supplied a ready shot image, or is editing footage, follow this before `generate_video`. New clips start from one keyframe image per shot, so the video model animates images the user has seen instead of inventing the face, product, outfit or location: tell the user how many images that is before making them.
 
 1. Anchors, reuse first: `search_assets`, `list_characters`, `get_theme`. Person: Character sheet + face portrait (real person: also their best original photo). Product: real photo or packshot, plus a label/logo close-up when text matters. A recurring person or product with no anchor: create it first (creativeclaw-create-avatar, creativeclaw-product-photoshoot).
 2. Look line: one sentence (palette, light, lens, medium), pasted into every keyframe and video prompt.
-3. Keyframe per shot: `generate_image` with the same image model all project (default `image/nano-banana-2`), `aspect_ratio` = the video's ratio, main anchor in `image_url`, others in `extras.image_urls`, roles named. One clean full-bleed frame; no text, grid or labels.
+3. Keyframe per shot: `generate_image` with the same image model all project (default `image/nano-banana-2`), `aspect_ratio` = the video's ratio, main anchor in `image_url`, others in `extras.image_urls`, roles named. From shot 2 on, add the first approved keyframe (and the previous one when the scene continues) as a look reference alongside the anchors. One clean full-bleed frame; no text, grid or labels.
 4. Compare it to the anchors (face, label, logo, colors); fix with one targeted edit.
 5. Show keyframes and the plan (model, duration, ratio) in one message. Review mode: call `generate_video` now; the card is the approval. Auto: ask once unless the user said go.
 6. One mode per shot. People, several subjects or big motion: `image_urls` = [keyframe, identity anchor, product anchor], 2–4 total; `character_id` is fine here. Exact opening (product hero, logo reveal): `image_url` = keyframe, no `image_urls` or `character_id`.
-7. Next shot: same anchors and look line. A previous clip's last frame is only an extra composition cue.
+7. Next shot: same anchors and look line, plus the earlier keyframes as references. A previous clip's last frame is only an extra composition cue.
 
 Details: [reference production](references/video/reference-production.md). Image prompting: [image model index](references/images/index.md) and only the chosen guide.
 
@@ -48,7 +52,7 @@
 
 1. Use `creativeclaw-plan-video` to approve the script, shot list, and clean storyboard frames before costly generation.
 2. Use `create_film_project` for a multi-shot ad, persist shots with `update_film_project`, and honor the script and storyboard approval gates.
-3. Pick one voice path per speaking shot from [voice in video](references/video/voice-in-video.md): native dialogue for a quick one-off; speech first when the creator recurs or the script is exact. Make speech with `creativeclaw-generate-voiceover` and lock durations from its `wordTimings`. Then read the selected local video-model guide and call `generate_video` for each clip. Default to Gemini Omni, which accepts no audio; for exact-voice lip-sync use Seedance 2.5, H3 Max or `video/sync-3`.
+3. Check the selected model's spoken-language guidance in `get_model_params({ model })`, then pick a path from [voice in video](references/video/voice-in-video.md). For unsupported or unverified dialogue languages, follow [spoken languages](references/video/spoken-languages.md): one image and one audio-driven generation for a single talking face; consistent images from the same character references at requested camera positions, per-shot speech and concatenation only for requested multiple shots. For documented languages, keep native dialogue for a quick one-off or speech first when the creator recurs or the script is exact. Make required speech with `creativeclaw-generate-voiceover` and lock durations from its `wordTimings`. Read the selected model guide before calling `generate_video`. Gemini Omni accepts no audio on the current route; exact recordings need an audio-driven route or an authorized `video/sync-3` pass on a finished clip (the recommended lip-sync model); preserve an explicit model choice.
 4. Reuse the prepared speech. Prompt clips with no music; use `creativeclaw-generate-music` only for a requested project track and `creativeclaw-generate-sound-effects` for requested SFX. Read [media-assembly.md](references/media-assembly.md).
 5. Add per-shot voice or music with `merge_media` `merge_audio_video`: `audio_mode: "mix"` keeps the clip's sound (`added_volume` about 0.3 for music under speech); the default `replace` discards it and ends at the shorter input. `assemble_film` narration replaces every shot's audio; set `with_narration: false` when shots speak. Assembly adds no captions, transitions, or full sound mix.
 
Full technical diff · 2 changed fields

changed /included_files

BEFORE
[
  {
    "relative_path": "agents/openai.yaml",
    "size_in_bytes": 533
  },
  {
    "relative_path": "references/images/gpt-image-2.md",
    "size_in_bytes": 11212
  },
  {
    "relative_path": "references/images/index.md",
    "size_in_bytes": 456
  },
  {
    "relative_path": "references/images/nano-banana-2.md",
    "size_in_bytes": 8855
  },
  {
    "relative_path": "references/images/nano-banana-pro.md",
    "size_in_bytes": 8824
  },
  {
    "relative_path": "references/images/seedream-5-pro.md",
    "size_in_bytes": 9556
  },
  {
    "relative_path": "references/job-recovery.md",
    "size_in_bytes": 3786
  },
  {
    "relative_path": "references/media-assembly.md",
    "size_in_bytes": 8654
  },
  {
    "relative_path": "references/platform-upload.md",
    "size_in_bytes": 1416
  },
  {
    "relative_path": "references/video/gemini-omni.md",
    "size_in_bytes": 10085
  },
  {
    "relative_path": "references/video/index.md",
    "size_in_bytes": 2176
  },
  {
    "relative_path": "references/video/minimax-h3-max.md",
    "size_in_bytes": 11220
  },
  {
    "relative_path": "references/video/other-models.md",
    "size_in_bytes": 4653
  },
  {
    "relative_path": "references/video/recipe-character-scene.md",
    "size_in_bytes": 2941
  },
  {
    "relative_path": "references/video/recipe-product-ad.md",
    "size_in_bytes": 3265
  },
  {
    "relative_path": "references/video/recipe-source-edit.md",
    "size_in_bytes": 3357
  },
  {
    "relative_path": "references/video/reference-production.md",
    "size_in_bytes": 5865
  },
  {
    "relative_path": "references/video/review.md",
    "size_in_bytes": 1909
  },
  {
    "relative_path": "references/video/seedance-2-5.md",
    "size_in_bytes": 15084
  },
  {
    "relative_path": "references/video/seedance-mini.md",
    "size_in_bytes": 1579
  },
  {
    "relative_path": "references/video/ugc-paths.md",
    "size_in_bytes": 2988
  },
  {
    "relative_path": "references/video/voice-in-video.md",
    "size_in_bytes": 3328
  },
  {
    "relative_path": "references/video/wan-3.md",
    "size_in_bytes": 9107
  },
  {
    "relative_path": "references/workflow-basics.md",
    "size_in_bytes": 7260
  }
]
AFTER
[
  {
    "relative_path": "agents/openai.yaml",
    "size_in_bytes": 533
  },
  {
    "relative_path": "references/images/gpt-image-2.md",
    "size_in_bytes": 11212
  },
  {
    "relative_path": "references/images/index.md",
    "size_in_bytes": 575
  },
  {
    "relative_path": "references/images/nano-banana-2.md",
    "size_in_bytes": 9762
  },
  {
    "relative_path": "references/images/nano-banana-pro.md",
    "size_in_bytes": 8798
  },
  {
    "relative_path": "references/images/seedream-5-pro.md",
    "size_in_bytes": 10038
  },
  {
    "relative_path": "references/job-recovery.md",
    "size_in_bytes": 3786
  },
  {
    "relative_path": "references/media-assembly.md",
    "size_in_bytes": 8654
  },
  {
    "relative_path": "references/platform-upload.md",
    "size_in_bytes": 1416
  },
  {
    "relative_path": "references/video/gemini-omni.md",
    "size_in_bytes": 10394
  },
  {
    "relative_path": "references/video/h3-max-recast.md",
    "size_in_bytes": 1987
  },
  {
    "relative_path": "references/video/heygen-lipsync.md",
    "size_in_bytes": 11997
  },
  {
    "relative_path": "references/video/index.md",
    "size_in_bytes": 3340
  },
  {
    "relative_path": "references/video/kling-motion-control.md",
    "size_in_bytes": 4834
  },
  {
    "relative_path": "references/video/minimax-h3-max.md",
    "size_in_bytes": 11845
  },
  {
    "relative_path": "references/video/motion-transfer.md",
    "size_in_bytes": 3517
  },
  {
    "relative_path": "references/video/other-models.md",
    "size_in_bytes": 5898
  },
  {
    "relative_path": "references/video/recipe-character-scene.md",
    "size_in_bytes": 3076
  },
  {
    "relative_path": "references/video/recipe-product-ad.md",
    "size_in_bytes": 3265
  },
  {
    "relative_path": "references/video/recipe-source-edit.md",
    "size_in_bytes": 5428
  },
  {
    "relative_path": "references/video/reference-production.md",
    "size_in_bytes": 7198
  },
  {
    "relative_path": "references/video/review.md",
    "size_in_bytes": 1876
  },
  {
    "relative_path": "references/video/seedance-2-5.md",
    "size_in_bytes": 15610
  },
  {
    "relative_path": "references/video/seedance-mini.md",
    "size_in_bytes": 1579
  },
  {
    "relative_path": "references/video/spoken-languages.md",
    "size_in_bytes": 7949
  },
  {
    "relative_path": "references/video/ugc-paths.md",
    "size_in_bytes": 3391
  },
  {
    "relative_path": "references/video/voice-in-video.md",
    "size_in_bytes": 4887
  },
  {
    "relative_path": "references/video/wan-3.md",
    "size_in_bytes": 9117
  },
  {
    "relative_path": "references/voices/speech-localization.md",
    "size_in_bytes": 3869
  },
  {
    "relative_path": "references/workflow-basics.md",
    "size_in_bytes": 10396
  }
]

changed /skill_md_contents

BEFORE
"---\nname: creativeclaw-create-ugc-ad\ndescription: \"Create a scripted creator-style UGC product ad with Creative Claw. Use when the user wants a vertical testimonial, demo, unboxing, problem-solution ad, or social video combining a creator, product, speech, and several shots.\"\n---\n\n# Create UGC Ad\n\nRead [video model selection](references/video/index.md), then only the selected model's guide. Model families are covered locally, with live-schema guidance for additional models; do not load every guide or require a sibling model skill. Read [Review/Auto handling](references/video/review.md) before submission.\n\nRead [shared execution guidance](references/workflow-basics.md) once per task before using tools. It covers existing authorization, model discovery, optional cost checks, imports, and recovery.\n\nCreate a believable social ad with a clear commercial story while keeping product claims and creator identity accurate. This outcome skill coordinates Characters, planning, images, video, voice, and Film tools.\n\n## Reference-first pipeline\n\nUnless the user asked for direct text-to-video, supplied a ready shot image, or is editing footage, follow this before `generate_video`. A video request authorizes one keyframe per shot: say so, don't ask.\n\n1. Anchors, reuse first: `search_assets`, `list_characters`, `get_theme`. Person: Character sheet + face portrait (real person: also their best original photo). Product: real photo or packshot, plus a label/logo close-up when text matters. A recurring person or product with no anchor: create it first (creativeclaw-create-avatar, creativeclaw-product-photoshoot).\n2. Look line: one sentence (palette, light, lens, medium), pasted into every keyframe and video prompt.\n3. Keyframe per shot: `generate_image` with the same image model all project (default `image/nano-banana-2`), `aspect_ratio` = the video's ratio, main anchor in `image_url`, others in `extras.image_urls`, roles named. One clean full-bleed frame; no text, grid or labels.\n4. Compare it to the anchors (face, label, logo, colors); fix with one targeted edit.\n5. Show keyframes and the plan (model, duration, ratio) in one message. Review mode: call `generate_video` now; the card is the approval. Auto: ask once unless the user said go.\n6. One mode per shot. People, several subjects or big motion: `image_urls` = [keyframe, identity anchor, product anchor], 2–4 total; `character_id` is fine here. Exact opening (product hero, logo reveal): `image_url` = keyframe, no `image_urls` or `character_id`.\n7. Next shot: same anchors and look line. A previous clip's last frame is only an extra composition cue.\n\nDetails: [reference production](references/video/reference-production.md). Image prompting: [image model index](references/images/index.md) and only the chosen guide.\n\n## Choose a production path\n\nRead [UGC production paths](references/video/ugc-paths.md) and choose product-only narration, a visible speaking presenter, or a hands-on demonstration/unboxing. Do not treat these as interchangeable. Use the [product-ad recipe](references/video/recipe-product-ad.md) for an end-to-end example, and use creativeclaw-create-avatar for guided presenter identity creation.\n\n## Brief and script\n\n1. Use known product, audience, platform, duration, ratio, offer, claims, creator style, and CTA details. Infer minor creative defaults; ask only for missing information that materially changes the ad, rather than presenting this list as a questionnaire.\n2. Choose a structure that fits the brief: hook, problem, discovery, demonstration, proof, and CTA. Keep spoken lines conversational: at most 2.5 words per clip second, with about 0.5 s of air at each end.\n3. Treat unverified performance, health, financial, or testimonial claims as claims to remove or qualify, not creative facts.\n\nWrite and review the ad in the user's language. Preserve approved product wording, required disclosures, and spoken lines exactly unless the user requests a rewrite or translation.\n\n## Creator and product anchors\n\n- Strongly recommend `creativeclaw-create-avatar` and its Character sheet for a new recurring creator; use `creativeclaw-create-character` to maintain an existing identity.\n- When a Character speaks and the voice is unknown, ask one question: design a new voice from a description (`design_voice`, three auditions), use your own voice (recording plus consent, creativeclaw-clone-voice), or pick a stock voice. If the voice doesn't matter, pick a stock voice and name it. Design auditions use the Character's real lines. In ChatGPT the Voice Studio card saves the choice; read it back from `list_characters` rather than saving again.\n- Use approved product references. For supporting stills or packshots, follow `creativeclaw-product-photoshoot`.\n- Maintain the same creator features, wardrobe, product geometry, location logic, and screen direction across shots.\n\n## Plan and produce\n\n1. Use `creativeclaw-plan-video` to approve the script, shot list, and clean storyboard frames before costly generation.\n2. Use `create_film_project` for a multi-shot ad, persist shots with `update_film_project`, and honor the script and storyboard approval gates.\n3. Pick one voice path per speaking shot from [voice in video](references/video/voice-in-video.md): native dialogue for a quick one-off; speech first when the creator recurs or the script is exact. Make speech with `creativeclaw-generate-voiceover` and lock durations from its `wordTimings`. Then read the selected local video-model guide and call `generate_video` for each clip. Default to Gemini Omni, which accepts no audio; for exact-voice lip-sync use Seedance 2.5, H3 Max or `video/sync-3`.\n4. Reuse the prepared speech. Prompt clips with no music; use `creativeclaw-generate-music` only for a requested project track and `creativeclaw-generate-sound-effects` for requested SFX. Read [media-assembly.md](references/media-assembly.md).\n5. Add per-shot voice or music with `merge_media` `merge_audio_video`: `audio_mode: \"mix\"` keeps the clip's sound (`added_volume` about 0.3 for music under speech); the default `replace` discards it and ends at the shorter input. `assemble_film` narration replaces every shot's audio; set `with_narration: false` when shots speak. Assembly adds no captions, transitions, or full sound mix.\n\n## Review\n\nCheck the first three seconds, natural delivery, product visibility, claim accuracy, continuity, audio intelligibility, pacing, safe text areas, and CTA clarity. Save multiple hooks as distinct assets only when requested. Set the Film to final only after approval.\n"
AFTER
"---\nname: creativeclaw-create-ugc-ad\ndescription: \"Create a scripted creator-style UGC product ad with Creative Claw. Use when the user wants a vertical testimonial, demo, unboxing, problem-solution ad, or social video combining a creator, product, speech, and several shots.\"\n---\n\n# Create UGC Ad\n\nFor each Creative Claw tool call that exposes it, pass the optional `skills_used` array with `creativeclaw-create-ugc-ad`, any other Creative Claw skills actually followed, and guide entries in the form `<skill-name>/<relative-guide-path>` (for example, `creativeclaw-create-ugc-ad/references/workflow-basics.md`). Include only skills and guides followed for that call. Omit attribution if the user declines tracking or the field is unavailable. Never send other plugin names, private data, or local paths.\n\n**Not connected yet?** If no Creative Claw tools (such as `list_models` or `generate_image`) are available, the plugin is installed but the server is not connected. Stop and tell the user to open the plugin's Connectors tab in their app (or the MCP server list in a terminal client), connect Creative Claw, sign in, and ask again. Do not substitute other tools or describe a result that was not generated.\n\nRead [video model selection](references/video/index.md), then only the selected model's guide. Model families are covered locally, with live-schema guidance for additional models; do not load every guide or require a sibling model skill. Read [Review/Auto handling](references/video/review.md) before submission.\n\nRead [shared execution guidance](references/workflow-basics.md) once per task before using tools. It covers existing authorization, model discovery, optional cost checks, imports, and recovery.\n\nCreate a believable social ad with a clear commercial story while keeping product claims and creator identity accurate. This outcome skill coordinates Characters, planning, images, video, voice, and Film tools.\n\n## Reference-first pipeline\n\nUnless the user asked for direct text-to-video, supplied a ready shot image, or is editing footage, follow this before `generate_video`. New clips start from one keyframe image per shot, so the video model animates images the user has seen instead of inventing the face, product, outfit or location: tell the user how many images that is before making them.\n\n1. Anchors, reuse first: `search_assets`, `list_characters`, `get_theme`. Person: Character sheet + face portrait (real person: also their best original photo). Product: real photo or packshot, plus a label/logo close-up when text matters. A recurring person or product with no anchor: create it first (creativeclaw-create-avatar, creativeclaw-product-photoshoot).\n2. Look line: one sentence (palette, light, lens, medium), pasted into every keyframe and video prompt.\n3. Keyframe per shot: `generate_image` with the same image model all project (default `image/nano-banana-2`), `aspect_ratio` = the video's ratio, main anchor in `image_url`, others in `extras.image_urls`, roles named. From shot 2 on, add the first approved keyframe (and the previous one when the scene continues) as a look reference alongside the anchors. One clean full-bleed frame; no text, grid or labels.\n4. Compare it to the anchors (face, label, logo, colors); fix with one targeted edit.\n5. Show keyframes and the plan (model, duration, ratio) in one message. Review mode: call `generate_video` now; the card is the approval. Auto: ask once unless the user said go.\n6. One mode per shot. People, several subjects or big motion: `image_urls` = [keyframe, identity anchor, product anchor], 2–4 total; `character_id` is fine here. Exact opening (product hero, logo reveal): `image_url` = keyframe, no `image_urls` or `character_id`.\n7. Next shot: same anchors and look line, plus the earlier keyframes as references. A previous clip's last frame is only an extra composition cue.\n\nDetails: [reference production](references/video/reference-production.md). Image prompting: [image model index](references/images/index.md) and only the chosen guide.\n\n## Choose a production path\n\nRead [UGC production paths](references/video/ugc-paths.md) and choose product-only narration, a visible speaking presenter, or a hands-on demonstration/unboxing. Do not treat these as interchangeable. Use the [product-ad recipe](references/video/recipe-product-ad.md) for an end-to-end example, and use creativeclaw-create-avatar for guided presenter identity creation.\n\n## Brief and script\n\n1. Use known product, audience, platform, duration, ratio, offer, claims, creator style, and CTA details. Infer minor creative defaults; ask only for missing information that materially changes the ad, rather than presenting this list as a questionnaire.\n2. Choose a structure that fits the brief: hook, problem, discovery, demonstration, proof, and CTA. Keep spoken lines conversational: at most 2.5 words per clip second, with about 0.5 s of air at each end.\n3. Treat unverified performance, health, financial, or testimonial claims as claims to remove or qualify, not creative facts.\n\nWrite and review the ad in the user's language. Preserve approved product wording, required disclosures, and spoken lines exactly unless the user requests a rewrite or translation.\n\n## Creator and product anchors\n\n- Strongly recommend `creativeclaw-create-avatar` and its Character sheet for a new recurring creator; use `creativeclaw-create-character` to maintain an existing identity.\n- When a Character speaks and the voice is unknown, ask one question: design a new voice from a description (`design_voice`, three auditions), use your own voice (recording plus consent, creativeclaw-clone-voice), or pick a stock voice. If the voice doesn't matter, pick a stock voice and name it. Design auditions use the Character's real lines. In ChatGPT the Voice Studio card saves the choice; read it back from `list_characters` rather than saving again.\n- Use approved product references. For supporting stills or packshots, follow `creativeclaw-product-photoshoot`.\n- Maintain the same creator features, wardrobe, product geometry, location logic, and screen direction across shots.\n\n## Plan and produce\n\n1. Use `creativeclaw-plan-video` to approve the script, shot list, and clean storyboard frames before costly generation.\n2. Use `create_film_project` for a multi-shot ad, persist shots with `update_film_project`, and honor the script and storyboard approval gates.\n3. Check the selected model's spoken-language guidance in `get_model_params({ model })`, then pick a path from [voice in video](references/video/voice-in-video.md). For unsupported or unverified dialogue languages, follow [spoken languages](references/video/spoken-languages.md): one image and one audio-driven generation for a single talking face; consistent images from the same character references at requested camera positions, per-shot speech and concatenation only for requested multiple shots. For documented languages, keep native dialogue for a quick one-off or speech first when the creator recurs or the script is exact. Make required speech with `creativeclaw-generate-voiceover` and lock durations from its `wordTimings`. Read the selected model guide before calling `generate_video`. Gemini Omni accepts no audio on the current route; exact recordings need an audio-driven route or an authorized `video/sync-3` pass on a finished clip (the recommended lip-sync model); preserve an explicit model choice.\n4. Reuse the prepared speech. Prompt clips with no music; use `creativeclaw-generate-music` only for a requested project track and `creativeclaw-generate-sound-effects` for requested SFX. Read [media-assembly.md](references/media-assembly.md).\n5. Add per-shot voice or music with `merge_media` `merge_audio_video`: `audio_mode: \"mix\"` keeps the clip's sound (`added_volume` about 0.3 for music under speech); the default `replace` discards it and ends at the shorter input. `assemble_film` narration replaces every shot's audio; set `with_narration: false` when shots speak. Assembly adds no captions, transitions, or full sound mix.\n\n## Review\n\nCheck the first three seconds, natural delivery, product visibility, claim accuracy, continuity, audio intelligibility, pacing, safe text areas, and CTA clarity. Save multiple hooks as distinct assets only when requested. Set the Film to final only after approval.\n"
Full snapshot data
{
  "description": "Create a scripted creator-style UGC product ad with Creative Claw. Use when the user wants a vertical testimonial, demo, unboxing, problem-solution ad, or social video combining a creator, product, speech, and several shots.",
  "included_files": [
    {
      "relative_path": "agents/openai.yaml",
      "size_in_bytes": 533
    },
    {
      "relative_path": "references/images/gpt-image-2.md",
      "size_in_bytes": 11212
    },
    {
      "relative_path": "references/images/index.md",
      "size_in_bytes": 575
    },
    {
      "relative_path": "references/images/nano-banana-2.md",
      "size_in_bytes": 9762
    },
    {
      "relative_path": "references/images/nano-banana-pro.md",
      "size_in_bytes": 8798
    },
    {
      "relative_path": "references/images/seedream-5-pro.md",
      "size_in_bytes": 10038
    },
    {
      "relative_path": "references/job-recovery.md",
      "size_in_bytes": 3786
    },
    {
      "relative_path": "references/media-assembly.md",
      "size_in_bytes": 8654
    },
    {
      "relative_path": "references/platform-upload.md",
      "size_in_bytes": 1416
    },
    {
      "relative_path": "references/video/gemini-omni.md",
      "size_in_bytes": 10394
    },
    {
      "relative_path": "references/video/h3-max-recast.md",
      "size_in_bytes": 1987
    },
    {
      "relative_path": "references/video/heygen-lipsync.md",
      "size_in_bytes": 11997
    },
    {
      "relative_path": "references/video/index.md",
      "size_in_bytes": 3340
    },
    {
      "relative_path": "references/video/kling-motion-control.md",
      "size_in_bytes": 4834
    },
    {
      "relative_path": "references/video/minimax-h3-max.md",
      "size_in_bytes": 11845
    },
    {
      "relative_path": "references/video/motion-transfer.md",
      "size_in_bytes": 3517
    },
    {
      "relative_path": "references/video/other-models.md",
      "size_in_bytes": 5898
    },
    {
      "relative_path": "references/video/recipe-character-scene.md",
      "size_in_bytes": 3076
    },
    {
      "relative_path": "references/video/recipe-product-ad.md",
      "size_in_bytes": 3265
    },
    {
      "relative_path": "references/video/recipe-source-edit.md",
      "size_in_bytes": 5428
    },
    {
      "relative_path": "references/video/reference-production.md",
      "size_in_bytes": 7198
    },
    {
      "relative_path": "references/video/review.md",
      "size_in_bytes": 1876
    },
    {
      "relative_path": "references/video/seedance-2-5.md",
      "size_in_bytes": 15610
    },
    {
      "relative_path": "references/video/seedance-mini.md",
      "size_in_bytes": 1579
    },
    {
      "relative_path": "references/video/spoken-languages.md",
      "size_in_bytes": 7949
    },
    {
      "relative_path": "references/video/ugc-paths.md",
      "size_in_bytes": 3391
    },
    {
      "relative_path": "references/video/voice-in-video.md",
      "size_in_bytes": 4887
    },
    {
      "relative_path": "references/video/wan-3.md",
      "size_in_bytes": 9117
    },
    {
      "relative_path": "references/voices/speech-localization.md",
      "size_in_bytes": 3869
    },
    {
      "relative_path": "references/workflow-basics.md",
      "size_in_bytes": 10396
    }
  ],
  "name": "creativeclaw-create-ugc-ad",
  "skill_md_contents": "---\nname: creativeclaw-create-ugc-ad\ndescription: \"Create a scripted creator-style UGC product ad with Creative Claw. Use when the user wants a vertical testimonial, demo, unboxing, problem-solution ad, or social video combining a creator, product, speech, and several shots.\"\n---\n\n# Create UGC Ad\n\nFor each Creative Claw tool call that exposes it, pass the optional `skills_used` array with `creativeclaw-create-ugc-ad`, any other Creative Claw skills actually followed, and guide entries in the form `<skill-name>/<relative-guide-path>` (for example, `creativeclaw-create-ugc-ad/references/workflow-basics.md`). Include only skills and guides followed for that call. Omit attribution if the user declines tracking or the field is unavailable. Never send other plugin names, private data, or local paths.\n\n**Not connected yet?** If no Creative Claw tools (such as `list_models` or `generate_image`) are available, the plugin is installed but the server is not connected. Stop and tell the user to open the plugin's Connectors tab in their app (or the MCP server list in a terminal client), connect Creative Claw, sign in, and ask again. Do not substitute other tools or describe a result that was not generated.\n\nRead [video model selection](references/video/index.md), then only the selected model's guide. Model families are covered locally, with live-schema guidance for additional models; do not load every guide or require a sibling model skill. Read [Review/Auto handling](references/video/review.md) before submission.\n\nRead [shared execution guidance](references/workflow-basics.md) once per task before using tools. It covers existing authorization, model discovery, optional cost checks, imports, and recovery.\n\nCreate a believable social ad with a clear commercial story while keeping product claims and creator identity accurate. This outcome skill coordinates Characters, planning, images, video, voice, and Film tools.\n\n## Reference-first pipeline\n\nUnless the user asked for direct text-to-video, supplied a ready shot image, or is editing footage, follow this before `generate_video`. New clips start from one keyframe image per shot, so the video model animates images the user has seen instead of inventing the face, product, outfit or location: tell the user how many images that is before making them.\n\n1. Anchors, reuse first: `search_assets`, `list_characters`, `get_theme`. Person: Character sheet + face portrait (real person: also their best original photo). Product: real photo or packshot, plus a label/logo close-up when text matters. A recurring person or product with no anchor: create it first (creativeclaw-create-avatar, creativeclaw-product-photoshoot).\n2. Look line: one sentence (palette, light, lens, medium), pasted into every keyframe and video prompt.\n3. Keyframe per shot: `generate_image` with the same image model all project (default `image/nano-banana-2`), `aspect_ratio` = the video's ratio, main anchor in `image_url`, others in `extras.image_urls`, roles named. From shot 2 on, add the first approved keyframe (and the previous one when the scene continues) as a look reference alongside the anchors. One clean full-bleed frame; no text, grid or labels.\n4. Compare it to the anchors (face, label, logo, colors); fix with one targeted edit.\n5. Show keyframes and the plan (model, duration, ratio) in one message. Review mode: call `generate_video` now; the card is the approval. Auto: ask once unless the user said go.\n6. One mode per shot. People, several subjects or big motion: `image_urls` = [keyframe, identity anchor, product anchor], 2–4 total; `character_id` is fine here. Exact opening (product hero, logo reveal): `image_url` = keyframe, no `image_urls` or `character_id`.\n7. Next shot: same anchors and look line, plus the earlier keyframes as references. A previous clip's last frame is only an extra composition cue.\n\nDetails: [reference production](references/video/reference-production.md). Image prompting: [image model index](references/images/index.md) and only the chosen guide.\n\n## Choose a production path\n\nRead [UGC production paths](references/video/ugc-paths.md) and choose product-only narration, a visible speaking presenter, or a hands-on demonstration/unboxing. Do not treat these as interchangeable. Use the [product-ad recipe](references/video/recipe-product-ad.md) for an end-to-end example, and use creativeclaw-create-avatar for guided presenter identity creation.\n\n## Brief and script\n\n1. Use known product, audience, platform, duration, ratio, offer, claims, creator style, and CTA details. Infer minor creative defaults; ask only for missing information that materially changes the ad, rather than presenting this list as a questionnaire.\n2. Choose a structure that fits the brief: hook, problem, discovery, demonstration, proof, and CTA. Keep spoken lines conversational: at most 2.5 words per clip second, with about 0.5 s of air at each end.\n3. Treat unverified performance, health, financial, or testimonial claims as claims to remove or qualify, not creative facts.\n\nWrite and review the ad in the user's language. Preserve approved product wording, required disclosures, and spoken lines exactly unless the user requests a rewrite or translation.\n\n## Creator and product anchors\n\n- Strongly recommend `creativeclaw-create-avatar` and its Character sheet for a new recurring creator; use `creativeclaw-create-character` to maintain an existing identity.\n- When a Character speaks and the voice is unknown, ask one question: design a new voice from a description (`design_voice`, three auditions), use your own voice (recording plus consent, creativeclaw-clone-voice), or pick a stock voice. If the voice doesn't matter, pick a stock voice and name it. Design auditions use the Character's real lines. In ChatGPT the Voice Studio card saves the choice; read it back from `list_characters` rather than saving again.\n- Use approved product references. For supporting stills or packshots, follow `creativeclaw-product-photoshoot`.\n- Maintain the same creator features, wardrobe, product geometry, location logic, and screen direction across shots.\n\n## Plan and produce\n\n1. Use `creativeclaw-plan-video` to approve the script, shot list, and clean storyboard frames before costly generation.\n2. Use `create_film_project` for a multi-shot ad, persist shots with `update_film_project`, and honor the script and storyboard approval gates.\n3. Check the selected model's spoken-language guidance in `get_model_params({ model })`, then pick a path from [voice in video](references/video/voice-in-video.md). For unsupported or unverified dialogue languages, follow [spoken languages](references/video/spoken-languages.md): one image and one audio-driven generation for a single talking face; consistent images from the same character references at requested camera positions, per-shot speech and concatenation only for requested multiple shots. For documented languages, keep native dialogue for a quick one-off or speech first when the creator recurs or the script is exact. Make required speech with `creativeclaw-generate-voiceover` and lock durations from its `wordTimings`. Read the selected model guide before calling `generate_video`. Gemini Omni accepts no audio on the current route; exact recordings need an audio-driven route or an authorized `video/sync-3` pass on a finished clip (the recommended lip-sync model); preserve an explicit model choice.\n4. Reuse the prepared speech. Prompt clips with no music; use `creativeclaw-generate-music` only for a requested project track and `creativeclaw-generate-sound-effects` for requested SFX. Read [media-assembly.md](references/media-assembly.md).\n5. Add per-shot voice or music with `merge_media` `merge_audio_video`: `audio_mode: \"mix\"` keeps the clip's sound (`added_volume` about 0.3 for music under speech); the default `replace` discards it and ends at the shorter input. `assemble_film` narration replaces every shot's audio; set `with_narration: false` when shots speak. Assembly adds no captions, transitions, or full sound mix.\n\n## Review\n\nCheck the first three seconds, natural delivery, product visibility, claim accuracy, continuity, audio intelligibility, pacing, safe text areas, and CTA clarity. Save multiple hooks as distinct assets only when requested. Set the Film to final only after approval.\n"
}

SHA-256 of public snapshot: 9c7bbd3a8efdf6a1eb004b1bf00cdda3a3bfb6d38f2145c6adf17e1b738f8b21