Przejdź do treści
Biblioteka skilli
Marketing i treści · Budowanie i kod

producing-animated-episodes

/producing-animated-episodes

Tworzy narrowane lub udźwiękowione animowane odcinki z powracającymi postaciami (anime, kreskówka, komiks, krótkie historie o znajomych lub rodzinie) ze zdjęć, eksportu czatu, pomysłu lub scenariusza.

Repozytorium
claude-skills ↗
Licencja
MIT
Ostatnia zmiana repozytorium
27.10.2026

Ocena i bezpieczeństwo

100/ 100Klasa: dobry
Format25 / 25
Frontmatter z nazwą i opisem, poprawna nazwa, opis do 1024 znaków, nazwa zgodna z folderem.
Odkrywalność25 / 25
Opis mówi, kiedy użyć skilla, ma sensowną długość i jest w 3. osobie.
Treść35 / 35
Co najmniej 150 słów i do 500 linii, nagłówki, listy kroków, przykłady albo kod.
Higiena15 / 15
Bez zaślepek typu TODO, bez ścieżek Windows, z licencją.
Ryzykobrak sygnałów w skanie
Pliki w paczce
30
Skrypty
18
Komentarze HTML
0
Adresy URL w SKILL.md
0
Przestarzałość

Brak sygnałów. Repozytorium zmienione 27.10.2026, bez odwołań do wycofanych modeli i API.

Licencja

MIT, otwarta: można używać i zmieniać, z zachowaniem informacji o autorze.

Co sprawdzić przed instalacją
  • 18 skryptów w paczce. Przejrzyj je przed instalacją, bo Claude może je uruchomić.

Skrypty: engine/audio.py, engine/config.py, engine/demo.py, engine/episode.py, engine/frames.py, engine/generate.py, engine/lipsync.py, engine/render.py, engine/textlayers.py, engine/timeline.py, tests/conftest.py, tests/test_audio.py, tests/test_config_timeline.py, tests/test_generate.py, tests/test_layers_frames.py, tests/test_lipsync.py, tests/test_render.py, tests/test_smoke.py

Co robi i kiedy

Tworzy narrowane lub udźwiękowione animowane odcinki z powracającymi postaciami (anime, kreskówka, komiks, krótkie historie o znajomych lub rodzinie) ze zdjęć, eksportu czatu, pomysłu lub scenariusza.

Oryginalny opis (EN)

Use when making a narrated or voiced animated video with recurring characters - an anime, cartoon or comic episode, a short for a group chat, a story video about friends, family, a class or a team - from photos, a chat export, a story idea or a script, in any visual style, Hebrew/RTL or English. Also use when such a video has subtitles or cards too fast to read, music stopping early, the ending cut off, lines buried under music, mouths out of sync, a gesture before its line, or one face bigger than the others in a group shot.

Jak działa

  1. Overview
  2. The pipeline and its gates
  3. Writing the script
  4. episode.json in one screen
  5. Building and reviewing
  6. Working with the human
  7. When something looks wrong
  8. Related skills
Sekcje z nagłówków SKILL.md, w oryginale · 106 linii, 1 456 słów
Podgląd SKILL.md
---
name: producing-animated-episodes
description: Use when making a narrated or voiced animated video with recurring characters - an anime, cartoon or comic episode, a short for a group chat, a story video about friends, family, a class or a team - from photos, a chat export, a story idea or a script, in any visual style, Hebrew/RTL or English. Also use when such a video has subtitles or cards too fast to read, music stopping early, the ending cut off, lines buried under music, mouths out of sync, a gesture before its line, or one face bigger than the others in a group shot.
---

# Producing animated episodes

## Overview

A vertical, voiced, subtitled, animated episode: character art, panels, cloned or library voices, music, image-to-video clips and lip-sync, cut by an engine that times every shot from the real dialogue audio. One `episode.json` holds the whole project, and `engine/episode.py` runs every phase from it. The sibling skills do the provider work.

**Use the engine; don't write your own edit scripts.** Timeline, overlays, subtitles, right-to-left text, the mix, durations and lip-sync joins are already in `engine/`. It was proven by rebuilding a real 3.5-minute episode: identical frames, identical audio, and the exact length the original had missed. A hand-written edit rediscovers every bug in `references/troubleshooting.md`.

**The audio is the master.** Shot lengths, subtitle times and lip-sync parts come from the finished dialogue files. Never estimate a timing from text.

**You can't watch or hear.** You check frames, durations and numbers. The human judges likeness, voices, pronunciation, timing and jokes. Plan their gates and keep them.

**Requires:**
- These skills next to this one: image-generation, elevenlabs-tts, generating-video-clips.
- Python 3 with `pip install -r <this-skill-dir>/requirements.txt` (Pillow built with RAQM, numpy; OpenCV optional).
- ffmpeg 7 or newer.
- Fonts: styles and subtitles name font keys (`bold`, `hblack`, `black` in the example) that `fonts` maps to installed `.ttf` files. For Hebrew and Latin, Rubik and Heebo (free, Google Fonts) work well; `check` blocks on a missing one.
- Keys in env vars, set in every shell that runs the engine: `OPENAI_IMAGE_API_KEY`, `ELEVENLABS_API_KEY`, `GEMINI_API_KEY`, `FAL_KEY`.

