Don't Look Back - Halloween Horror Short · publiczny skill Open Skill

Don't Look Back - Halloween Horror Short

Don't Look Back - Halloween Horror Short to publiczny Open Skill w Digen. Otwórz go, by zobaczyć, co tworzy ten workflow.

@wwws

Roleplay

0 0 1

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

# Don't Look Back — Halloween Horror Short

Turn one uploaded photo into a vertical Halloween horror clip. The user's own face, hair, build and outfit stay recognizable; the room gets dressed in carved pumpkins, autumn garlands and warm lamp light; and in the last beat a menace appears behind them — the "don't look back" moment. There is no structured project state: all decisions live in the conversation, the canvas assets, and the todos.

## When to use

- The user uploads a photo and asks for a Halloween / horror / creepy short video, or references "don't look back", "something behind me", "Halloween clip of me".
- The user wants that clip tweaked: creepier, shorter, different scare, different room, horizontal instead of vertical.
- The user wants only the Halloween still (keyframe) without motion — stop after the keyframe stage.

## Inputs and outputs

- **Input:** one reference photo (required). Optional extra photos of the same person, or a preferred outfit / room.
- **Output:** one vertical (9:16) short horror video plus the Halloween keyframe still it was animated from.
- If no photo is attached, ask for one before generating anything. Never invent a person's appearance.

## Pipeline

| Stage | What happens | Tool / channel |
|---|---|---|
| 1. Read the photo | Lock identity and pose details | `recognize_image` |
| 2. Halloween keyframe | Restyle the photo into the horror scene | `generate_image`, `model='i2i.hd.lite'` (`t2i` only if no photo exists) |
| 3. Script the scare | Write this request's shot script | none (writing step) |
| 4. Animate | Turn the keyframe into the clip | `generate_video`, `model='i2v'` |

## Steps

1. **Inspect the uploaded photo.** Call `recognize_image` with the photo and ask for: face shape, hairstyle and hair color, skin tone, body type, exact outfit, current pose and camera framing, and where the light falls on the subject. If the tool fails, read the photo yourself and tell the user the analysis was manual.

2. **Read the stage playbook.** Call `read_skill_file` with `path="references/workflow-stages.md"` and follow its stage checklists, identity checks, branches (still-only, restyle, retry) and per-stage channel choices.

3. **Read the look-and-prompt file.** Call `read_skill_file` with `path="references/style-and-prompt.md"`. Build the keyframe prompt from its templates, filling every placeholder with what you observed in step 1. Then call `generate_image` with `model='i2i.hd.lite'`, `input_urls=[uploaded photo]`, `orientation='portrait'`, a short `name` (e.g. `Halloween Keyframe`), and `entity_type='storyboard_images'`. Use `model='t2i'` only when the user explicitly wants a text-only scene with no photo. Run the identity check from the reference file; if the face or outfit drifted, regenerate once with a stronger identity clause before moving on.

4. **Confirm the keyframe is right.** Show the still. If the user only asked for an image, stop here. Otherwise continue without an extra confirmation round unless they ask to approve first.

5. **Write this request's script.** Call `read_skill_file` with `path="references/video-script.md"`, then write a complete script for *this* request — logline, total duration, beat-by-beat breakdown with shot size, camera movement, subject action, light and atmosphere, the final scare, transitions, and the must-keep / must-not-show lists. Fill it with the user's own wording (mood, length preference, scare type) and what you saw in their photo. A generic template is not a finished script; do not skip this step.

6. **Read the video constraints and build the prompt.** Call `read_skill_file` with `path="references/video-content-constraints.md"` and compress the step-5 script into a single English video prompt under its rules. Then call `generate_video` with `model='i2v'`, `input_urls=[keyframe]`, `orientation='portrait'`, a short `name` (e.g. `Don't Look Back`), and `entity_type='final_videos'`. Pass `duration` only within the range the tool accepts (one s