Files
ShortVideoGenerator/.agents/skills/short-video-images/SKILL.md
T

5.8 KiB

name, description
name description
short-video-images 승인된 짧은 영상의 컷별 시작·끝 이미지 요청서를 작성하고 11 이미지의 실제 PNG와 장면 연속성을 검증할 때 사용한다.

컷 이미지 요청과 결과 확인

11-images만 담당한다. 각 컷에 시작과 끝 프레임이 필요하며 요청서만으로 생성 완료를 보고하지 않는다.

읽을 자료와 시작 조건

  1. 제작물의 topic, language를 보존하고 세로 9:16, 전체 180000ms 이내, 각 컷 0ms 초과 5000ms 이하 조건을 확인한다.
  2. 같은 제작물의 유효한 02-research, 03-script, 07-cuts, 08-scenes, 09-entities, 10-references를 읽고 실제 사용 버전을 inputs에 기록한다. 10의 모든 필요한 기준 PNG와 참조가 검증되어야 한다. 자료가 없거나 stale·부분 결과이면 먼저 해결할 단계와 이유를 총괄에 보고한다.
  3. scenes 검토의 실제 사용자 응답과 artifact_refs가 사용하는 07·08·09 버전을 승인했는지 확인한다. 10이 이 승인 전에 진행되었다면 유효한 선행 완료로 취급하지 않는다. topic·story 등 앞선 승인도 유효해야 한다. 개별 호출로 선행 결과·승인을 우회하지 않으며 같은 승인 버전에 재승인을 요구하지 않는다.

컷별 요청서 작성

payload.request의 기존 model, frames만 사용하며 모델은 gpt-image-2.5-sunburst다. 스타일은 10의 기준 결과와 원본 references/1.png에 연결한다.

  • 각 frame은 유일한 id, cut_id, position, prompt, reference_ids를 가진다. 07의 모든 컷마다 position=start와 position=end가 정확히 하나씩 있어야 한다. 추가 컷·중복 위치·누락은 허용하지 않는다.
  • cut_id는 07·08의 같은 컷을 가리키고, reference_ids는 10의 요청 id와 결과 reference_id가 일치하는 검증된 기준 이미지를 참조한다. 스타일 및 해당 컷의 인물·배경 기준을 포함하고 09의 등장 인물·배경 ID를 프롬프트에 연결한다.
  • prompt는 03의 관련 블록·주장, 02의 확인한 근거, 08의 해당 start_state/end_state와 camera를 따른다. 인물·배경의 고정 특징을 유지하고 의상·표정·시간 변화는 장면에 근거해 명시한다. 원본 스타일 이미지의 등장인물을 모든 영상의 고정 인물로 삼지 않는다.
  • 작동 원리와 단면·지도·주석의 구조·재료·방향·수치를 조사·대본과 대조한다. 근거가 없거나 선행 설계와 충돌하면 임의로 도해하지 말고 수정할 단계·컷을 보고한다. 단순화해도 사실에 중요한 차이를 남긴다.
  • 그림체는 첨부의 가는 윤곽선·단순 형태·색면·제한적 음영을 따른다. 참고 Shorts의 입체 렌더링이나 캠핑 소재·상표 복제를 강제하지 않는다. 부정확한 생성 글자·숫자는 검증한 텍스트로 합성하도록 메모한다.

인접 프레임 연결

08의 connections.mode와 reason을 따른다. continuous는 앞 컷 end와 다음 컷 start의 같은 인물·배경·물체 위치·행동 진행·흐름 방향·카메라 상태를 맞춘다. 동일한 이미지를 공유할 수 있으나 각 컷·위치에는 별도 frame ID를 유지하고, 두 결과의 실제 media.path 및 공유하는 end/start frame ID 관계를 review.md에 명시한다. cut은 위치·시간·시점이 어떻게 바뀌는지 프롬프트와 검토 메모에서 설명한다. 장면 연결을 이미지 단계에서 임의로 변경하지 않는다.

실제 결과 확인과 전달

실제 제작 시 해당 모델과 세로 출력 지원을 확인한다. 확인하지 않은 API 파라미터를 고정하거나 다른 모델로 무단 대체하지 않는다. 지원이 확인되지 않거나 실제 결과가 없으면 요청서를 보존하고 result=null, awaiting_input을 총괄에 보고한다.

  • 실제 부분 결과는 payload.result.frames에 보존한다. 각 결과는 frame_id, media이며 frame_id는 요청 frame의 id와 일치해야 한다. 모든 요청의 start/end 결과가 누락·중복 없이 검증되기 전 전체 complete로 보고하지 않는다.
  • media는 기존 {path, kind, verified, duration_ms, width, height}를 사용한다. 경로는 저장소 루트 기준이다. 실제 파일 존재·PNG 내용 형식·해상도와 화면을 확인한 경우만 verified=true다. kind=image, duration_ms=null, 크기는 실제 측정값이며 미확인 값은 null이다. 확장자·요청 크기·예제 경로만으로 검증하지 않는다. 실제 세로 9:16, 컷 상태·고정 특징·근거·연속성도 확인한다.
  • 자기 단계의 새 stages/11-images/r<revision>/artifact.json과 review.md만 작성하고 이전 버전을 덮어쓰지 않는다. 메모에 적용 원칙과 결과, 비적용 이유, 실제 모델·지원 확인, 컷·프레임·파일별 검증과 미확인 사항을 적는다. 새 JSON 필드·필수 입력·승인 지점은 만들지 않는다.
  • 모든 컷의 두 위치와 결과 검증을 대조해 준비 여부·남은 문제·후속 영향과 수정할 단계를 총괄에 보고한다. project.json, 상태·현재 포인터·사용자 승인은 총괄만 변경한다.