본문으로 건너뛰기
cccskills
무료GitHub에 공개한국어 소개

StoryFilm

마크다운 이야기를 장면별 그림과 내레이션이 있는 애니메이션 영상으로 만듭니다. 인물과 배경의 모습을 일관되게 유지하고, 음성에 맞춘 자막과 장면 전환을 더한 뒤 완성 영상을 확인합니다.

원문원문 설명 보기

Turns a story markdown file into a narrated animated film, a new reading format where the listener is read to and sees the story as it is told: beats from paragraphs, a bible so every character and place looks the same in every shot, one painting per beat in one style, Fish Audio narration in the story's voice with word timings, a HyperFrames film with camera moves, dissolves, scene breaks, a caption line and title cards, read back and verified. USE WHEN animated reading, story film, film this story, animate this story, illustrated audiobook, narrated story video, turn this story into a movie, storyboard this story, paint the shots, render the story film. NOT FOR the principal's own recordings, argument-first video essays, one-off motion graphics (Remotion), single illustrations (Art), writing the story itself (WriteStory).

danielmiessler/LifeOS스타 19,635(GitHub 19,635 + cccskills 0)

실행 점수 미검증

설치 방법 보기

이럴 때 유용합니다

  • 이야기를 그림과 내레이션이 있는 영상으로 만들기
  • 소설을 내레이션 영상으로 제작하기
  • 장면별 스토리보드 만들기
  • 여러 장면에서 인물의 모습을 일관되게 유지하기

한국어 소개

할 수 있는 일

StoryFilm은 마크다운 형식의 이야기를 내레이션과 화면이 결합된 애니메이션 영상으로 만듭니다. 글에서 장면 단위를 나누고, 인물과 장소의 모습을 일관되게 유지할 설정 자료를 준비한 뒤 각 장면마다 그림 한 장을 제작합니다. Fish Audio로 이야기의 분위기에 맞는 내레이션을 만들고, 음성에 맞춘 자막과 카메라 움직임, 장면 전환, 제목 카드를 영상에 포함합니다. 완성된 영상은 다시 확인해 그림이나 자막, 음성이 어긋나는 부분이 있는지 살펴봅니다. 제작 전에 스토리보드를 검토하거나 처음부터 끝까지 이어서 진행하도록 요청할 수 있습니다.

이럴 때 유용합니다

이야기를 읽는 대신 그림을 보며 들을 수 있는 영상으로 만들고 싶을 때 유용합니다. 장면마다 그림을 만들면서 인물의 외모와 전체 화풍을 일관되게 유지하고 싶은 경우에도 사용할 수 있습니다.

사용 예시

  • “이 이야기 파일을 애니메이션 영상으로 만들어 주세요.”
  • “12번 장면이 식당처럼 보이니 그림을 수정해 주세요.”
  • “인물의 나이와 얼굴 설정을 고친 뒤 해당 장면을 다시 그려 주세요.”

주의 사항

처음 설정할 때 Fish Audio와 Google의 키, ffmpeg 같은 도구가 필요합니다.

이 소개문은 공개된 SKILL.md를 바탕으로 AI(OpenAI Codex)가 작성했습니다. 정확한 사양은 아래 원문을 확인하세요.

문서 점검

AI가 SKILL.md의 내용에서 주의가 필요한 작업과 도입 전제를 확인했습니다. 점수는 실제로 실행한 결과(실행 검증)만으로 매깁니다.

안전성전송·삭제·명령 실행 등을 명시하고 있는가
A양호업로드나 게시 경로가 없으며, 평가 통과 후 명시적인 전달 명령을 실행해야 합니다.
도입의 용이성필요한 도구나 API 키가 적고 적혀 있는가
B일부 부족Fish Audio와 Google 키, `ffmpeg`가 필요하며 설정 안내 파일로 `Setup.md`가 제시됩니다.

점수에는 넣지 않았습니다. 2026년 10월 28일 기준으로 AI(OpenAI Codex)가 판정했습니다. 참고용이므로 설치 전에 원문도 확인해 주세요.

평가가 다르다고 생각되면 재검토를 요청하기

어느 항목이 왜 다르다고 생각하는지 적어 주세요. 로그인은 필요 없습니다. SKILL.md와 대조해 평가를 다시 만들고 이곳에 반영합니다.

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

포함된 파일(26)

  • SKILL.md7.8 KB
  • Intents/Full.md4.7 KB
  • Intents/Produce.md10.8 KB
  • Intents/Storyboard.md4.6 KB
  • References/StoryboardSchema.md2.0 KB
  • Setup.md4.7 KB
  • Tools/.gitignore14 B
  • Tools/Build.ts6.6 KB
  • Tools/bun.lock9.1 KB
  • Tools/Characters.ts5.0 KB
  • Tools/FilmComposition.ts8.0 KB
  • Tools/FilmRuntime.ts4.2 KB
  • Tools/FilmTimeline.ts12.7 KB
  • Tools/Intake.ts5.0 KB
  • Tools/Lib.ts16.8 KB
  • Tools/Motion.ts3.0 KB
  • Tools/Narrate.ts22.8 KB
  • Tools/package.json642 B
  • Tools/Paint.ts10.2 KB
  • Tools/Run.ts11.2 KB
  • Tools/SerifFont.ts6.8 KB
  • Tools/Setup.ts3.1 KB
  • Tools/Shots.ts5.4 KB
  • Tools/StoryboardLint.ts4.9 KB
  • Tools/tsconfig.json400 B
  • Tools/Verify.ts24.0 KB

