agentsclimarketplace

Reel restyle

Skill puntorigen/avatar-skills/reel-restyle

Cloud-based agent skills for creating AI avatar talking-head videos and short-form reels (skills.sh format)

Install
npx -y skills add puntorigen/avatar-skills --skill reel-restyle

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

2 things to look at

  • 28 days oldThe repository was created 28 days ago. New is not bad, but a brand new repository carrying a familiar-sounding name is the shape a typosquat arrives in, and there has been no time for anyone else to find a problem with it.
  • 1 stars1 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

What its author says it does

Copied from the file, not written here

Analyze ONE avatar's reels and re-apply their style to a DIFFERENT avatar. Distills a script-agnostic reel TEMPLATE from a reference avatar's existing video-scene-analysis (scene/beat sequence, talking-head vs B-roll pattern, per-beat camera angle, cut/zoom transitions, SFX placement, caption style and proportional pacing), then applies that template to a NEW avatar given only a picture + a voice sample + a script -- auto-scaffolding the new avatar's camera-angle stills, cloned voice, talking profile and copied caption/transition styles, and drafting a composer-ready storyboard. Use when the user wants to reuse one avatar's reel style/structure (e.g. "make a reel for this new person in lolo's style", "same camera angles, transitions, SFX and timing but a different face/voice/script", cross-avatar style transfer, reel templates).

SKILL.md

6.8 KB, ~1.5k tokens by cl100k_base, as published. Nobody here has run it

Reel Restyle (cross-avatar style transfer)

Take a reference avatar that has already been analyzed (e.g. lolo, with *.analysis.json + transition_style.json + subtitle_style.json), capture the style and structure of its reels as a reusable template, and re-apply that template to a brand-new avatar supplied as just a picture + voice sample + script.

The new reel reuses the reference's scene/beat sequence, talking-head vs B-roll pattern, per-beat camera angle, transitions, SFX placement, caption style and proportional pacing -- but with the new avatar's face, location, cloned voice and a different script. Actual scene durations are not copied (a different script has its own rhythm); they fall out of the new narration's word alignment, exactly like avatar-reel-composer's single-narration / hard-cut pipeline.

This skill is an orchestrator: it delegates to video-scene-analysis (already produces the analysis), avatar-camera-angles, voice-clone and avatar-reel-composer.

Output location. scaffold_avatar.py creates a bare avatar name under ./avatares/<name>/ (so new avatars never clutter the project root); pass an explicit path to override, or set AVATARES_ROOT.

Pipeline

extract_template.py   reference *.analysis.json (+ style files) -> reel_template.json
        |
apply_template.py  ───┐
        ├─ scaffold_avatar.py   picture + voice -> <new>/{scene.json, angles/, voices/,
        |                        talking_profile.json, transition_style.json, subtitle_style.json}
        |     [AGENT] write scene.json + talking_profile.json from the picture (vision)
        ├─ generate_storyboard.py   template + script -> <new>/<slug>.storyboard.json
        |     [AGENT] refine the text split + AUTHOR each B-roll for the new topic
        └─ avatar-reel-composer/compose_reel.py  --finish  -> final.mp4

Two steps need the agent (the orchestrator stops with precise instructions and resumes on re-run, like create_avatar.py):

  1. Describe the new avatar from its picture: write scene.json (subject/wardrobe/scene/light, per avatar-camera-angles) and talking_profile.json (video_prompt for the NEW person -- a different identity -- seeded with the template's delivery_style_seed).
  2. Refine the storyboard: tune each scene.text split and replace every placeholder TODO B-roll broll_description/broll_action with content for the new topic.

Quick start

# 0) Make sure the reference avatar is analyzed + enriched (run once, per the
#    video-scene-analysis SKILL / create_avatar.py). Then extract the template:
python3 .cursor/skills/reel-restyle/scripts/extract_template.py \
    lolo/videos/2026-06-08_15-02-03.analysis.json --avatar-dir lolo \
    -o lolo/reel_template.json

# 1) Apply it to a new avatar (scaffold + draft storyboard, stops for review):
python3 .cursor/skills/reel-restyle/scripts/apply_template.py mara \
    --template lolo/reel_template.json \
    --picture refs/mara.png --voice samples/mara.wav --script mara_script.txt

#    -> writes mara/scene.json + mara/talking_profile.json checkpoint instructions;
#       after you author those, re-run the same command to generate angles + clone
#       voice + draft mara/<slug>.storyboard.json.

# 2) Review the storyboard (text split + author the TODO B-roll), then compose:
python3 .cursor/skills/reel-restyle/scripts/apply_template.py mara \
    --template lolo/reel_template.json \
    --picture refs/mara.png --voice samples/mara.wav --script mara_script.txt \
    --compose --finish

# Inspect readiness at any time:
python3 .cursor/skills/reel-restyle/scripts/apply_template.py mara \
    --template lolo/reel_template.json --status

# 16:9 YouTube instead of 9:16: add --format landscape (scaffolds _169.png angles
# and drafts a landscape storyboard). Everything else is identical.
python3 .cursor/skills/reel-restyle/scripts/apply_template.py mara \
    --template lolo/reel_template.json --format landscape \
    --picture refs/mara.png --voice samples/mara.wav --script mara_script.txt

You can also run the steps individually (extract_template.py, scaffold_avatar.py, generate_storyboard.py, then compose_reel.py).

Output format. --format reel (default) makes a 9:16 vertical reel; --format landscape makes a 16:9 YouTube video. The format flows through scaffolding (which angle crop to generate: _916.png vs _169.png), the storyboard and the composer — no other changes needed.

What transfers vs. what is authored fresh

Transfers from the reference (template)Authored fresh for the new reel
Beat count + talking-head/B-roll sequenceThe script (verbatim narration)
Per-beat camera angle + framing -> new avatar's angle stillsThe new avatar's identity (scene.json, talking_profile.json)
Per-beat motion / zoom_from_previous + emphasisB-roll content (broll_description/broll_action) per beat
Transition style (transition_style.json)Music prompt (mood transfers; tailor the prompt)
SFX placement + densityExact scene durations (derived from the new narration)
Caption style (subtitle_style.json) + proportional pacing (dur_weight)The semantic text split across beats (draft is proportional; refine it)

Requirements

The reference avatar must already be analyzed and enriched by video-scene-analysis (talking-head scenes need camera.angle; the reel needs an avatar_profile). Install the sibling skills' requirements (see scripts/requirements.txt). Generation costs apply (gpt-image-2 for angles, MiniMax for voice/TTS, p-video for talking-head + B-roll).

See REFERENCE.md for the reel_template.json schema, the camera angle mapping table, the scaffold stage machine and the storyboard contract.

What ships with it: 9 files

75.3 KB alongside SKILL.md, 6 of them executable

Keep looking

Skills are one crate of 328,083. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.