Hadi Got Motion은(는) 무엇을 하나요?
스킬 하나로 된 모션 스튜디오: 12개의 모션 스타일, 각각 고유한 움직임 방식, 그리고 하나의 취향 기준. 모든 프레임은 실제 재료(아카이브 인쇄물과 사진, 실제 서체, 실제 데이터, 실제 녹음본)로 만들어집니다. 코드는 자르고, 연결하고, 시간을 맞추고, 조명합니다. 코드는 절대 그림을 그리지 않습니다. 취향 기준은 Mr Pemberton's Mistake입니다. 빅토리아 시대 판화에서 가져온 컷아웃 말하는 인형극입니다(references/case-pemberton.md).
모든 것은 하나의 명령어 hgm으로 실행됩니다(scripts/hgm; hgm install 후에는 PATH에 등록됨). 모든 hgm 명령어는 짧은 요약을 출력하고 세부 사항을 파일에 기록하므로, 토큰은 취향에 쓰이고 설비에는 쓰이지 않습니다. 시작하기 전에 아래의 토큰 예산 섹션을 읽으십시오. 이는 부차적인 사항이 아니라 제작 과정의 일부입니다.
작업 순서: 도구 확인 → 브리프 선택기 → 예상 시간 → 설정 → 방향 → 음성 → 자산 → 애니메이션 → 리뷰 → 전달. 브리프와 설정이 완료되기 전에는 절대 제작을 시작하지 마십시오.
영화를 재개하시나요? 프로젝트의 HANDOFF.md를 읽고 프로젝트 내에서 hgm state를 실행하십시오. 스킬의 참고 자료, 이전 영화 또는 전체 영화 파일을 다시 읽지 마십시오.
0–1 · 도구 확인 및 브리프 선택기 (한 번의 교환)
- 묻거나 설명하지 마십시오.
bash <이 스킬 폴더>/scripts/hgm picker를 실행하고, 이미 언급된 내용에 대해--title "…" --duration 45 --concept "…"를 추가하십시오.read_me를["elicitation"]으로 한 번 호출한 후, 출력된 로더를 정확히 그대로 사용하여show_widget을 호출하십시오. - 응답 라인은
Motion graphic details — Tools: … · Title: … · Duration seconds: … · Pacing: 1–5 · Concept: … · Motion style: … · …형식으로 반환됩니다. 개념만 필수입니다: 제목이 없으면 이름을 지정하고, 시간이 없으면 30초, 페이스가 없으면 3, 지도 룩이 없으면 지도를 사용하지 않습니다. - 누락된 항목이 있고 사용자가 "Not now"를 선택하지 않았다면, 백그라운드에서
hgm install을 시작하십시오. - 빈 위젯, 위젯 도구 없음, 업로드된 스크립트 또는 건너뛴 양식:
references/setup.md를 참조하십시오.
2 · 시간 추정 (답변 직후)
hgm estimate --answers "<답변 라인, 그대로>"를 실행하십시오. 처음 두 줄을 한두 문장으로 말한 후 시작하십시오. 확인을 기다리지 마십시오.
"Let Claude decide": 처음부터 끝까지, 질문 없음
스타일이 "Let Claude decide"(또는 "you decide", "surprise me", 양식이 건너뛰어짐)인 경우:
- 더 이상 묻지 마십시오. 감독으로서 모든 것을 결정하십시오: 개념에 가장 잘 맞는 스타일, 페이스(개념이 명확하게 차분함이나 광란을 원하지 않는 한 3), 이야기가 실제 장소를 여행하는 경우에만 지도, 컷아웃 파스나 종이 극장에서만 걷기, 출연진과 목소리, 대본, 그리고 아카이브 이미지(이미 연결된 경우에만 ChatGPT).
hgm estimate --style <id> --duration <s> --pace <1-5> --script write|have|none을 다시 실행하고 무엇을 선택했는지, 왜 선택했는지, 그리고 얼마나 걸릴지를 두 줄로 알려주십시오.- 건너뛸 수 없는 한 가지는 음성이 필요하고 아직 연결된 것이 없을 때의 ElevenLabs 로그인입니다. 로그인이 불가능하면, 텍스트와 음악만으로 영화를 만드십시오.
3 · 설정 (제작 전에 완료)
필요하면 hgm install을 실행한 후, hgm new <슬러그> --style <id> --pace <1-5>를 실행하십시오(id: cutout-farce, kinetic-editorial, kinetic-swiss, editorial-collage, period-print, paper-theatre, real-maps, stat-hits, footage-led, silent-film, title-sequence, object-diorama). 그 다음 hgm doctor를 실행하십시오. ElevenLabs 로그인(hgm connect-voice) 및 ChatGPT 이미지(hgm connect-images)는 references/setup.md에 정확한 표현이 있으니, 그대로 따르고 절대 키를 직접 다루지 마십시오. 모두 초록색이면 **"Setup done"**이라고 한 줄로 말하십시오.
4 · 방향
hgm ref <style-id>는 이 스타일에 필요한 모든 것(스타일의styles.md섹션, 모션 언어, 모든 스타일의 규칙,taste.md(취향 기준 및 안티-AI-룩 체크리스트))을 한 번에 출력합니다. 전체 참조 파일을 열지 마십시오.- 사실은 연구가 필요하며, 추측하지 마십시오. 영화가 사실(역사, 과학, 사람, 숫자, "만약 ~라면 어떻게 될까?")을 언급한다면, 하위 에이전트가 대본을 작성하기 전에 이를
FACTS.md에 조사합니다:hgm ref research. 확정된 사실을 바탕으로만 대본을 작성하고; 드라마는 실제 특이사항에서 나옵니다. - 대본이 제공되지 않은 경우: 한 메시지에 3개의 콘셉트(상황 속의 캐릭터, 1.5초 훅, 에스컬레이션으로 이어지는 페이오프)를 제시하고, 가장 안전한 것을 직접 제거하십시오. "Let Claude decide"에서는 제시하지 말고 가장 강력한 것을 선택하여 진행하십시오. 30초당 단어 수는 페이스에 따라 다릅니다(
pacing.json의words30: 페이스 1에서 50, 3에서 66, 5에서 82). 페이오프 라인으로 끝내십시오. - 장면을 계획하십시오.
BRIEF.md에 장면 계획을 작성하십시오: 각 장면의 시간 범위, 장소 및 변경 방식에 대한 한 줄. 이야기가 한 장소를 요구하지 않는 한, 세계는 페이스의scenery초마다 변경됩니다. 같은 배경에 새로운 소품을 추가하는 것은 변경이 아닙니다(taste.md, "Scenery" 참조). - 세계를 고정하십시오
BRIEF.md에 다섯 가지 규칙으로: 팔레트(2-3개 색상 및 비트당 악센트 하나), 인쇄물 또는 선, 질감(한 가지 그레인), 조명, 글자체(한 패밀리).
5 · 음성: 음성이 시계입니다 ("내레이션 없음"인 경우 건너뜀)
hgm voices --list→audio/cast.json에 캐스팅 →audio/script.json(text는 [audio tags]로 연기를 표현하고,caption은 화면에 깨끗하게 표시될 텍스트,gap_after는 액션을 위한 여백을 남깁니다).hgm voice-all은 한 줄 요약과 ✗ 표시가 있는 줄을 출력합니다(전체 로그:review/voice.log).skip_start, 캡션 또는hgm voices <id>로 ✗ 줄을 수정하십시오. 자세한 내용:hgm ref elevenlabs.
6 · 자산: 온라인 우선, 그 다음 ChatGPT
- 기계적인 부분을 하위 에이전트에 위임하십시오(Agent 도구,
model: "sonnet"): 시각 자료 목록, BRIEF 세계 규칙 및 명령어hgm assets <key> "query" …(이미지) 및hgm assets --audio <key> "query"(사운드)를 제공하십시오. 하위 에이전트는 각 키에 대한 상위 3개 후보를 하나의 결합된 시트와 짧은 텍스트 목록으로 반환합니다. 해당 시트를 작게 보고 선택합니다. 그런 다음hgm pick <key>:<n>:<name>을 실행하면(직접 또는 하위 에이전트가) 다운로드하고 크레딧을 기록합니다. 소스:hgm ref sources. - 아카이브가 제공할 수 없는 것만 ChatGPT로 보냅니다(
hgm img inbox/<name>.png "<프롬프트>"또는 프롬프트 팩):hgm ref imagegen. - 지도:
hgm map-data …그 다음hgm map-reel:hgm ref maps. 절대 지리를 그리거나 추측하지 마십시오. - 자르고 리깅은
assets/build_assets.py에서 합니다(hgm grid,hgm zoom,hgm cut,hgm explode; 레시피:hgm ref cutout-farce-recipe). 하위 에이전트가 좌표 읽기와 자르기를 수행할 수 있으며, 당신은 단일explode시트를 확인합니다.
7 · 애니메이션
<slug>.mjs에서 빌드합니다(스캐폴드).hgm api는 모든 헬퍼와 그 시그니처를 나열합니다. 이를 사용하고 스캐폴드나 이전 영화를 읽지 마십시오. 타임라인 헬퍼는 유지하고 DEMO 블록은 교체하십시오.- 하나의 상태 객체로
at(sec, {key: [from, to]}, dur, ease)를 사용합니다. 모든 액션에는 SFX 큐가 있고, 캡션은 단어에 키가 지정됩니다.at()은 모든 지속 시간을 페이스(PC.k)에 따라 조정하고;PC.shot과PC.scenery에서 자르고 장면을 변경합니다.hgm voice-all은 페이스의 내레이터 템포와 갭을 적용합니다. - 스타일의 방식대로 움직이게 하십시오(프레임 속도, 투즈나 쓰리즈로 움직이는 부분, 이징, 카메라, 전환). 스캐폴드는 이미 프로필을 적용하고 있습니다. 모든 스타일에 동일한 부드러운 이즈인-아웃을 절대 적용하지 마십시오. 그 동질성이 AI의 특징입니다.
- 걷기는 컷아웃 파스(및 페이퍼 시어터의 홉 앤 글라이드)에 속합니다:
walk(style, t, {facing}),hgm ref walks,hgm walks릴 참조. - 영화 파일은 한 번 작성하고, 그 후에는 작은 편집으로 변경하십시오. 장면을 변경하기 위해 전체 파일을 다시 작성하지 마십시오.
- 피해야 할 함정: 첫 번째 빌드 전에
hgm ref traps를 참조하십시오.
8 · 리뷰: 디자이너처럼 보이기 (토큰을 쓸 가치가 있는 곳)
hgm stills 0,1,3,6,10,...(12–18회, 액션 중간 포함)은review/contact.jpg를 작성합니다. 한 번 보고 취향 체크리스트에 따라 판단하십시오: 0, 1, 3, 10초에서 훅; 비트당 하나의 히어로; 얼굴을 가리는 것 없음; 단지 "존재"하는 것 없음; 계획에 따라 장면이 변경되는가, 아니면 연속된 프레임이 하나의 배경을 공유하는가?; 누군가 AI가 만든 것이라고 생각할까?- 발견한 모든 것을 한 번에 수정한 후, 변경된 순간에만
hgm stills를 실행하십시오. 확대(hgm zoom)는 판단하는 단 하나의 항목에만 사용하십시오.
9 · 빌드 및 전달
hgm build(렌더, 믹스, 머지; 백그라운드에서 실행) 후,hgm frames 0.2,<중간>,<끝>을 실행하고 최종 MP4의 프레임을 확인하십시오.hgm cover <t>는 평범하고 타입이 없는 커버를 만듭니다.- MP4와 커버를 보내십시오(SendUserFile). 길이, 브리프와의 변경 사항, 확인할 수 없었던 점(Claude는 들을 수 없음: 믹스는 레벨과 타이밍으로 확인됨)을 말하십시오.
CREDITS.md를 완전히 유지하십시오. 피드백이 오면 그것만 정확히 적용하고, 해당 프레임을 다시 확인한 후, 다시 빌드하십시오.
토큰 예산
처음 세 편의 영화에서 측정됨(Pemberton 338턴, Hyderabad 116턴, Wright brothers 72턴): 매 턴마다 전체 대화를 다시 읽으므로, 비용은 턴 수 × 컨텍스트 크기입니다. 채팅은 아무 작업도 하기 전에 약 90K 토큰에서 시작합니다. 스크린샷, 시트 또는 cat은 컨텍스트에 남아 이후 모든 턴에서 다시 비용이 청구됩니다. 따라서:
- 턴 수를 줄이십시오. 독립적인 명령어를 하나의 도구 호출로 묶으십시오(
hgm stills … && hgm frames …). 수정 목록을 계획한 후 한 번에 적용하십시오. - 출력을 작게 유지하십시오. 참조 파일, 이전 영화 또는 로그에 대해
cat,ls또는sed대신hgm명령어를 사용하십시오.hgm ref,hgm api및hgm state는 필요한 것만 출력합니다. JSON, 전체 음성 목록을 두 번 또는 영화 파일을 절대 출력하지 마십시오. 긴 도구 출력은 파일로 리디렉션하고tail -3로 확인하십시오. - 이미지는 작게, 적게 사용하십시오. 리뷰 라운드당 하나의 콘택트 시트; 220px 프레면 판단하기에 충분합니다. 원시 스틸, 원시 다운로드 또는 전체 크기 프레임을 절대 읽지 마십시오. 대신 크롭하여 확대하십시오.
- 기계적인 작업은 하위 에이전트에게(
model: "sonnet"): 자산 검색 및 다운로드, 자르기 및 리깅 확인, 렌더, 크레딧. 이들은 짧은 목록과 하나의 시트를 반환합니다. 메인 모델은 개념, 대본, 스타일, 선택 및 디자이너 리뷰에 사용하십시오. - 컨텍스트가 무거워지기 전에 인계하십시오. 컨텍스트가 약 200K 토큰(또는 윈도우의 40%, 먼저 도달하는 것; 약 50개의 도구 호출)에 도달하면, 현재 단계를 마치고
hgm handoff를 실행한 후 "Next" 항목을 채우고 사용자에게 알리십시오: "새 채팅에서 계속하세요:continue <슬러그>." 새 채팅은 HANDOFF.md와hgm state에서 약 5K 토큰으로 재개됩니다.
| 단계 | 메인 채팅 턴 수 | 추가될 수 있는 컨텍스트 |
|---|---|---|
| 선택기 + 예상 | ≤ 4 | ≤ 8K (시각화 가이드가 대부분) |
| 설정 | ≤ 3 | ≤ 2K |
| 연구 (하위 에이전트가 FACTS.md 작성) | ≤ 2 | ≤ 3K (검색 결과 대신 FACTS.md만 읽음) |
방향 (+ hgm ref) | ≤ 6 | ≤ 12K |
| 음성 | ≤ 4 | ≤ 4K |
| 자산 (하위 에이전트가 검색 수행) | ≤ 6 | ≤ 10K (결합 시트 1개 + explode 시트 1개) |
| 애니메이션 (영화 파일 한 번 작성) | ≤ 8 | ≤ 25K (작성하는 영화 파일) |
| 리뷰 (≤ 4 콘택트 시트) | ≤ 12 | ≤ 12K |
| 빌드 + 전달 | ≤ 4 | ≤ 4K |
| 전체 영화 | ≤ 50 | 약 ~180K 이하로 종료 |
개념, 스타일 선택 및 디자이너 리뷰에 자유롭게 토큰을 사용하십시오. 이들이 영화를 만듭니다. 예산은 설비에서 나오며, 절대 외관에서 나오지 않습니다.
절대 타협 불가
- 음성: ElevenLabs만 사용합니다.
- 이미지: 아카이브 우선; 필요시 ChatGPT 이미지. Higgsfield는 절대 사용하지 않습니다. AI 비디오는 사용하지 않습니다. 코드로 캐릭터, 일러스트레이션 또는 엠블럼을 절대 그리지 않습니다.
- 엔진: canvas + anime.js + FFmpeg. 진정한 3D에만 three.js 사용; 물리적 조명이 아이디어인 경우에만 Blender 사용.
- 크레딧 및 키: 모든 소스에 크레딧을 표시합니다. 사용자의 이메일이나 개인 정보를 요청에 절대 포함하지 마십시오. 키를 절대 출력하지 마십시오.