SKILL.md(원문)

설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.

StoryFilm

A story goes in; a verified film of it comes out. One creative stage (the storyboard) and a deterministic tail (bible, shots, narration, render, verification, critique, delivery).

Ideal State

  • A story file becomes a film a viewer accepts as one made thing: the same faces first frame to last, each painting fitting its beat, the caption in step with the voice.
  • Every film is read back before anyone sees it: Out/verify.json green and complete, the Assay video eval set (video-eval) passed in the verify stage as Intents/Produce.md declares it, the review sheets looked at, and the ArtDirection critique passed on the exact bytes delivered.
  • Nothing reaches the principal as a first draft: the film and its sheets land in the downloads folder only through Run.ts --deliver, after a passing critique and a Proof receipt.
  • Expensive stages run once per change: the storyboard is reviewed and linted before any painting, and every later stage is hash-cached so an edit redoes only what it touched.
  • Nothing leaves review: the skill has no upload or publish path.

Intent Routing

IntentTriggerFile
Full"film this story", "animated reading of X", "turn this story into a movie", anything that starts from a story fileIntents/Full.md
Storyboard"storyboard this", "write the bible", "plan the shots", a redo of the creative stage after intakeIntents/Storyboard.md
Produce"paint the shots", "render it", "re-render after an edit", "verify the film"Intents/Produce.md
FileRead when
References/StoryboardSchema.mdwriting or editing Storyboard.json
ISA.mdchanging what the skill does: its ideal state, criteria and decisions
Setup.mdfirst-time setup: Fish Audio and Google keys, ffmpeg and the other programs, optional Config.json

Full is Intake → Storyboard → Produce. The storyboard is the review checkpoint when the principal wants one: it is cheap to change and forty paintings are not. Skip it by saying so ("straight through").

Run Layout

<run>/
  run.json  Beats.json  Storyboard.json  pronunciations.json (optional)
  Bible/<id>.<hash>.png        style plate + reference sheets
  Shots/<beat>.<hash>.png      one painting per beat · contact-sheet.png
  Narration/<beat>.<hash>.{mp3,align.json,wav}  narration.wav  timeline.json
  Out/composition/             the HyperFrames project Build.ts writes (index.html, plan.js, film.js, shots/, narration.wav)
  Out/film.mp4  render.json  render.log  verify.json  Critique.json  frames/  caption-check/  review/{contact-sheet,motion-strip}.png

Data & Config

First-time setup (accounts, keys, files to fill in): Setup.md.

  • Voice: --voice, else the story's audio_voice frontmatter, else the DA's main voice from LIFEOS_CONFIG.toml. The value is a role (main, presenter, principal), fish:<reference id>, or the voice_id of a [da.voices.*] profile that has a fish_reference_id; any other id stops with an error naming where to add one. Narration is Fish Audio Drama 3 (FishTTS.ts) and takes no model flag; the DA's own voice reads at its configured fish_speed, any other voice at natural pace. Key: FISH_API_KEY in the env file; the principal role also needs FISH_PRINCIPAL_VOICE_ID.
  • Images: the geminiImage lane in LIFEOS/TOOLS/models.ts on GOOGLE_API_KEY, 16:9 at 2K, reference images attached per shot.
  • LIFEOS/USER/CUSTOMIZATIONS/SKILLS/StoryFilm/Config.json: runsRoot (default ~/StoryFilms; LIFEOS_STORYFILM_DIR overrides), fonts.serif / fonts.serifItalic (paths to licensed faces; path.ttc#<index> names one face of a collection), embedded into each composition as @font-face data. No font configured means the default serif, Source Serif 4 roman and italic (SIL Open Font License), installed by Setup.ts as the pinned @fontsource/source-serif-4 dependency.
  • LIFEOS/USER/CUSTOMIZATIONS/SKILLS/StoryFilm/PREFERENCES.md: the principal's casting and register taste for the Storyboard intent. Config.json provingRun names the run slug the skill ISA's proving-run checks use (Setup.ts --proving-run prints it).
  • Pronunciations: USER/PRINCIPAL/PRONUNCIATIONS.json plus a per-run pronunciations.json, applied to spoken text only; the caption shows the story's words.
  • Run.ts refuses a run dir under the config tree or the user-data repo (symlinks dereferenced first).

Gotchas

  • The image model copies whatever is in the style plate, including things that are not style (2026-09-17, first run). A violet dot in the plate put a stray bead on a character sheet. Keep the plate's subject empty (the prompt asks for an empty interior) and say in each bible desc what the character must NOT carry.
  • The story file can change under a run. Intake reads the frontmatter once; a voice or prose edit in the source after intake is invisible until Intake.ts runs again (2026-09-17: the narrator was re-cast in the story file after the first intake, and the first film went out in the old voice). Re-run Intake before any re-narration and diff the beat count.
  • bun test <bare path> drops child-process output (Bun 1.3.6). Always bun test ./skills/StoryFilm/Tools.

Examples

Example 1: a story file to a film

User: "Turn the story at stories/the-lighthouse.md into an animated reading"
→ Full: Intake writes Beats.json; the Storyboard intent writes the bible and one shot per beat; lint exits 0
→ Run.ts: bible painted, shots painted (4 at a time, cached by hash), narration synthesized, film rendered, verify.json green, review sheets written
→ ArtDirection critique of Out/film.mp4 passes into Out/Critique.json; Run.ts --from sheet --deliver lands the film and sheets in the downloads folder

Example 2: one painting is wrong

User: "The kitchen in beat 12 looks like a restaurant — fix it"
→ Edit that shot's prompt in Storyboard.json (and the place's bible desc if the sheet is the problem)
→ Run.ts --from lint --to shots repaints that one beat (everything else is cached); Run.ts --from build re-renders and re-verifies

