Communitygithub.com

lhaovo/short-video-skills

为视频生成准备可用的图——把资产清单变成能直接喂给图生视频的素材:排生产顺序、定资产级别、出候选图、做一致性验收、按编号落盘、回写清单状态。支持三种来源:实拍、AI 生成、官方素材,不强制实拍。

short-video-skills란 무엇인가요?

이 스킬은 비디오 생성을 위한 이미지 자산을 준비하는 과정을 자동화합니다. 자산 목록이나 스토리보드를 입력으로 받아, 일관성 있는 이미지(캐릭터, 제품, 배경 등)를 생성하고 검증한 후, 'short-video-generate' 도구가 첫 프레임으로 바로 참조할 수 있도록 파일로 저장합니다. 주요 기능은 생산 순서 결정, 자산 등급(앵커/파생/일회성) 분류, 후보 이미지 생성, 일관성 검증(기하학, 인쇄 등 7가지 항목), 번호 기반 파일 저장, 목록 상태 업데이트 등입니다. 실사 촬영, AI 생성, 공식 소재 등 세 가지 소스를 지원하며, 실사를 강제하지 않습니다. 이 스킬은 이미지 생성과 검증에만 집중하며, 스토리보드 작성이나 비디오 직접 생성을 수행하지 않습니다.

지원 대상~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/lhaovo/short-video-skills/tree/HEAD/short-video-assets

즐겨 사용하는 AI에게 물어보기

이 에이전트 스킬이 미리 로드된 새 채팅을 엽니다.

문서

자산 준비대 (Asset Preparation Desk)

비디오 생성이 제대로 연결되려면 이 단계가 중요합니다. 해결해야 할 문제는 단 하나: 같은 사물이 모든 이미지에서 동일하게 보이도록 하는 것입니다.

입력은 자산 목록(또는 스토리보드)이고, 출력은 번호로 명명되어 short-video-generate가 첫 프레임으로 직접 참조할 수 있는 이미지 묶음입니다.

스토리보드를 작성하지 않고, 구간을 나누지 않으며, 비디오 프롬프트를 작성하지 않습니다. 또한 비디오를 생성하지 않습니다. 오직 '이미지' 부분만 담당합니다.


1. 네 가지 철칙

  1. 앵커 우선, 파생은 그 다음. 마스터 버전이 확정되지 않으면 앵글 이미지를 만들지 않습니다. 앵글 이미지는 마스터 버전을 기반으로 생성되며, 마스터가 잘못되면 전체 그룹이 잘못됩니다.
  2. 한 번에 하나의 변수만 변경. 앵글을 바꾸면 조명을 바꾸지 말고, 조명을 바꾸면 앵글을 바꾸지 마십시오. 둘을 동시에 바꾸면 문제 발생 시 원인을 파악하기 어렵습니다.
  3. 후보는 추가만, 덮어쓰지 않음. v1, v2를 모두 보관하고, 선택된 버전을 작업 지시서에 기록합니다. 생성은 확률적이므로 이전 버전을 삭제하면 퇴로가 없어집니다.
  4. 이미지와 목록은 반드시 일치해야 함. 번호가 곧 파일 이름입니다. 목록에 PR-01이 있으면 디렉토리에는 PR-01_* 파일이 있어야 합니다.

2. 자산 등급 (세 가지)

모든 이미지에 동일한 노력을 들일 가치는 없습니다. 먼저 등급을 매기고, 그에 따라 자원을 배분합니다.

등급설명예요구사항
앵커 레벨전체 영상의 정체성 기준, 여러 곳에서 참조제품 메인 이미지, 캐릭터 3면도, 주요 장면 전경가장 엄격: 다중 후보, 항목별 검증, 확정 후 변경 불가
파생 레벨앵커에서 파생된 앵글, 상태, 세부 사항제품 후면, 개봉 상태, 손 클로즈업앵커와 나란히 비교 필수
일회성한 번만 나타나며 일관성에 영향 없음빈 장면, 광효과, 전환 소재적당하면 사용, 다중 후보 불필요

등급을 잘못 매기면 낭비가 발생합니다: 빈 장면을 앵커 레벨로 처리하면 30초짜리 영상이 사흘 동안 막힐 수 있고, 제품 메인 이미지를 일회성으로 처리하면 이후 모든 구간을 다시 작업해야 합니다.


3. 소스: 세 가지 모두 가능, 용도에 따라 선택

