Faceless reels – 무페이스 릴스
이 스킬은 실제 릴스("This voice is not me", 2026년 11월 출시)에서 검증된 제작 체인을 재현합니다. 목표: 1080×1920, 30fps, 60~120초 길이의 릴스로, 모든 요소가 음성에 맞춰 제자리에서 변형되며 시청자의 시선을 끝까지 사로잡습니다.
설정
개인 설정은 이 스킬 루트의 config.json에 저장됩니다. 파일이 없으면 config.example.json을 config.json으로 복사하고 사용자에게 누락된 항목(최소 elevenlabs_voice_id)을 입력하도록 요청하세요. 실행 시작 시마다 이 파일을 읽습니다. 아래 <skill>은 이 스킬의 폴더를 의미합니다.
| 키 | 용도 |
|---|---|
creator_name | 보고서에서 사용자를 지칭할 이름 |
language | 릴스의 기본 언어(음성, 자막, 화면 텍스트). 다른 언어로 요청 시 무시됨 |
elevenlabs_voice_id, elevenlabs_model | 복제된 목소리 |
whisper_model | 검증에 사용할 로컬 whisper.cpp 모델 |
projects_root | 이전 릴스 프로젝트 위치(node_modules 재사용) |
cta | 릴스 언어로 된 세 가지 종료 액션의 정확한 문구 |
guides_page | 사용자 바이오에 링크된 가이드 페이지 |
timezone, publish_hour, caps, telegram_env | 자율 모드 전용 |
사용자 규칙
- 간결하고 직설적으로 작성하세요. 화면이나 메시지에서 대시(—)나 군더더기 표현을 사용하지 마십시오.
- 릴스 언어의 타이포그래피를 따르세요. 프랑스어의 경우
: ? !앞에 띄어쓰지 않는 공백(non-breaking space)을 사용하고, "5 réglages" 내부와 « » 따옴표를 사용합니다. - 음성은 절대 잘리지 않습니다. 오직 애니메이션만 편집됩니다. 길이 변경이나 무음 제거가 없습니다.
- 영상에 얼굴이 나오지 않습니다. 단, 커버는 사용자의 사진을 사용합니다.
- 커버는 항상 영상의 첫 번째 프레임이며, 별도 파일로도 제공됩니다.
- 엔딩은 항상 세 가지 동작을 수행합니다: 가이드를 받기 위해 구독, 바이오 링크 클릭, 키워드 입력. 음성, 자막, 화면(SUBSCRIBED 버튼, LINK IN BIO 버튼, 키워드 입력 필드)에 모두 표시됩니다. 키워드는 가이드와 주제에 직접적으로 관련되며, Claude가 제안합니다. "링크 인 디스크립션"이 아닌 "링크 인 바이오"라고 말하세요. 가이드 페이지는 사용자의 바이오에 있습니다.
- 모든 말은 사실이어야 합니다: 지어낸 숫자, 출처 없는 최상급 표현, 가짜 스크린샷이 없어야 합니다. 실제 경험이 약속보다 낫습니다.
- 화면에 토큰, 비밀번호, 키가 표시되지 않아야 합니다.
- 각 릴스의 캡션: 최대 5개의 해시태그, 링크 없음, 모든 네트워크에서 동일합니다. 항상 가이드를 받는 방법으로 끝나야 합니다. 예: "다섯 가지 프롬프트는 가이드에 복사-붙여넣기 준비되어 있습니다. 받으시려면: 구독하고, 바이오 링크로 이동한 다음 키워드 FIVE를 입력하세요."
- 복제된 목소리를 사용한 무페이스 릴스: 게시 시 AI 생성 콘텐츠임을 명시하세요(예: Blotato에서 TikTok은
isAiGenerated: true, YouTube는containsSyntheticMedia: true). - 음악은 음성 아래 0.05로, 그 이상 크면 안 됩니다.
- 유료 생성 비용을 사전에 공지하세요. 사용자가 이미 Atlas Cloud 또는 ElevenLabs를 요청에서 승인했다면 공지 후 진행합니다. 그렇지 않으면 동의를 기다립니다.
- 중단 없이 끝까지 진행하고, 자신의 작업을 확인하며, 무엇이 검증되었고 무엇이 검증되지 않았는지 명확히 말하세요. 자율 모드가 아닌 이상 사용자가 요청하지 않으면 게시하지 마십시오.
- 작은 시스템(8GB RAM): 한 번에 하나의 Remotion 번들, 백그라운드 렌더링, 마지막에 중간 파일 정리.
단계
시작할 때 모든 것을 계획하세요. 각 단계에는 가이드가 있으며, 해당 단계에 도달하면 읽으십시오.
- 위치 확인. 비디오 폴더, 참고 릴스(파일 또는 링크), 주제, 사용자의 커버 이미지(비디오 폴더의
cover.png, 없으면<skill>/assets/cover/cover-template.png임을 알림), 여유 디스크 공간(df -h /). 유용한references/와 프로젝트 메모리를 읽습니다. - 참고 릴스 분석 (있는 경우): 오디오 추출, Scribe로 전사, 비디오 프레임 단위 검토,
_reel/reference/reel_analysis.md작성.references/script.md참조. - 스크립트 및 가이드 작성:
_reel/script.md에 각 주장의 진실성과 함께 작성.references/script.md참조. - 프로젝트 생성:
zsh <skill>/scripts/new_reel.sh "<video folder>", 그 다음remotion/reel.json채우기.references/editing.md참조. - 무료 애니메틱:
python3 <skill>/scripts/fake_words.py, 그 다음python3 scripts/build_reel.py(reel.json검사 후 몇 장의 스틸 생성). 스크립트가 화면에 맞습니까? - 음성: ElevenLabs 2회 녹음, 선택된 테이크에 Scribe 단어 타임스탬프, 컷 없이 처리.
references/voice.md참조. - Atlas Cloud 오프닝 샷 (선택 사항, 권장): 시작 이미지, 종료 이미지, Kling, 음성에 맞춰 리타이밍.
references/opening-shot.md참조. - 씬:
src/reel/BRIEF.md를 비트별로 작성한 후, 씬 그룹당 하나의 에이전트(병렬 실행)와 하나의 검토 에이전트.references/editing.md및references/scene-rules.md참조. - 커버: 클릭을 유도하는 제목과 로고.
references/cover.md참조. - 스틸로 확인, 수정, 렌더링: 백그라운드에서
zsh scripts/render_final.sh실행 (90초 기준 10~15분 소요). - 최종 파일 검증 및
exports/instagram.md작성.references/checks.md참조. - 마무리: 프로젝트 README, 프로젝트 메모리, 중간 파일 삭제, 파일 전송, 남은 검토 또는 결정 사항 요약.
자율 모드
요청이 예약된 작업에서 오거나 사용자가 inspiration/ 폴더 처리를 요청한 경우 references/autonomous-mode.md를 따르십시오: 질문 없음, 비용 한도, 가이드, 예약 게시, 알림.
릴스가 효과를 발휘하는 요인
- 3초 이내의 후크, 증거 또는 약속과 함께, 커버 다음 첫 프레임부터 읽을 수 있어야 함.
- 눈에 보이는 오픈 루프: 번호가 매겨진 N개의 빈 상자가 진행률 표시줄 역할.
- 동일한 형태의 N개 요소, 난이도와 가치가 증가하고 가장 좋은 것은 마지막에, 재후크(re-hook)로 예고.
- 단일 샷: 동일한 배경, 동일한 창. 하드 컷 절대 없음.
- 모든 등장이 말하는 단어와 일치, 화면에 1.5초 이상 변화 없음 없음.
- 번개 요약, 이어서 시청자의 주제 인식을 바꾸는 펀치라인.
- 동작으로 이루어진 엔딩, 말로만 아니라 보여줌: 커서가 구독하고, 바이오 링크를 클릭하고, 키워드를 입력.
- 루프: 마지막 문장이 첫 문장으로 돌아가고, 마지막 프레임이 다시 첫 프레임이 됨.
가이드
| 읽을 시점 | 가이드 |
|---|---|
| 참고 분석, 스크립트 작성, 키워드 및 가이드 선택 시 | references/script.md |
| 음성 생성, 단어 얻기, 컷 없이 사운드 처리 시 | references/voice.md |
| 오프닝 샷 프롬프트 및 리타이밍, 비용 확인 시 | references/opening-shot.md |
프로젝트 레이아웃, reel.json, 에이전트, 스틸 확인, 렌더링 시 | references/editing.md |
| 씬을 작성하는 에이전트에게 줄 규칙 확인 시 | references/scene-rules.md |
| 제목, 로고, 형식, 첫 프레임 배치 시 | references/cover.md |
| 최종 파일 검증, 캡션, 사람에게 남은 작업 확인 시 | references/checks.md |
inspiration/ 폴더 파일을 참고부터 예약 게시까지 단독 처리 시 | references/autonomous-mode.md |
assets/reel-template/은 Remotion 프로젝트입니다. assets/example-this-voice/에는 검증된 전체 릴스(스크립트, 분석, 실제 씬, 브리프)가 있습니다. 이것이 품질 기준입니다: README.md를 읽고, 씬을 작성하기 전에 최소한 Stakes.tsx와 Setting2.tsx를 읽으십시오. assets/example-6-tools/에는 순위 또는 계층 목록에 재사용 가능한 씬이 있습니다.
이미 치른 교훈
- 두 번 녹음 시 Scribe가 두 번째 테이크를 전사했습니다: 결과에서
source.url을 읽고 실제로 전사된 테이크를 유지하십시오. - Scribe의
words.json에는 태그([softly])와 ":"가 단어로 포함되어 있습니다: 이를 제거하고scribe_words.json에는{"words": [...]}형태를 유지하십시오. - "Subscribe" 직전의 문장이 창을 비워 두었습니다:
CtaGuide.tsx가 이 시간 동안 "Save"를 표시하도록 수정되었습니다. - 차임과 반짝임 효과가 키워드와 펀치라인을 덮었습니다(키워드에서 음성 -1.9dB): 템플릿에서 볼륨을 낮췄습니다. 여전히 가장 빡빡한 구간을 확인하십시오.
- Whisper가 어긋나고 오류를 만듭니다: 타임스탬프는 Scribe에서, 텍스트는 스크립트에서 가져옵니다(
build_reel.py가 둘을 정렬). - "Claude"가 포함된 Whisper 프롬프트가 "clone"을 "Claude"로 읽게 했습니다. 프롬프트 없이 확인하고 타임스탬프는
-nt로 문장 건너뛰기. - 후크의 핵심 단어에 배치된 효과음이 음성을 가립니다: 단어 끝 이후에 배치하십시오(최소 7dB 차이, 측정됨).
- 섹션 끝에 정확히 멈추는 씬은 마지막 스탬프를 자릅니다: 씬이 겹쳐지고(
Reel.tsx의STAGES), 문장 시작부터 스탬프가 배치됩니다. - 목록을 알리는 문장 중 빈 창은 어색해 보입니다: 문장 시작부터 점선 슬롯을 배치하십시오.
- 숫자를 단어로 쓰면 자막 페이지가 깨집니다:
build_reel.py가 "5 settings"를 함께 유지합니다. - GPU 렌더링은 세 프레임 중 하나에서 요소를 사라지게 만듭니다: 항상
GL=swangle CONCURRENCY=1사용(render_final.sh에 이미 포함). - 비디오에 3D 변환,
mixBlendMode사용 금지, 고유한 React 키 사용. - chrome-headless-shell이 멈춤:
CHROME_MODE=chrome-for-testing사용(스크립트에 이미 포함). - 렌더 후 문장 수정 시: 검증된 음성 유지하고, 엔딩을 한 조각으로 생성하여 일시 정지에 이어붙이기(
references/voice.md참조). - 커버에서 브랜드 로고가 기호로 축소되면 오독될 수 있음: ElevenLabs의 두 막대가 일시 정지 버튼처럼 보여서, 로고 아래에 이름을 그대로 표기합니다.