Example 3: a character drifts

User: "Ana looks forty in half the shots"
→ Tighten her bible desc (age, face), Characters.ts --only ana repaints her sheet, Shots.ts --force repaints the shots that carry her ref (their hash changed with the sheet)

리뷰

아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.

댓글

로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.

아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.

보내면 바로 공개됩니다. 이메일 주소나 전화번호 같은 개인 정보는 쓰지 마세요. URL은 2개까지입니다.

0 / 1,000자

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

같은 저장소의 스킬

AnnualReports

무료요약 있음

여러 업체와 공공기관의 사이버 보안 보고서를 검색하고 가져와 위협, 랜섬웨어, 침해 통계 등의 추세를 비교합니다. 분석에는 출처별 업체, 연도, 보고서를 표시하고 자료 간 차이도 따로 다룹니다.

  • 분류별 위협 보고서를 찾을 때
  • 특정 업체의 보고서를 가져올 때
  • 여러 업체의 랜섬웨어 동향을 비교할 때
danielmiessler/LifeOS2만2026년 10월 28일 업데이트

ApertureOscillation

무료요약 있음

기능이나 구성 요소 자체의 설계 요구와 시스템 전체의 목표를 세 단계로 비교합니다. 설계상의 충돌과 적절한 구현 범위를 정리하고, 제안한 설계가 전체 방향과 맞는지 평가합니다.

  • 서비스나 라이브러리를 분리할지 판단하기
  • 기능 요구와 제품 방향 비교하기
  • 새 구성 요소와 기존 시스템의 정합성 확인하기
danielmiessler/LifeOS2만2026년 10월 28일 업데이트

Aphorisms

무료요약 있음

글의 주제에 맞는 격언과 인용문을 찾아 저자와 선정 이유를 함께 제안합니다. 출처가 있는 인용문을 추가하고, 사상가의 말을 주제별로 조사하며, 사용 기록을 관리해 같은 인용문을 반복하지 않도록 돕습니다.

  • 뉴스레터에 어울리는 인용문 찾기
  • 출처와 함께 중복 없이 인용문 저장하기
  • 주제별로 사상가의 말 조사하기
danielmiessler/LifeOS2만2026년 10월 28일 업데이트

Art

무료요약 있음

블로그 삽화, 기술 도표, 비교 그림, 만화, 아이콘 등을 용도에 맞는 절차로 제작합니다. 구도와 색상, 이미지 모델을 정하고 검토용 이미지를 출력합니다.

  • 블로그 제목 이미지를 만들 때
  • 시스템 구조를 그림으로 설명할 때
  • 비교나 연대표를 시각화할 때
danielmiessler/LifeOS2만2026년 10월 28일 업데이트

ArtDirection

무료요약 있음

브리프와 제작 기준에 따라 이미지, 영상, 슬라이드, 사이트 화면 캡처의 시각 품질을 평가합니다. 두 비전 심사자가 점수와 결함 우선순위를 제시하고, 정해진 횟수 안에서 수정을 돕습니다. 평가를 통과한 결과물만 전달할 수 있으며, 사람의 점수와 의견은 별도 기록해 심사 보정에 활용합니다.

  • 이미지 수정 항목의 우선순위 정리
  • 기준에 따라 영상이나 슬라이드 평가
  • 공개 전 시각 품질 점검
danielmiessler/LifeOS2만2026년 10월 28일 업데이트

ArXiv

무료요약 있음

주제, 연구 분야, 논문 ID로 arXiv 논문을 찾고 제목, 저자, 초록, 링크를 정리합니다. 새 논문을 확인하고, 제공되는 경우 AlphaXiv의 AI 생성 개요도 가져옵니다.

  • AI·머신러닝 분야의 새 논문 확인
  • 특정 주제의 논문 검색
  • 논문 ID나 arXiv 주소로 조회
danielmiessler/LifeOS2만2026년 10월 28일 업데이트

danielmiessler의 스킬 모두 보기

이 스킬의 문제 신고