To see the whole pipeline work with no API calls, run `python3 <this-skill-dir>/engine/episode.py /tmp demo`, then `check` and `build` the demo project it creates.

## The pipeline and its gates

Every gate is a stop: send the artifact, ask, wait. Commands are `python3 <this-skill-dir>/engine/episode.py PROJECT <command>`. Costs measured 2026-10.

| # | Phase | Command | Gate (the human) | Cost |
|---|---|---|---|---|
| 1 | Story and script | `script.md` from `templates/script.template.md` | the script, and every sensitive topic | - |
| 2 | Character bible | `templates/characters.template.md`, then `characters` in episode.json | - | - |
| 3 | Faces, cards, promote | `chars face`, `chars card key=face.png`, `chars final keys` | likeness, on one sheet of all cards | ~$0.30 per character |
| 4 | Panels | `panels draft`, then `panels final ids` | every panel, on a sheet | ~$0.30 per panel |
| 5 | Voices | one sample per voice (elevenlabs-tts) | every voice, by ear, before the batch | cents |
| 6 | Lines | `lines` | the set by ear, with timestamps; names A/B | cents to a few $ |
| 7 | Music and SFX | `sound` | the music | cents |
| 8 | **Animatic** | `build` (no clips yet: stills with camera moves) | **pace and order, before any video spend** | free |
| 9 | Animation | `animate`, sheets, retakes with `animate S --takes 2` + `animate pick S K` | motion, from sheets | ~$0.10 per second of clip, per take |
| 10 | Lip-sync | `lipsync prep`, face points in config, `lipsync run` | spot-check frames | ~$0.13 per second |
| 11 | Edit and deliver | `build`, `sheet`, `deliver` | the human watches the mp4 | free |

Commands, inputs, outputs and failure handling for each phase: `references/pipeline.md`.

## Writing the script

Rules that held up (details and a worked example: `references/script-writing.md`):
- **A hook in the first 3-4 seconds** (a cold open on the problem), then the title. Under 30 seconds, put the title and end card as overlays on story shots and skip the montage.
- **Every recurring character speaks at least once.** An intro montage, one word each in their own voice at about 1.2-1.5 s per card, is cheap and loved.
- **On-screen text must be readable:** about 0.8 s plus 0.06 s per character; 1.2-1.5 s for a short card; 4-6 s for a final caption. Give cards a `mindur`.
- **Plant clues early and pay them off.** Callbacks to a group's real running jokes land hardest.
- **Sensitive topics are the user's call.** List every private detail you'd like to use (health, money, relationships, family, fights), ask about each, and use only what they confirm.
- **Lines of 12 words or fewer, numbers in words.** On-screen text stays in normal spelling; pronunciation fixes go in `pronounce`.
- **Music and sound effects, even for narration.** At least one music bed and a few effects (whooshes on cuts, a hit on the reveal); a silent bed sounds unfinished.

## episode.json in one screen

`templates/episode.example.json` is a complete small episode; every key is in `references/config-schema.md`. The parts you edit most:
- `characters`: display name, color, voice, and the prompt fields from the character bible.
- `speakers`: voices that are never drawn, such as a narrator (`{"display": null, "voice": "<id>"}` gives subtitles without a name).
- `lines`: id, speaker, text with audio tags; `trim` and `level` on one-word lines.
- `shots`: image, lines (`"02-3@-0.4"` overlaps the previous line), pads, `mindur`, camera, fx, sfx, overlays, clip offset and speed.
- `music_cues`: `[cue, from shot, to shot, volume, offset]`. The build warns when a cue is shorter than its window.
- `lipsync`: which shots, which lines to skip, one face point per part.
- `prompts`: override `char_style` and `panel_style` for a different look (3D cartoon, watercolor, photoreal).

## Building and reviewing

- **Batch the fixes.** A full build takes minutes. Collect every note from a review round (a line take, a pad, a clip offset), apply them all, then rebuild once.
- **Segments are cached and tracked.** `build` re-renders exactly the shots whose inputs changed: a new clip or lip-synced version, a promoted panel, an edited line, shot or style. `build --only S05,S06` forces those shots; `--force` re-renders everything.
- **A lip-synced shot is redone after any change to its clip, offset, speed or lines:** `lipsync prep S05 && lipsync run S05`. Until then the build warns it is stale and uses the raw clip.
- **Regenerating an existing asset needs `--force`** (`sound theme --force`, `animate S05 --force`); without it, existing files are kept and only gaps are filled.
- **Review with sheets.** `sheet` puts 3 frames per shot on a page. When the human names a moment by time, extract and read those frames before answering (`ffmpeg -ss T -i build/<output>.mp4 -frames:v 1 f.jpg`).
- **`check` before every build:** missing assets, keys, sibling skills, and overlay text wider than the frame.
- **Durations are verified at the end of every build.** Audio shorter than video fails the build instead of cutting the ending.
- **Before sending:** `references/qa-checklist.md`.