소스사용 시기주의사항
실사 촬영실물이 있고, 정확성이 요구되며, 파라미터나 효능이 관련된 경우가장 좋지만, 소재가 있어야 함
AI 생성실물이 없거나, 가상 시나리오, 분위기, 손 동작기하학과 인쇄물 잠금, 다중 후보 생성
공식 소재브랜드에서 제공한 메인 이미지, 패키지 이미지바로 앵커로 사용, 가장 안정적

실사를 강제하지 않습니다. 순수 AI 생성 영상의 경우 전체 자산이 AI로 제작되어도 무방하며, 내부 일관성만 유지하면 됩니다.

사전에 반드시 명확히 해야 할 위험

이 영상이 시청자에게 특정 파라미터나 효능(용량, 시간, 성분, 효과)을 주장해야 하는 경우, 화면 속 제품이 AI로 생성되었다면 화면과 주장 간에 불일치가 발생합니다. 가벼우면 댓글에서 지적되고, 심하면 허위 광고가 될 수 있습니다.

처리 방법은 하나뿐입니다: 주장이 있다면 제품 화면은 실사 또는 공식 소재를 사용하고, 주장이 없고 순수 분위기 또는 가상 콘텐츠라면 AI 생성으로 충분합니다.

이 조건은 작업 시작 전에 한 번만 물어보면 되며, 완성 후에 발견되지 않도록 해야 합니다.

AI 생성 실행 방법

내장된 scripts/kie_gen.py (KIE GPT Image 2)를 사용하여 제출, 폴링, 다운로드, 명명 저장을 한 번에 수행합니다:

# 텍스트-이미지 (해상도를 지정하지 않으면 1K, 충분함)
python scripts/kie_gen.py generate --prompt "…" --ratio 9:16 \
  --out 04-소재/01-자산이미지/PR-01_제품메인이미지_v1.png

# 이미지-이미지: 앵커를 참조로 사용
python scripts/kie_gen.py generate --prompt "…" --ref PR-01_제품메인이미지_v1.png \
  --out 04-소재/01-자산이미지/S01_f01_v1.png

# 배치: JSON 작업 테이블 읽기 (기본 5개 동시 실행)
python scripts/kie_gen.py batch --tasks tasks.json --out-dir 04-소재/01-자산이미지 --dry-run
python scripts/kie_gen.py batch --tasks tasks.json --out-dir 04-소재/01-자산이미지

해상도 기본값은 1K입니다. 이 이미지들은 최종적으로 비디오 모델에 의해 리샘플링되므로, 원본을 크게 만들어도 세부 정보가 유지되지 않고 실패율만 증가합니다. 별도로 확대/크롭(예: 썸네일)하거나 흰 배경 마스터 버전을 재사용해야 하는 경우에만 --resolution 2K를 추가합니다.

배치는 기본적으로 5장을 동시에 실행합니다. 이미지 생성에는 1040초가 소요되며, 6장을 직렬로 실행하면 34분을 순수하게 기다려야 합니다. 5개의 동시 작업으로 6장을 실행하면, 총 소요 시간은 가장 느린 작업에 한 라운드가 추가된 정도입니다. 속도 제한(code != 200 또는 429)이 발생하면 --concurrency 2를 사용하고, 속도 제한 때문에 프롬프트를 변경하지 마십시오.

네 가지 규칙:

  1. 먼저 --dry-run 으로 요청 본문을 확인한 후 실제로 실행합니다. 한 번에 20장을 배치 제출할 때 파라미터가 잘못되면 20번의 낭비가 발생합니다.
  2. API 키는 환경 변수로만 (KIE_API_KEY) 전달하며, 스크립트, 작업 테이블, 작업 지시서에 기록하지 않습니다.
  3. 앵커를 먼저 생성하고 스타일을 확인한 후, 파생 이미지를 배치로 생성합니다. 앵커 레벨 자산은 동시 실행 수를 줄여 한 장씩 확인하는 것이 좋습니다.
  4. taskId를 기록하여 작업 지시서에 남기고, 나중에 동일한 이미지를 다시 생성해야 할 때 참조할 수 있습니다.

작성법, 파라미터 제한, 실패 처리에 대한 자세한 내용은 references/ai-generation.md를 참조하십시오.


4. 7단계 프로세스

1 목록 읽기 → 2 순서 정하기 → 3 등급 매기기 → 4 후보 생성 → 5 검수 → 6 저장 → 7 상태 업데이트

1단계 · 목록 읽기

02-자산목록.md에서 번호, 유형, 용도, 소스, 참조 구간을 읽습니다.

목록에 이미지 프롬프트가 없는 경우 references/prompt-fixups.md의 네 가지 골격을 사용하여 보충하고, 있는 경우 그대로 사용하며 다시 작성하지 않습니다.

2단계 · 생산 순서 정하기

