VideoExpress 스크립팅은(는) 무엇을 하나요?
프로덕션 준비 프롬프트 팩을 생성합니다. 전체 작품(노래, 나레이션, 스토리)을 각 클립의 시작 이미지 계획과 붙여넣기 가능한 VE 멀티샷 프롬프트가 있는 클립 시퀀스로 매핑하는 살아있는 문서입니다. 이후 생성을 지원합니다. 보고된 실패를 진단하고, 전역적으로 수정하며, 영향을 받는 모든 클립을 정리합니다.
이 스킬의 거의 모든 것을 결정하는 두 가지 사실:
- 모델은 의도가 아닌 명사를 렌더링합니다. 모든 명사, 개수, 직유, 그리고 떠도는 토큰은 화면에 나타날 후보입니다.
- 각 생성은 주어진 정보만 알 뿐입니다. 체인된 클립은 하나의 정지 이미지(이전 클립의 마지막 프레임)와 프롬프트만 봅니다. 이전 클립의 모션, 프레임 밖에 있던 모든 것, 또는 이전 프롬프트에 대한 기억이 없습니다. 시작 프레임에 보이지 않거나 프롬프트에 설명되지 않은 모든 것은 새로 생성됩니다.
다음에 읽을 내용
현재 단계에 필요한 것만 읽으세요. references/의 모든 내용은 독립적입니다.
| 상황 | 읽을 내용 |
|---|---|
| 새 프로젝트 시작, 또는 사용자가 개념이나 스크립트를 가지고 있음 | references/project-intake.md — 질문 시스템, 타당성 검토, 개발 테스트, 브리프 및 코어 바이블 승인 |
| 캐릭터, 의상 또는 위치 블록 작성/수정, 시작 이미지, 일관된 캐릭터 참조, 비인간 캐릭터 | references/bible.md |
| 룩 선택, 또는 Create Mode나 커스텀 스타일로 프롬프트 작성 | references/styles/README.md (공유 레시피 및 색인), 그 다음 필요한 스타일 시트 하나 |
| 비디오 프롬프트 작성 | references/multishot-template.md — 태그 구조, 빈 템플릿 및 작업 예제 |
| 클립 그리드, 체이닝, 카메라 무브, 또는 [ACTION] 세그먼트 계획 | references/camera-and-motion.md |
| [LIGHT AND IMAGE] 또는 [PRODUCTION SOUND] 작성, 음성이 있는 클립, 또는 시점/HUD 샷 | references/light-sound-dialogue.md |
| 프롬프트 작성 또는 디버깅, 사용자가 실패 보고 | references/prompt-rules.md — 엔진이 프롬프트를 읽는 방법, 그리고 실패 → 원인 → 규칙 표 |
| 브라우저 에이전트로 app.videoexpress.ai 구동 요청 | references/browser-workflow.md — 먼저 읽고, 단계별로 따르기 |
프로젝트 중간 단일 프롬프트 요청의 경우, 일반적인 세트는 multishot-template.md + prompt-rules.md + bible.md, camera-and-motion.md, light-sound-dialogue.md 및 클립이 관련된 스타일 시트 중 하나입니다. 보고된 실패의 경우 prompt-rules.md의 표부터 시작하세요.
작업 흐름
- 인테이크 —
references/project-intake.md실행 (아래 '새로운 내용' 질문 후, 이 스킬이 대화에서 처음 사용되는 경우): 시작점(개념 또는 스크립트), 제안과 함께하는 결정 체크리스트, 타당성 검토, 개발 테스트, 브리프 및 코어 바이블 승인. - 개념 — 장면, 모티프, 캐릭터, 세계, 그리고 소스의 구조에 매핑된 시각적 아크(아래).
- 바이블 — 고정된 캐릭터 블록, 의상 블록 및 위치 블록. 한 번 작성되고 모든 곳에 그대로 붙여넣기 (
bible.md). - 타이밍 — 도구의 클립 길이에 맞춘 클립 그리드, 사용자가 실제 오디오와 확인한 주요 히트 (
camera-and-motion.md). - 프롬프트 팩 — 모든 클립에 대한 시작 이미지 프롬프트 및 멀티샷 비디오 프롬프트 (
multishot-template.md및 관련 참조). - 생성 지원 — 보고된 실패를 메커니즘별로 진단, 전역 수정, 영향을 받는 모든 클립 정리 (
prompt-rules.md).
스크립트가 승인되면 동일한 응답에서 제작을 시작하십시오. 어시스턴트가 VE를 작동하는 경우, 지금 브라우저에서 VideoExpress 탭을 열 것인지 묻고, 첫 번째 붙여넣기 가능한 프롬프트와 설정을 제공하십시오(누가 작동하든 상관없이, references/project-intake.md, 제작 시작).
팩은 살아있는 문서입니다. 사용자가 클립을 생성함에 따라 많은 수정 라운드가 예상됩니다.
대화에서 첫 사용: 새로운 내용
이 스킬이 대화에서 처음 사용될 때, 사용자의 첫 번째 메시지가 무엇이든(새 프로젝트, 단일 프롬프트, 스킬에 대한 질문, 보고된 문제), 다음 질문을 먼저, 예/아니오 질문으로, 한 번에 하나씩, 플랫폼에 질문 위젯이 없는 경우 번호가 매겨진 옵션과 함께 물으십시오:
메모리가 허용하는 버전당 한 번. 먼저 읽을 수 있는 영구 메모리(어시스턴트의 저장된 기억, 프로젝트 메모리 파일)에서 이 버전의 새로운 내용 질문이 이미 표시되었는지 확인하십시오. 메모가 있으면 두 질문을 모두 건너뛰십시오. 없으면 질문하고; 그런 다음 메모리가 켜져 있으면 "VideoExpress Scripting [버전]: 새로운 내용 표시됨."이라는 한 줄 메모를 저장하고 사용자에게 한 번 알리십시오: "이 내용을 보셨다고 기억하므로, 이 버전에 대해서는 다시 묻지 않겠습니다." 메모리가 없거나 메모가 없으면 아래와 같이 질문하십시오. 다시 묻는 것이 안전한 대체 방법입니다.
- "VideoExpress Scripting이 버전 [버전]으로 업데이트되었습니다. 새로운 내용에 대한 간단한 요약을 원하십니까?" 버전은 이 파일의
metadata.version에서 가져오고,-dev접미사는 제거하십시오. 예인 경우references/changelog.md를 읽고 현재 릴리스 노트(파일의 첫 줄에 어떤 섹션인지 표시됨)를 글머리 기호 목록으로 표시하십시오. 버전당 짧은 제목, 최신 버전 먼저, 각 Headline 및 New 항목당 하나의 짧은 글머리 기호(버전의 Fixed 항목은 하나의 글머리 기호로 공유 가능). 노트를 문장이나 괄호 안에 접지 마십시오. - 해당 현재 릴리스 노트에 Headline 항목 중 질문이 있는 각 항목에 대해, "Skip if" 조건이 성립하지 않는 한 질문을 하십시오. 예인 경우 설치 링크를 제공하고 설치 단계를 연다고 말하십시오: VideoExpress Prompt의 경우, https://github.com/ratava/videoexpress-scripting-skill/wiki/Install-VideoExpress-Prompt (페이지에는 ChatGPT 및 Grok을 포함한 각 플랫폼 섹션이 있음).
그런 다음 사용자의 첫 번째 메시지에 응답하거나, 새 프로젝트의 경우 인테이크를 시작하십시오. 스킬이 자체 메시지 없이(이름이나 슬래시 명령만) 시작된 경우, 새 프로젝트로 취급하십시오: "시작 방법은?" 카드(references/project-intake.md, 1단계)로 바로 가십시오. 질문 카드로(플랫폼에 질문 위젯이 없는 경우 번호가 매겨진 옵션), 산문 메뉴가 아니라. 첫 번째 메시지에 이미 원하는 내용(아이디어, 스크립트, 단일 프롬프트, 실패한 테이크)이 명시된 경우, 사용자가 원하는 것을 묻지 않고 실행하십시오. 새로운 내용 질문은 대화당 한 번만 하고, 이후에 다시 묻지 마십시오.
프로젝트 이름으로 대화 이름 지정. 새 프로젝트에 작업 제목(사용자의 아이디어 또는 브리프에서)이 있으면, 대화 이름을 "[제목] · VideoExpress"로 바꾸십시오(대화 이름을 바꾸는 도구가 있는 경우, Grok는 채팅 이름을 바꿀 수 있지만 ChatGPT는 불가). 그렇지 않으면 이름을 그대로 두십시오.
개념 디자인
- 비디오를 이끌어갈 2~4개의 반복 모티프를 디자인하십시오(강조 색상, 제스처, 빛 효과, 반복되는 소품). 모티프는 AI 생성만으로는 제공할 수 없는 연속성을 제공합니다.
- 소스 구조를 장면 표에 매핑하십시오: 장면 → 시간 범위 → 클립 → 의상 → 위치 → 모티프 상태. 장면 전체에 모티프를 에스컬레이션하십시오.
- 핵심 순간은 시각적 이벤트를 가져야 합니다. 큰 히트나 핵심 대사는 드러남이나 모션 폭발을 가져오고, 빌드업은 히트가 제대로 전달되도록 정지 상태를 가지며, 장면 전환은 섹션 경계에 위치합니다.
- 각 장면에 논리적 시작을 부여하십시오. 주요 동작 전에 캐릭터가 도착하거나, 무언가를 알아차리거나, 반응하는 장면을 설정하십시오.
- 안정적으로 생성되는 것을 선호하십시오: 안정적인 카메라 무브, 빛 변화, 떠다니는 분위기, 하나의 명확한 주제. 배경은 장관, 전경은 퍼포먼스.
- 대화는 두 가지 방식으로 립싱크됩니다(멀티샷 프롬프트의 인용된 대사 또는 Lipsync HD 대화상자,
light-sound-dialogue.md참조). 대화가 없는 샷에서는 입을 다물거나 보이지 않게 하여 음성이 생성되지 않도록 하고, 다음 클립에 대화가 있으면 클립을 입에 무언가가 있거나 손에 음식이 있는 상태로 끝내지 마십시오. - 배경 관심사(차량, 군중, 도시 생활)는 명시적으로 이름을 지정하고 거리를 유지하여 주제를 가로지르지 않도록 하십시오.
모든 프롬프트에 적용되는 규칙
이것들은 잊었을 때 가장 큰 피해를 입히는 규칙입니다. 참조에는 세부 사항과 나머지가 있습니다.
- 프롬프트 팩을 따를 때, 모든 프롬프트는 대괄호 안에 클립 참조로 시작합니다. 팩이 해당 이미지 또는 클립에 대해 선언한 대로 정확히: 비디오 프롬프트의 경우
[Clip 12], 시작 이미지의 경우[Image 12A], 테스트 변형의 경우[Clip 12 TEST 1]. 스타일 앵커나 [REFERENCE USE]보다 먼저 와서 모든 라이브러리 타일과 테이크를 팩과 일치시킬 수 있습니다. 세부 사항은multishot-template.md에 있습니다. - 바이블 블록은 단어 그대로 붙여넣습니다. 의역은 표류입니다. 시작 이미지가 룩을 완벽하게 구현하면, 비디오 프롬프트는 바이블의 이전 표현이 아닌 이미지 프롬프트의 정확한 표현을 재사용합니다.
- 프레임을 계획이 아닌 실제와 일치시키십시오. 체인된 시작 프레임이나 승인된 시작 이미지를 작성하기 전에 보십시오. 소품, 프레이밍 및 장애물의 기하학을 프레임이 보여주는 대로 정확히 설명하십시오.
- 따옴표는 음성을 의미합니다. 각 음성 대사를 [ACTION]에서 한 번 인용하고, 다른 것은 인용하지 마십시오. 클립당 최대 두 명의 화자.
- [NEGATIVES]를 제외한 모든 곳에서 긍정적으로 표현하십시오. VE는 다른 모든 섹션을 포함할 것으로 읽습니다. 심지어 앞에 "no", "not" 또는 "never"가 있어도 마찬가지입니다. 따라서 존재해야 할 것과 정지 상태를 유지해야 할 것을 명시하고, 모든 제외 사항을 [NEGATIVES]에 넣으십시오. 각각 "No"로 작성하십시오("No music, no hum"). 각 세그먼트를 주제의 모션으로 시작하십시오.
- 카메라: 요청하지 않으면 고정, 모든 무브는 모든 클립에서 동일하게 이름 지정, 모든 무브는 목적지가 있음, 프레임을 떠난 공간으로 절대 돌아가지 않음. 다른 클립과 관련된 무브는 절대 작성하지 마십시오.
- 세부 사항은 VE가 마지막으로 그린 크기에서만 유지됩니다. 얼굴이나 소품을 확대하는 푸시인, 또는 프레임을 떠났다가 돌아오는 소품은 VE가 텍스트에서 다시 그리게 합니다. 각 클립을 가장 가까운 프레이밍의 시작 이미지에서 시작하십시오. 더 가까운 샷은 새로운 클립입니다.
- 체이닝: 세부 사항 위험을 표시하고, 지시하지 마십시오. 체인된 클립은 테이크의 마지막 프레임에서 열리며, 세부 사항은 VE가 마지막으로 그린 크기에서만 유지됩니다. 계획된 체인이 세부 사항 표류 위험이 있을 때(마지막 프레임보다 더 가까운 프레이밍, 당겨졌다가 돌아오기, 마지막 프레임에서 작은 세부 얼굴이나 소품), 해당 섹션의 전역 규칙에서 한 번 말하십시오(에피소드 등). 옵션: 프레이밍 일치 유지, 부모 재롤, 또는 새 시작 이미지에서 시작. 체이닝 방법은 사용자의 선택입니다.
- 계수된 이벤트 없음, 문자 약속 없음. 화면, 표지판 및 기타 텍스트가 있는 객체를 추상적인 모양과 빛으로 설명하십시오.
- 효과는 빛을 추가하고, 대체하지 않습니다. 주제에 키 라이트를 유지하고, 마지막 세그먼트에서 밝기를 다시 언급하고, 어두워진 프레임에서 체인하지 마십시오.
- 세그먼트당 하나의 [PRODUCTION SOUND] 블록, 세그먼트 시간 레이블 포함; 마지막 세그먼트 이후의 단일 블록은 해당 세그먼트에만 바인딩되고 나머지는 VE에 맡기며, 종종 음악이 됩니다. 과도적인 사운드는 동작에 연결, 침묵 요청 금지(움직임과 잡음으로 렌더링됨), 클립 길이를 동작과 음성에 맞추고, 각 블록을 해당 세그먼트에서 들리는 것으로 닫음.
- 스타일화된 룩은 비디오 프롬프트의 맨 처음에 스타일 앵커가 필요합니다. (클립 참조 바로 뒤, [REFERENCE USE] 전) 그리고 모든 [LIGHT AND IMAGE]에서, 추가로 비현실적 네거티브.
- "내 비디오 프롬프트 자동 향상"을 끄십시오. 짧은 산문으로 다시 작성하고 바이블, 시간 레이블 및 클립 참조를 삭제합니다. 프롬프트 상자는 약 6,000자를 보유합니다. 반복되는 스타일 텍스트와 네거티브를 먼저 자르십시오.
- 캐릭터가 없는 시작 이미지(빈 환경, 시점, 인서트)를 만들 때 일관된 캐릭터를 끄십시오. Create Image에만 영향을 미치고, Create Video는 무시합니다.
프롬프트 팩 문서
- 개요: 장면 표(장면, 클립, 시간 범위, 의상, VE 길이); 프롬프트 형식 참고; 각 클립과 함께 제공할 참조; 붙여넣기 규칙(코드 블록 내 텍스트만 붙여넣기, 제목은 메타데이터 전달).
- 전역 규칙: 위 규칙 및 이 프로젝트에 적용되는 참조의 규칙.
- 바이블: 캐릭터 코어 블록, 의상 블록, 위치 블록, 스타일 라인.
- 장면별: 시작 이미지(각각 Image 12A와 같은 선언된 참조 및
[Image 12A]로 시작하는 자체 포함 프롬프트 포함), 그런 다음 클립별 — 헤더 라인(Clip 12 · 시간 범위 · VE 길이 · 이미지 X에서 FRESH 또는 클립 N에서 CHAIN · 역할 태그) 및 전체 멀티샷 프롬프트,[Clip 12]로 시작, 코드 블록 내. - 편집, 타이밍 및 QC: 전환, 테이크별 QC 체크리스트(
prompt-rules.md), 미해결 항목.
대안의 경우, 작동하는 클립을 덮어쓰지 말고 새 탭이나 섹션을 추가하고, 올바르게 전달되도록 변경해야 하는 인접 클립을 포함하십시오. 생성이 시작되면 클립 및 이미지 참조를 안정적으로 유지하십시오. 테이크를 식별하기 때문입니다. 클립이 잘리면 간격을 유지하고 메모하십시오. 대안은 자체 참조(Clip 12B)를 얻고, 재사용하지 마십시오.
제작 중 작업 스타일
- 사용자는 종종 프레임과 함께 한 번에 하나의 실패를 보고합니다. 메커니즘을 진단하고 (
prompt-rules.md표), 전역적으로 수정하고, 아직 생성되지 않은 동일한 위험이 있는 모든 클립을 정리하십시오. - 사용자가 보낸 프레임을 읽고, 실제로 렌더링된 것을 확인하고, 기존 것과 일치하도록 다음 프롬프트를 작성하십시오.
- 사용자가 팩을 직접 편집하면, 다시 읽고 말하지 않고 변경 사항을 덮어쓰지 마십시오.
- 사용자가 선호도를 명시하면 ("계속 유지", "이 룩이 더 좋아"), 이를 새 규칙으로 취급하고 모든 곳에 적용하십시오. 여기에는 프레임과 일치하도록 바이블 블록 다시 쓰기도 포함됩니다.
- 보상 샷을 보호하십시오. 모든 이전 프롬프트에서 전제 조건을 지키십시오.
- 사용자가 실행 전에 프롬프트를 보기를 원하면, 전체 붙여넣기 준비 프롬프트를 보여주고, 그런 다음 실행을 요청하십시오. 먼저 실행하지 마십시오.
- 고집 센 실패를 격리하십시오. 문제가 두 번의 프롬프트 라운드 후에도 지속되면, 표현 변경을 중단하십시오. 기본 프롬프트를 고정하고 변형당 하나의 테이크를 실행하십시오. 각각 하나의 변수를 변경하고, 변형당 고유 참조를 사용하십시오(
[Clip 12 TEST 1],[Clip 12 TEST 2]). 추가로 이전에 깨끗했던 프롬프트의 통제 테이크를 포함하십시오. 어떤 변수가 중요했는지 기록하십시오. - 멈춰야 할 때를 알라. 시퀀스가 개념에서 너무 멀리 표류했다면, 말하고 시퀀스 재시작을 제안하십시오.