Big Black Head V2 Image-to-Video (GIF) — Open Skill

Big Black Head V2 Image-to-Video (GIF)

Big Black Head V2 Image-to-Video (GIF) is a public Open Skill on Digen. Open it to see what this workflow creates.

@wwws

Roleplay

1 0 0

https://d7qlwi7tl2u27.cloudfront.net/skill-covers/prod/4284863/2026-10-20/v6xwk2w6.jpg

# Big Black Head V2 Image-to-Video (GIF)

Turn one uploaded still into a short, high-quality, gently animated clip that keeps the source image's identity, brand silhouette and signature look. Output is a single continuous take designed to loop like a GIF.

## When to use

- The user uploads an image and asks for a video, clip, animation, live photo or GIF out of it.
- The user asks for the "Big Black Head V2" style specifically: high-quality image-to-video with detail enhancement.
- The user asks to redo, lengthen, re-time or re-light a clip that was already produced from a still.

Do not use for: text-to-video with no source image, multi-shot editing of existing footage, or purely static image requests (for a still image, skip this skill's video steps).

## Steps

1. **Verify the input.** Exactly one hero reference image is required. If the user attached none, ask them to upload it — never invent a scene and never silently switch to text-to-video. Note the user's requested duration, loop behaviour, mood and any "do not change X" instruction.

2. **Read the stage map.** Call `read_skill_file` with `path="references/workflow-stages.md"` and follow its intake checklist and branch rules (single reference vs. explicit first+last frame; retry conditions).

3. **Analyze the reference image.** Call `recognize_image(image_url=<uploaded image>, prompt=<the analysis prompt in references/style-and-prompt.md>)`. Extract: dominant palette, light direction, hero subject, brand silhouette / emblems / garment pattern, framing and background layers. These findings are the identity anchors for every later step.

4. **Load the visual contract.** Call `read_skill_file` with `path="references/style-and-prompt.md"`. Fill its STYLE / SUBJECT / LAYOUT / LIGHT blocks with the findings from step 3, and carry its Must-keep and Must-avoid lists forward verbatim. Every prompt in this skill must be built from this file — never free-hand a generic prompt.

5. **Write the shot script.** Call `read_skill_file` with `path="references/video-script.md"`. Following that structure, write a detailed English script *for this specific request*: logline, duration, 3–6 beats with shot size, camera move, subject action, light/atmosphere, transition and what must stay frozen. Use the user's own words and the step-3 analysis. A boilerplate template is not an acceptable script.

6. **Apply the clip constraints.** Call `read_skill_file` with `path="references/video-content-constraints.md"`. Compress the script into one dense English video prompt (shot + identity + action beats + camera + light + style + loop rule, then the "Avoid:" clause). Keep framing static enough for a seamless loop and drop any beat the constraints forbid.

7. **Generate the clip.** Call `generate_video` with:
   - `prompt` = the prompt assembled in step 6 (English).
   - `input_urls` = `[<uploaded reference image>]` (asset id or `s3://` uri as returned by the platform).
   - `model='ref2v'` — reference-based video, the default channel for this app. Do not pass a physical model name and do not pass `gen_mode`.
   - `orientation='portrait'` (9:16 vertical short video), `resolution='1080P'` for the high-definition look, `duration=5` unless the user asked otherwise.
   - `name` = short canvas title, e.g. `Big Black Head V2 - <subject> clip`.
   - `entity_type='final_videos'`.
   - Branch: only if the user supplied an explicit last frame, call `generate_video` with `model='i2v'` and `input_urls=[first_frame, last_frame]` instead, keeping the same prompt and parameters.
   - Never pass an `audio_url` unless the user provided audio.

8. **Check the result.** If `success=false`, follow the retry branch in `references/workflow-stages.md` (at most two retries, then report honestly). If the tool returns `param_adjustments`, mention them in one short clause. On success, confirm the clip is on the canvas in one or two sentences and, in the same turn, call `set_guidance` with next-step options (e.g. longer duration