앵커 레벨 → 파생 레벨 → 일회성

같은 등급 내에서는 참조 횟수가 많은 순서대로 진행합니다. 이유: 참조가 많은 자산은 재작업 시 영향을 받는 구간이 가장 많기 때문입니다.

여러 구간에서 재사용되고 공간 연속성이 중요한 장소는 필요에 따라 두 계층의 자산으로 분할합니다:

  1. 공간 구조 마스터: 사람이나 동작이 없으며, 바닥/벽면 재질, 진열장 및 건물 덩어리, 고정 배경 구조, 공간 깊이 관계, 씬 내 주 광원의 위치와 대략적인 방향을 고정합니다. 특정 카메라 위치, 샷 크기, 인물 및 임시 소품은 고정하지 않습니다.
  2. 카메라 위치 하위 마스터: 동일한 공간에서 실제로 사용될 정면 풀샷, 측면 클로즈업, 탑뷰, 로우 앵글 업샷 또는 클로즈업 등의 빈 장면을 파생합니다. 첫 프레임은 해당 카메라 위치 하위 마스터에서 파생되어, 전체 영상이 동일한 원근법과 구도를 상속받지 않도록 합니다.

각 공간에 대해 실제로 사용될 앵글만 만들며, 고정된 수를 강제하지 않습니다. 광 방향은 공간적 연속성을 유지하지만, 정오/저녁 등 조명 버전은 스토리가 시간대를 넘나드는지 여부에 따라 결정합니다. 기본 마스터에는 불필요한 강한 시간대 특성을 포함시키지 않습니다. 먼저 대표적인 카메라 위치를 나란히 검수한 후, 첫 프레임을 배치로 파생합니다.

3단계 · 등급 매기기

각 번호에 등급(앵커/파생/일회성)을 지정하고 작업 지시서에 기록합니다. 이 단계는 1분이면 충분하지만, 이후 후보 생성에 소요되는 노력을 결정합니다.

4단계 · 후보 생성

등급후보 수설명
앵커 레벨4–6하나를 선택하여 확정하고, 나머지는 예비로 보관
파생 레벨2–3앵커와 비교 후 선택
일회성1–2사용 가능하면 충분

이미지 생성 전 세 가지를 확인하십시오: 화면 비율이 올바른지, 배경이 올바른지(흰 배경인지 장면인지), 불필요한 요소(텍스트, 워터마크, 손)가 없는지.

AI 생성 시 먼저 --dry-run으로 파라미터를 확인한 후, 앵커 → 파생 순서로 한 번에 4–6장씩 제출합니다.

5단계 · 검수

references/acceptance.md의 7가지 항목을 하나씩 확인합니다. 7개 중 6개를 통과해야 유지되며, 중요 항목(기하학, 인쇄)을 통과하지 못하면 즉시 반려됩니다.

6단계 · 저장

04-소재/01-자산이미지/
├── PR-01_제품메인이미지_v1.png
├── PR-01_제품메인이미지_v2.png   ← 예비, 삭제하지 않음
├── SC-01_사무실책상_v1.png
└── CH-01_여성손_v1.png

명명 형식: <번호>_<용도>_v<N>.<확장자>. 번호는 목록과 일치하고(상태 접미사 A/B 유지), 용도는 2~8자이며 밑줄로 세분화할 수 있고, 버전은 증가합니다.

7단계 · 상태 업데이트

목록 상태를 '있음 / 예비 있음 / 보충 필요'로 변경하고, 작업 지시서에 선택된 버전을 기록합니다. 상태를 업데이트하지 않으면 다음 단계에서 어떤 버전을 참조해야 할지 알 수 없습니다.


5. 일관성 유지 방법

동일 번호의 여러 이미지는 다음 네 가지를 통해 정렬됩니다:

  1. 동일한 주제 설명: 앵커의 프롬프트를 복사하여 단어 하나도 변경하지 않음
  2. 동일한 광원 위치: 주 광원 방향과 색온도를 고정하고, 파생 이미지에서 조명을 변경하지 않음
  3. 동일한 화면 비율과 배경: 흰 배경이면 모두 흰 배경, 장면이면 모두 장면
  4. 나란히 비교: 두 이미지를 좌우로 배치하여 기하학, 색상, 인쇄, 비율 확인

나란히 비교가 가장 효과적인 방법입니다. 하나만 보면 모두 정확해 보이지만, 함께 놓고 보면 컵 입구가 2mm 넓거나 로고가 한 칸 높은 것을 발견할 수 있습니다.

자세한 방법은 references/acceptance.md를 참조하십시오.


6. 자체 점검 (스크립트 실행 가능)