## Working with the human

- Send every artifact with your file-sending tool and offer to reveal it in Finder; don't just print a path. The final step is `deliver` and sending that file.
- For audio, say what to listen for and where ("at 0:41, does Dani's name sound right?"). Never claim you heard it.
- Pronunciation and voice choices are theirs: A/B files with timestamps (elevenlabs-tts).
- Before each paid phase, give the cost estimate; after it, the running total.

## When something looks wrong

| Symptom | Fix |
|---|---|
| Cards or captions too fast to read | raise `mindur` / `post`: ~1.2-1.5 s per short card, 4-6 s for the final caption |
| A title clipped at both edges | `check` warns; lower the style's `size` or add `wrap` |
| Music stops before the section ends | the build warned: raise the cue's `seconds`, `sound <cue> --force`; or split the section into two cues |
| The ending is cut off | can't happen with the engine (exact-length mix, duration check); in hand-made muxes, see deck-to-video |
| A line is buried under music | `level_clips.py --report` on that line, then a firmer take; lower that cue's volume |
| A character points or acts before their line | `clip_off` past it, or split the shot and crop the first part with `clip_cam` |
| Mouths don't move with the words | lip-sync phase; if the wrong mouth moves, fix its face point |
| One face bigger in the group shot | install OpenCV (faces are equalized), or `mirror` a card whose prop covers a neighbor |
| Hebrew renders reversed or unjoined | Pillow without RAQM: `check` says how to fix it |
| A name or loanword mispronounced | a `pronounce` entry, A/B by ear |

More, with causes: `references/troubleshooting.md`.

## Related skills

- [image-generation](../image-generation): character cards and panels ("Recurring characters and story panels").
- [elevenlabs-tts](../elevenlabs-tts): voices, one-word lines, pronunciation, music and SFX.
- [generating-video-clips](../generating-video-clips): clips, take sheets, lip-sync.
- [deck-to-video](../deck-to-video): the same ffmpeg lessons for slide videos.
Pliki w paczce (30)
  • .gitignore 1 KB
  • README.md 4 KB
  • SKILL.md 9 KB
  • requirements.txt 1 KB
  • engine/audio.py 6 KB
  • engine/config.py 10 KB
  • engine/demo.py 3 KB
  • engine/episode.py 13 KB
  • engine/frames.py 7 KB
  • engine/generate.py 18 KB
  • engine/lipsync.py 10 KB
  • engine/render.py 13 KB
  • engine/textlayers.py 8 KB
  • engine/timeline.py 3 KB
  • references/config-schema.md 11 KB
  • references/pipeline.md 9 KB
  • references/qa-checklist.md 1 KB
  • references/script-writing.md 4 KB
  • references/troubleshooting.md 5 KB
  • templates/characters.template.md 1 KB
  • templates/episode.example.json 5 KB
  • templates/script.template.md 1 KB
  • tests/conftest.py 2 KB
  • tests/test_audio.py 4 KB
  • tests/test_config_timeline.py 4 KB
  • tests/test_generate.py 10 KB
  • tests/test_layers_frames.py 6 KB
  • tests/test_lipsync.py 5 KB
  • tests/test_render.py 7 KB
  • tests/test_smoke.py 3 KB

Wersje

W bazie nie ma innych skilli o nazwie producing-animated-episodes.

Migawka bazy z 28.10.2026 · wersja paczki a1b510251940 (skrót SHA-256 całej paczki)

Pobrania w ostatnich 30 dniach: 0 · ranking

Zgłoś problem z tym skillem: szkodliwa treść, błędny opis albo prośba autora o usunięcie.

Podobne skille

  • 100transferring-video-styles
    Zamienia nagrania z aktorami w style artystyczne, takie jak komiks, anime, manga czy kreskówka 3D.
  • 90generating-cartoon-videos
    Generuje wideo kreskówkowe dla produktu: rysowany spot animowany, anime lub malowany, w jednym stylu i z tymi samymi postaciami w każdym cięciu, z produktem zachowanym wiernie lub narysowanym.
  • 100animation-studio
    Tworzy animowane wideo z muzyką: krótkie kreskówki, filmy wyjaśniające z lektorem, filmy promocyjne, Reels, TikToki, lyric video, animowane mapy i infografiki.
  • 100demo-video
    Tworzy i poprawia zmontowane filmy w Remotion: dema produktów, narrowane przeglądy ekranu, animowane objaśnienia i krótkie prezentacje z nagrań przeglądarki, z opcjonalnym lektorem, napisami i muzyką.
  • 95anime-animation-production
    Planuje ujęcia, ruch i rytm cięć w animacji 2D w stylu anime i mangi, a potem pilnuje postaci i stylu między ujęciami.
  • 100comic-strip
    Pisze komiks w formacie studia Comic Chat i zwraca link otwierający go w edytorze, do wpisu blogowego, slajdu, changelogu, README lub podsumowania.

Uwagi i zgłoszenia

Wiadomość trafi do Bartosza Sokolińskiego. Adres e-mail jest potrzebny tylko do odpowiedzi. Szczegóły w polityce prywatności.