Denim Shorts Legs Video · Open Skill 公开技能
Denim Shorts Legs Video
Denim Shorts Legs Video 是 Digen 上的公开 Open Skill。打开后即可了解该工作流能制作什么。
Trailer
0 0 2
https://d7qlwi7tl2u27.cloudfront.net/skill-covers/prod/4284865/2026-10-21/muq2ddcj.jpg
# Denim Shorts Legs Video
Turn one uploaded photo into a short vertical video where the person from the photo wears frayed denim cutoff shorts, shot in one consistent denim-catalog visual style, and delivered as a seamless loop clip (optionally assembled into a forward + reverse "ping-pong" clip of about ten seconds).
There is no structured project state. Work from the uploaded image, the conversation, and the assets already on the canvas.
## When to use
- The user uploads an image of a person and asks for a short video, a denim-shorts clip, or a "denim shorts legs" result.
- The user asks to redo, restyle, or lengthen a denim-shorts clip produced earlier in the conversation.
- The user asks for the same clip as a ping-pong loop (forward then reversed).
Do not use it for plain still-image generation only, and do not use it for unrelated video editing tasks.
## Steps
1. **Intake.** Confirm exactly one person photo is available. If no image was uploaded, ask for a portrait or full-body photo and stop. Read `references/step-details.md` and apply its intake checklist and branch table before doing anything else.
2. **Load the visual rules.** Call `read_skill_file` with `path="references/style-and-prompt.md"`. Everything about palette, denim material, lighting, framing, must-keep and must-avoid lives there; the prompts in later steps must follow it.
3. **Read the reference image.** Use `recognize_image` on the uploaded image when the visible content is uncertain (upper body only, cropped frame, unclear background). Record identity anchors (skin tone, hair, body type, styling, visible accessories), the background type, and the light direction. These anchors go into the script and the prompt.
4. **Optional prep frame (only when needed).** If the uploaded image is not vertical, has a busy background, or only shows the upper body, build a clean vertical base frame first:
`generate_image(prompt=<image prompt from references/style-and-prompt.md>, input_urls=[uploaded image], model='i2i.hd.lite', orientation='portrait', name='Denim Legs Base Frame', entity_type='storyboard_images')`.
Otherwise skip this step and use the uploaded image itself as the first frame. The decision rule and the failure branch are in `references/step-details.md`.
5. **Write the script for this request.** Call `read_skill_file` with `path="references/video-script.md"`, then write a complete English script for *this* user request: logline, duration and loop spec, identity and wardrobe anchors taken from step 3, the beat-by-beat shots (shot size, camera move, subject action, light and atmosphere), the loop closure, and the must-keep / must-avoid lists. Never reuse a canned template as the finished script.
6. **Load the motion and safety limits.** Call `read_skill_file` with `path="references/video-content-constraints.md"` and apply its framing, motion, pacing, loop, and forbidden-content rules to the script from step 5.
7. **Generate the clip.** Compress the script into a single English video prompt (see the compression rules in `references/video-script.md`) and call:
`generate_video(prompt=<compressed script>, input_urls=[frame], model='i2v', orientation='portrait', duration=5, name='Denim Shorts Legs Clip', entity_type='storyboard_videos')`.
Use `model='ref2v'` instead when the user supplies extra reference images (for example a denim garment or style reference) alongside the person photo; put all references in `input_urls` and keep the person photo first. Never pass a physical model name.
8. **Optional ping-pong assembly.** When the user wants the ten-second forward/reverse loop, generate a second clip whose motion runs the opposite direction using the same script and prompt conventions, then join both with `mix_clips(clips=[{'videos': [clip_a, clip_b]}], orientation='portrait', name='Denim Shorts Legs Ping-Pong', entity_type='final_videos')`. The assembly rule and the fallback when only one clip exists are in `references/step-details.md`.