python scripts/check_assets.py --dir <제작 디렉토리>

다섯 가지 판단 기준:

#판단 기준수준
A1목록의 모든 번호에 해당 파일이 있음치명적
A2파일 이름이 <번호>_<용도>_v<N> 형식과 일치치명적
A3디렉토리에 목록에 없는 파일이 없음경고
A4각 이미지 해상도 ≥ 짧은 변 720px경고
A5앵커 레벨 자산의 후보 수 ≥ 2경고

종료 코드: 0 통과 / 2 치명적 항목 있음 / 3 디렉토리 읽기 불가.


7. 경계

  • 스토리보드 작성 안 함: 자산 요구 사항은 스토리보드와 목록에서 가져오며, 자체적으로 내용을 변경하지 않음
  • 비디오 프롬프트 작성 안 함: 그것은 상위 단계의 작업이며, 이 스킬은 이미지 프롬프트만 보충
  • 비디오 생성 안 함: 정적 이미지만 처리
  • 판단 대체 안 함: 검수 기준은 제공되지만, '이 이미지를 사용할 수 있는지'는 최종적으로 사람이 결정
  • 한 번에 올바르게 생성됨을 보장하지 않음: 생성은 확률적이며, 이 스킬이 보장하는 것은 '후보 존재, 검수 수행, 버전 관리'입니다.

8. 참고 자료

파일읽어야 할 때
references/production.md순서 정하기, 등급 매기기, 후보 생성, 저장 및 상태 업데이트 시
references/acceptance.md검수, 나란히 비교, 반려 및 재작업 시
references/prompt-fixups.md목록에 프롬프트가 없거나 특정 이미지가 계속 잘못 생성될 때
references/ai-generation.mdAI 생성 사용 시: 파라미터, 작성법, 배치, 실패 처리
assets/asset-production-sheet.md작업 시작 전 작업 지시서 생성, 인도 시 상태 업데이트
assets/batch-tasks-example.json배치 생성용 작업 테이블 예제
scripts/kie_gen.py제출, 폴링, 다운로드, 명명 저장
scripts/check_assets.py인도 전 실행

Individual skills in this repo

This repo contains 4 individual skills — each has its own dedicated page.

lhaovo/short-video-skills

一条短视频从策划到发布的流程总控:建制作目录、依次走「剧本分镜 → 提示词 → 生成 → 交付 → 发布」五段、每段设门禁、记录流程状态、支持跨会话续做。当用户要开一条新片子、问「下一步做什么」、想接着做某条没做完的片子、要把分镜变成提示词、要整理素材与成片、要准备发布包时使用。本技能只规定流程、目录与产物标准,不重复各环节的写作规范。

lhaovo/short-video-skills

把已过 G2 的生成清单落成真实视频片段——按段建 KIE Seedance 任务、轮询、下载、媒体体检、抽帧质检、听声核台词,并把每段的状态与请求指纹写进生成台账。三种模式互斥(文生 / 首帧图生 / 首尾帧图生)。旁白由模型直接念,台词照稿写进提示词,不走独立 TTS 配音。当用户提到视频生成、出片段、跑 Seedance、首帧图生、首尾帧、原生音频、台词念错、任务查询、片段下载、生成失败重试时使用。只管「把已定的画面和台词变成成段素材」,不重新设计视觉、不改台词文本、不做字幕、不做剪辑。

lhaovo/short-video-skills

把「我想拍点什么」变成一条想清楚的片子——先定主题(出 5 个候选、标明类型、给出推荐与淘汰理由),再定结构与分段剧本,最后切成镜头级内容分镜。支持两种入口:一句话主题(需要发散选题)与已有拆解剧本(跳过选题,先问复刻需求与复刻强度再判定改写)。当用户提到选题、定主题、短视频策划、写剧本、写大纲、分镜、镜头脚本、不知道拍什么、内容怎么排、科普干货、剧情软广、钩子怎么写、复刻别人的剧本时使用。只管内容层(讲什么、怎么讲),不碰执行层;内置的内容红线只防明显自伤,不替代合规审查。

lhaovo/short-video-skills

把已定稿的分镜表翻成可直接执行的两份清单——资产清单(要准备哪些图、每张图的图像提示词)与生成清单(每段视频的时长、模式、素材引用与提示词)。覆盖画面化、资产编号、切分生成单元、Seedance 视频提示词写法、首帧方案、一致性与失败诊断。当用户说「把分镜变成提示词」「写视频提示词」「这条片子要哪些图」「生成清单」「某个镜头生成不出来」时使用。只做翻译与清单,不重新编排内容,不直接出图出片。

관련 스킬