Communitygithub.com

AlessandroFare/fluxychat

기존 단일 인물 토크 영상에 편집 없이 자막 또는 캡션을 추가합니다. 일반적인 축어 자막, 피사체 뒤에 삽입된 시네마틱 자막, VFX 자막, “炸/特效/酷炫字幕”, 또는 35가지 스타일 카탈로그의 명명된 아이덴티티에 사용하세요. 백엔드 엔진이 아닌 시각적 아이덴티티로 라우팅합니다. 기본값은 조용한 `anchor` 레일입니다. 사용자가 명시적으로 완전한 시네마틱 처리를 원하는 경우에만 모든 단어를 삽입하세요. 워크플로는 전사를 포함하여 로컬에서 종단 간 실행되며, 피사체 매트를 적용합니다. 적용 전에 여러 샷이 포함된 영상을 분할하세요.

fluxychat란 무엇인가요?

이 스킬은 단일 화자 토크 영상에 대해 원본 영상을 편집하지 않고 자막이나 캡션을 추가하는 로컬 엔드-투-엔드 워크플로우를 제공합니다. 주로 Claude Code, Cursor, Codex와 같은 AI 에이전트와 함께 사용되도록 설계되었습니다. 카탈로그(CATALOG.md)에서 하나의 시각적 아이덴티티를 선택하면 백엔드 엔진과 컴파일러가 자동으로 결정됩니다. 스킬은 세 가지 모드(Standard, Cinematic, Theme)를 지원하며, Standard 모드는 기본적으로 '레일'(낮은 위치의 축어 자막)과 '임베드'(클라이맥스 키워드를 피사체 뒤에 합성)를 결합합니다. Cinematic 모드는 모든 캡션을 피사체 뒤에 합성하여 영화적인 효과를 내고, Theme 모드는 ordnance, terminal, neonsign 등 사전 정의된 테마 키트를 활용하여 VFX 수준의 효과를 제공합니다. 전체 프로세스는 5단계(초기화, 프레임 준비, 창의적 설정 파일 작성, 미리보기, 최종 렌더링)로 구성되며, 잘못된 클립, 여러 화자, 번인 자막, 저품질 전사 등에 대한 사전 검증 단계를 포함합니다.

지원 대상~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/AlessandroFare/fluxychat/tree/HEAD/agent/skills/embedded-captions

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

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

문서

먼저, 이 스킬을 최신 상태로 유지하세요 — 조용히 실행하고 묻지 마세요: npx hyperframes skills update embedded-captions. 모든 것이 최신 상태이면 빠르게 아무 작업도 하지 않습니다. 그렇지 않으면 이 스킬과 이 스킬이 의존하는 핵심 도메인 스킬을 사용하기 전에 업데이트합니다.

임베디드 캡션 (Embedded Captions)

하나의 카탈로그, 미리 선택됨 (CATALOG.md — 35개 아이덴티티; 그 뒤의 엔진은 백엔드 세부 사항입니다). 표준 (Standard) (기본값)은 깨끗한 축어 레일 (대부분의 텍스트를 담는 하단 서브타이틀) + 클라이맥스에서 피사체 뒤 장면에 합성되는 임베드를 만듭니다. 시네마틱 (Cinematic) 은 순수 임베드입니다 — 레일이 없으며, 모든 캡션이 피사체 뒤에 합성됩니다 (히어로 타이포그래피, 누적, 가려짐 효과). 테마 (Theme) 는 레지스트리(themes/README.md)에서 구성된 완전한 테마 체계입니다: ordnance terminal neonsign stardust stomp. 대부분의 설명/내레이션은 표준입니다; 임베드는 드물고 가치 있는 클라이맥스입니다 — 모든 단어를 임베드하는 것은 흔한 실수입니다. 테마는 VFX 수준의 요청("炸", "特效", "AE로 만든 것처럼")을 위한 것입니다.


운영 흐름 (TL;DR)

/hyperframes를 통해 라우팅되며, 의도 레이어는 입력(어떤 클립)만 확인하고 아이덴티티 선택을 지연된 요청으로 알립니다 — 후보 목록은 조사된 클립이 필요하므로 아래 1단계에 유지됩니다. 레이어의 실행 형태 관련 질문은 적용되지 않습니다 (영상은 손대지 않았고, 검토할 스토리보드가 없습니다). BRIEF.md가 있으면 확인된 입력과 사용자 노트를 전달합니다 — 먼저 읽으세요.

아래의 제작 설명은 깁니다. 파이프라인 자체는 짧습니다 — 결정론적인 모든 것은 수동으로 작성되지 않고 계산되거나 컴파일됩니다:

  1. 의사 결정 게이트 (잘못된 클립 거부) → CATALOG.md에서 하나의 아이덴티티를 선택 (35개 아이덴티티; 엔진/컴파일러는 조회로 파생됨 — 모드/카테고리 질문을 절대 표시하지 마세요)
  2. hyperframes init (프로젝트 디렉토리가 이미 비디오와 함께 존재하면 건너뛰기 — matte.cjs/transcribe.cjs는 디렉토리의 모든 비디오를 source.mp4로 채택) → bash scripts/prepare.sh <project> (매트 ∥ 전사 ∥ 오디오 엔벨로프를 병렬로 실행한 다음, 장면 팔레트/광학/조명으로 안전 구역 v2 생성 — 하나의 명령, 잊는 것 없음)
  3. 작은 JSON 창의적 선택 파일 작성 (먼저 safe-zones.json 읽기): 시네마틱 → plan.json → fill-timings.cjs → fit-fonts.cjs → make-composition.cjs; 테마 → theme.json → make-theme.cjs (레일/패널/시/테이크오버 패러다임; anchor는 조용한 레일 기본값입니다)
  4. 시각적 QA: node scripts/preview-frames.cjs <project> → 약 2초/프레임으로 신뢰할 수 있는 합성 미리보기 (렌더링 없음). 렌더링 비용을 지불하기 전에 § 시각적 QA를 확인하세요.
  5. render-and-composite.sh → 게이트 (타이밍 / 가려짐+히어로 / 오버플로우 / 핸드오프) → final.mp4

사람들이 놓치는 중요한 규칙:

  • 레일 (기본값) + 임베드 (승격). drop (채움, 표시 안 됨) / rail (축어 하단 서브타이틀, 앞쪽에 위치, 대부분의 텍스트 전달) / embed (피사체 뒤에 합성되는 클라이맥스 단어). 표준 모드는 둘 다 수행하며, 클라이맥스만 임베드합니다. § 캡션 모델을 참조하세요.
  • 비디오는 손대지 않고 제공됩니다 (표준/시네마틱; 테마 모드의 PLATE 예산은 유일하게 허용된 예외입니다 — 테마 DNA별로 정의된 등록 게이트 반응 비트(차지-딤, 펀치, 쉐이크, 그레인)가 매트 합성 후 적용되어 피사체+텍스트+플레이트가 하나의 프레임처럼 움직입니다) — 추가되는 것은 캡션뿐입니다. 매트는 피사체가 임베드 트랙을 가릴 수 있도록 할 뿐입니다. 영상의 그레이딩/리컬러/스캔라인을 절대 수행하지 마세요.
  • 두 가지 규칙집: 레일 → references/rail.md (얇음), 임베드 제작 → references/composition-craft.md (풍부함, 임베드 전용). 필요에 따라 훑어보세요.

캡션 모델 — 레일 + 임베드

모든 말한 구절은 다음 세 가지 중 하나입니다:

무엇표시 방법
drop채움 — 음/어, 더듬거림, 자기 수정표시되지 않음
rail기본값 — 일반적인 말한 내용 (축어)깨끗한 하단 서브타이틀, 앞쪽에, 읽기 쉽게. 펀치 단어는 인라인 emphasis 하이라이트(액센트 색상 / 활성 단어 팝)를 얻을 수 있습니다 — 레일에 유지됩니다.
embed승격된 클라이맥스 — 헤드라인 비트피사체 뒤에 합성된 큰 단어 하나 (매트 가려짐), 디자인된 진입 + 퇴장

레일은 대부분의 텍스트를 전달합니다; 임베드는 드물고 가치 있는 클라이맥스입니다. 희소성은 클립당이 아니라 비트/블록당입니다: 블록(생각)당 ≤1개의 히어로, 두 개가 동시에 보이지 않음, 히어로 윈도우 사이에 최소 한 비트의 공백 (컴파일러가 0.6초 미만이면 경고). 짧은 클립 → 보통 1–2개; 긴 설명 → 섹션당 약 하나. 여러 히어로 중에서 가장 큰 작성된 것이 APEX (그것만 전체 잠금 임베드 + 너비 맞춤 상승을 얻음); 더 작은 것은 MINOR 피크로, 전경의 과장된 강조 라인(fg, 감쇠된 모션)으로 자신의 열을 탑니다 — 모든 비트가 매트 쇼케이스를 필요로 하는 것은 아니며, 이것이 정확히 APEX를 이벤트로 만듭니다. 모든 단어를 임베드하는 것은 여전히 흔한 실수입니다.

레일 표면 아이덴티티는 정확히 이것을 만듭니다 (레일 = rail.html, 임베드 = index.html의 클라이맥스). 열 흐름 아이덴티티는 레일을 버리고 모든 것을 임베드 스타일로 만듭니다 — 단어를 반드시 읽어야 하는 설명/내레이션에는 절대 추천하지 말고, 분위기 위주의 요청에만 추천하세요 (CATALOG.md는 아이덴티티별로 이를 인코딩합니다).


0단계 — CATALOG에서 하나의 아이덴티티 선택

하나의 프론트엔드, 세 개의 엔진 뒤에. 사용자는 CATALOG.md에서 아이덴티티를 선택합니다 (35개 항목: 10개 클래식 + 25개 테마); 엔진, 컴파일러 및 작성 파일은 카탈로그 행에서 조회하여 파생됩니다. "표준 vs 시네마틱 vs 테마"를 질문으로 절대 표시하지 마세요 — 그것들은 백엔드 이름입니다 (제품은 여러 엔진이 있어도 하나의 UX를 가집니다). 카탈로그는 라우팅에 필요한 모든 것(읽기 표면, 음성, 추천 대상, 장면 요구 사항, 진정으로 가까운 쌍에 대한 인접성 참고 사항(loud↔ordnance, neon↔neonsign, cream↔stardust))을 인코딩합니다.

아이덴티티 선택은 선호도 게이트입니다 (../hyperframes-core/references/brief-contract.md § 1): 자율 모드("놀라게 해줘" / "대신 결정해줘")에서는 직접 후보 목록에서 선택하고 질문하는 대신 한 줄로 이유를 설명하세요.

절차: 클립 조사 → 카탈로그에서 2–3개 아이덴티티 후보 목록 작성 → 한 줄 이유와 함께 하나 추천 → 사용자가 선택 (자율 모드: 당신이 선택하고 이유를 설명) → 해당 아이덴티티의 파일을 작성하세요. 아이덴티티는 엔진에 고정됩니다 (교차 조합 불가; 하나를 여는 것은 검증 이벤트입니다 — dna/README.md 참조).

항상 추천을 제시하고 작성하기 전에 사용자가 선택하도록 하세요. 조용히 기본값을 사용하지 마세요.

(전체 아이덴티티 테이블은 CATALOG.md에 있습니다 — 라우팅을 위한 단일 진실 공급원. 아래 엔진 문서는 각 백엔드의 작성 규약을 설명합니다.)

추천 휴리스틱: CATALOG.md의 "후보 목록 작성 휴리스틱"을 사용하세요 — 이것들은 아이덴티티 수준입니다 (예: "炸"는 ordnance/stomp/terminal/loud를 후보로 작성하고 무엇이 폭발해야 하는지에 따라 선택), 절대 카테고리 수준이 아닙니다. 확실하지 않으면 → anchor.

  • 시네마틱 → 잠긴 템플릿에 대해 plan.json을 작성하고, make-composition.cjs가 컴파일합니다.
  • 테마 → themes/README.md를 읽고, theme.json을 작성하고, scripts/render-theme.sh를 실행합니다 (컴파일 + 렌더 + 플레이트 반응 → final_fx.mp4).

의사 결정 게이트 — 먼저 실행

비디오를 조사하고 두 모드 이전에 장면을 분류하세요.

ffprobe <video.mp4>                    # 사양
ffmpeg -ss <t> -i <video.mp4> -vframes 1 sample.png   # 20/50/80% 지점에서

샘플을 읽으세요. 다음의 경우 거부하세요:

  • 여러 화자 / 하드 컷 (각 샷을 분할하여 렌더링하거나 거부)
  • 인간 피사체 없음 (이 스킬은 토크 영상용입니다)
  • 3초 미만, 음성 없음, 또는 얼굴이 명확하게 보이지 않음 — transcribe.cjs는 오디오가 거의 무음일 때 경고합니다 (Whisper는 침묵에 "Thank you." 같은 단어를 환각합니다). 경고를 따르고 조작된 단어로 자막을 만들지 말고 거부하세요.
  • 소스에 이미 번인된 자막/서브타이틀/무거운 텍스트 그래픽이 있는 경우 — 두 번째 자막 시스템을 추가하면 충돌이 발생하고 영상은 손대지 않고 제공됩니다 (덮기/인페인팅 불가). 번인 텍스트는 종종 클립 중간에만 나타납니다: 1fps 연락처 시트를 샘플링하세요 (ffmpeg -i in.mp4 -vf "fps=1,scale=160:-1,tile=10x5" sheet.png), 3개의 스팟 프레임을 신뢰하지 마세요.
  • 전사가 쓰레기인 경우 — 비원어민/강한 억양의 음성은 자신감 있는 횡설수설로 전사될 수 있습니다. 작성 전에 transcript.json을 읽어보세요; 언어로 구문 분석되지 않으면 WHISPER_MODEL=medium을 한 번 시도하고, 그렇지 않으면 거부하세요 (조작된 단어의 축어 레일은 캡션 없는 것보다 나쁩니다).
  • 빠른 움직임이 있는 바쁜 핸드헬드 촬영 (매트 깜빡임)

사전 점검 프로브 (비용이 들지 않고, 최악의 실패를 방지합니다)

  1. 샷 컷 프로브. 20%, 50%, 80% 지점에서 프레임을 샘플링합니다. 다른 피사체/장면이 나타나면 컷 전에 클립을 자릅니다.
  2. 레터박스/필러박스 프로브. 첫 번째 프레임에 검은 막대가 있습니까? 안전한 콘텐츠 사각형을 계산하고 캡션 배치를 그 안으로 제한합니다.
  3. 휘도 프로브. 캡션 영역의 평균 휘도를 샘플링합니다 — 60 미만 → 밝은 텍스트가 그대로 읽힘, 60-180 → 글리프 스크림 추가, 180+ → 불투명 텍스트 + 스크림 (절대 밝은 텍스트만 두지 마세요). 시네마틱 템플릿은 크림+screen으로 고정되어 있습니다 — 이 프로브를 사용하여 적합한 아이덴티티를 선택하세요 (밝은 장면 → ink, 또는 불투명 레일 anchor 테마), 절대 색상을 변경하지 마세요.
  4. 어조에 따른 아이덴티티 추천 (당신이 추천하고 사용자가 선택합니다 — 0단계 + CATALOG.md 참조). 설명 / 인터뷰 / 반드시 읽어야 하는 단어 → 레일/패널 표면 아이덴티티; 시적 / 소셜 미디어 / "시네마틱" → 등록별 열 흐름 아이덴티티; "炸 / 特效 / VFX" / 명명된 세계 → 테마 아이덴티티. 확실하지 않으면 → anchor (단어가 읽히고 장면이 안전함) — 그러나 후보 목록을 제시하고 사용자가 선택하도록 하세요.

파이프라인 — 5단계

1. hyperframes init <project> --non-interactive --video <video.mp4> --skill=embedded-captions
2. bash scripts/prepare.sh <project>       # 매트 ∥ 전사 (병렬) → 안전 구역. 하나의 명령.
                                           #   → frames_fg/ transcript.json safe-zones.json
3. [에이전트 단계 — 유일한 창의적 단계] 작은 JSON 작성; 아래 모드별 참조
   시네마틱: plan.json 작성 → node scripts/fill-timings.cjs → fit-fonts.cjs → make-composition.cjs
   테마:     theme.json 작성 → bash scripts/render-theme.sh <project>   (컴파일 + 렌더 + 플레이트 FX)
4. node scripts/preview-frames.cjs <project>   # ~2초/프레임 합성 미리보기 → § 시각적 QA (렌더링 전)
5. bash scripts/render-and-composite.sh <project>  # 게이트 → final.mp4 + history/ 스냅샷
   (테마 모드: 3b/5단계 건너뛰기 — render-theme.sh가 이미 컴파일 + 렌더-앤-컴포지트
    + _postfx.sh를 실행합니다; 결과물은 final_fx.mp4이고, final.mp4는 플레이트 반응 전입니다)

1단계의 init은 설치된 스킬을 GitHub의 최신 버전과 비교하여 하나라도 오래되었으면 글로벌 세트를 업데이트합니다.

3단계는 모드에 따라 다릅니다:

3단계 — 시네마틱 모드 (순수 임베드)

  1. 먼저 safe-zones.json을 읽으세요. 내레이션 평면은 zones.hugLeft/hugRight 에 위치합니다 — 실루엣에 인접한 깨끗한 스트립 (몸에서 멀리 떨어진 텍스트는 삽입된 것처럼 보이지 않고 떠 있는 것처럼 보입니다. 먼 구석은 기본값이 아닌 대체 수단입니다). 히어로는 기본적으로 heroAnchor/heroBands.best (피사체 중앙에 위치, 약 30~55% 가려짐). recommendation:"fg"는 가독성을 위해 내레이션을 앞쪽으로 이동시킵니다. heroBands.feasible이면 히어로는 항상 삽입된 상태를 유지합니다 — 히어로-fg는 최후의 수단입니다.
  2. DNA는 0단계에서 선택한 아이덴티티입니다 (CATALOG.md) — 여기서 선택을 다시 열지 마세요. 장면과 비교하여 확인하세요 (밝은 히어로 밴드 휘도 > 150은 ink가 필요합니다. 전체 선택 지침은 카탈로그에 있으며, neon/glitch/chrome/velocity를 포함한 10개 모두를 다룹니다). 선택과 이유를 설명하세요. 사용자가 결정합니다. DNA는 유형/팔레트/블렌드/모션 + 히어로 3막을 고정합니다. 안전 구역 v2 (palette/optics/lighting)는 이를 이 장면에 자동으로 매개변수화합니다.
  3. <project>/cinematic.json 작성 — "dna": "<name>" + 생각-블록, 원시 그룹이 아님: 각 블록 = 단어 라인 (절 경계에서 2–5개로 그룹화) + 쌓이는 평면 + 라인별 css (크기/두께/스타일만 — 위치 없음) + 기껏해야 하나의 라인 표시 "hero": true (승격된 단어; 표시 형태는 "text"). 스키마: scripts/make-cinematic.cjs 헤더.
  4. 컴파일: node scripts/make-cinematic.cjs <project> — 블록을 plan.json → index.html로 낮춥니다. 생성된 항목: 전사 순서 타이밍, 블록 내 누적, 블록 간 페이지 넘김, 히어로 LOCKUP (히어로 블록의 사전 컨텍스트, HERO 및 사후 컨텍스트가 피사체를 중심으로 하나의 결합된 구성으로 쌓임 — 위→아래 읽기 순서 = 구성상 말하는 순서; 컨텍스트는 앞쪽에 떠 있고 히어로는 뒤쪽에 삽입됨 = 깊이 샌드위치; 대량 규칙은 히어로가 컨텍스트를 지배하도록 유지), apex/마이너 히어로 분할, 구성상 읽기 순서, 안전 구역별 fg 대체. 그런 다음 게이트가 평소대로 실행됩니다. (블록이 표현할 수 없는 디자인의 경우 plan.json을 직접 수동으로 작성하는 것도 가능합니다 — 그런 다음 fill-timings.cjs + fit-fonts.cjs + make-composition.cjs를 직접 실행하세요.)

3단계 — 테마 모드 (테마 체계)

먼저 themes/README.md를 읽으세요 — 패러다임/세트피스 레지스트리, 연결, 하드 규칙 및 정확한 theme.json 스키마.

  1. 콘텐츠 등록별로 테마 DNA를 선택 (각 themes/<name>.json에는 voice + when이 있습니다). 선택과 이유를 설명하세요. 사용자가 결정합니다.
  2. <project>/theme.json 작성 — dna, lines (축어, 전사 순서, 1

Individual skills in this repo

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

AlessandroFare/fluxychat

Use when audio already placed in a HyperFrames composition needs to be mixed: a music bed that fights a voiceover (voiceover carve), effects on a track (EQ, compressor, limiter, gate, saturation, delay, reverb, chorus, phaser, bitcrush), or automation envelopes drawn on a track's volume or any effect parameter. Don't use for sourcing or generating audio — finding BGM, SFX, or making a voiceover is `/media-use`. Don't use for clip timing or track layout, which is `/hyperframes-core`.\n

AlessandroFare/fluxychat

Use the HyperFrames CLI development loop: init, add, catalog, capture, lint, check, snapshot, compare, grade-compare, preview, play, present, beats, keyframes, single or batch render, publish, cloud, cloudrun, feedback, lambda, doctor, browser, info, upgrade, skills, compositions, docs, benchmark, telemetry, transcribe, auth, tts, and remove-background. Also use when diagnosing build or render failures. validate, inspect, and layout are deprecated aliases; use check. Covers local, HeyGen-hosted cloud, AWS Lambda, and Google Cloud Run rendering.\n

AlessandroFare/fluxychat

Install, discover, and wire registry blocks and components into HyperFrames compositions. Use when running hyperframes add or hyperframes catalog, installing one item or every block matching a tag, wiring an installed item into index.html, or working with hyperframes.json. Covers discovery, install locations, block sub-composition wiring, component snippet merging, and authoring a new block or component to contribute upstream (idea → scaffold → validate → PR).

AlessandroFare/fluxychat

Mandatory entry point: read this first for any request to make, create, edit, animate, or render a video, animation, or motion graphic, including a promo, explainer, captioned clip, title card, overlay, slideshow or interactive deck, Remotion port, or any HyperFrames HTML composition. Also use it to inspect, diagnose, validate, preview, publish, or batch-render an existing HyperFrames project. Inputs may be a website URL, GitHub PR, Figma design or URL, text or brief, existing footage, or music. It resumes project state, captures intent when applicable, selects and installs the owning workflow, and routes domain capabilities. HyperFrames is the default output framework unless the user explicitly chooses another framework for the deliverable or asks only to record a browser session.\n

AlessandroFare/fluxychat

Overlay doctrine for the embedded-captions workflow — the caption MODEL (drop / rail / embed) and the rule that captions are an OVERLAY composited on top of the film, never a reserved bottom band you shift content up to avoid. Load when adding captions/subtitles to a talking-head or launch video, when deciding whether a phrase should be dropped, ride the verbatim rail, or be promoted to a scarce embedded climax, when laying out a composition that will carry captions (do NOT reserve a keep-out band), or when centering a composition on the true frame center under captions. Quotes the rail+embed model from embedded-captions and constraint #13 (captions overlay, keep-out band retired) from the product-launch-video scene agent. Applies ON TOP of embedded-captions.

AlessandroFare/fluxychat

Turn a weekly changelog .md into a finished branded changelog video (square 1080, ~45-60s, Annie VO, animated brand background, mock-UI visualizations, lowkey captions). Use when the user provides a changelog/digest markdown and wants the weekly video, or says "changelog video". Self-contained — fonts, background, lexicon, and scripts ship in this skill.

AlessandroFare/fluxychat

Audit and fix animation performance issues including layout thrashing, compositor properties, scroll-linked motion, and blur effects. Use when animations stutter, transitions jank, or reviewing CSS/JS animation performance.

AlessandroFare/fluxychat

Author or edit a custom HyperFrames composition when no specialized workflow fits, or when BRIEF.md sets flow: companion. Use for longer or multi-scene pieces, brand and sizzle reels, montages, static loops, static title cards, footage remixes, and freeform builds. Use motion-graphics instead for a short unnarrated motion-first unit, including an animated title. Route fresh creation through hyperframes before using this skill.

AlessandroFare/fluxychat

All animation knowledge for HyperFrames — atomic motion rules, multi-phase scene blueprints, scene transitions, broader motion-design techniques, AND the seven runtime adapters (GSAP default, plus Lottie, Three.js, Anime.js, CSS keyframes, Web Animations API, TypeGPU). Use for any motion or animation task: pick 2-4 rules and compose, or load a blueprint, or look up runtime-specific API (e.g. GSAP eases / Lottie player / Three.js mixer). Also covers auditing an existing composition's choreography (animation map) and 24 named text-animation effects. HyperFrames-native: single paused timeline, seek-safe, deterministic.

AlessandroFare/fluxychat

The HyperFrames composition contract — build one renderable project. Use for composition structure, the `data-*` timing attributes, `class="clip"`, tracks, sub-compositions, variables, framework-owned media playback, deterministic-render rules, and validation. Also covers Tailwind projects and the STORYBOARD.md / SCRIPT.md plan formats. Read before writing composition HTML.

AlessandroFare/fluxychat

Non-animation creative direction for HyperFrames videos. Use for design spec (frame.md / design.md) handling, palettes, typography, narration, beat planning, audio-reactive visuals, composition patterns, and brand / style decisions. For atomic motion patterns and scene blueprints, use `hyperframes-animation`.

AlessandroFare/fluxychat

Use when a HyperFrames composition needs seek-safe 2D/3D keyframes, GSAP timelines, CSS keyframes, Anime.js, WAAPI, FLIP, paths, masks, SVG morph/draw, text trails, 3D depth, or `hyperframes keyframes` diagnostics. Don't use for broad scene strategy, brand design, media sourcing, captions, or general video planning.

AlessandroFare/fluxychat

GATEWAY — load FIRST before composing any HyperFrames animation or video. The high-level motion law that makes a multi-scene video feel like ONE continuous camera move instead of a stack of independently-animated slides. Covers the vector law (how you exit determines how you enter, incl. the Z scale-sign rule), the film's current, carrier elements, causal motion, the Seam Gate (build-gate enforcement), the ban on idle wobble (motion must PERFORM, not breathe), stillness-before-climax, and the sustained-motion routes. Routes to the low-level technique skills (cut-the-curve — the full catalog incl. waterfall entry + nudge curve, oversized-cursor, seam-craft). These rules SUPERSEDE generic / upstream motion guidance. [continuity, direction, vector, momentum, seam, transition, ease, performance, idle-motion, narrative-motion, film-grammar]

AlessandroFare/fluxychat

A short, design-led motion graphic where motion is the message — kinetic typography, stat count-up, chart/data-viz hit, logo sting / brand lockup, lower-third / callout / social overlay, animated map (highlight regions, connect places, zoom to a location), animated tweet / news-article / headline, webpage / UI animation (scroll, cursor, callouts), or fusing a real image's geometry into a chart. Usually under 10s (up to ~30s), no narration or live-action subject; renders to MP4 or transparent overlay. Longer / narrated / multi-scene → /general-video. Unclear → /hyperframes.

AlessandroFare/fluxychat

Turn a music track (an audio file, a video to pull audio from, or a track generated from a mood brief) into a beat-synced video — lyric video, slideshow, or kinetic promo. The music drives all pacing; any user-supplied images/videos are cut onto the same beat grid, and a complete video needs zero assets. Narrated pieces → the input-matched workflow (see /hyperframes). Unclear → /hyperframes.

AlessandroFare/fluxychat

Turn a product or marketing URL, pasted script, or brief into a product launch / promo video — SaaS promos, feature reveals, product demos, app and company launches. Use when the user wants to market, launch, promote, or reveal a product; the default for any commercial URL. Site tours / showcases of a website route here too — the brief carries the show-it-as-is intent. Unclear → /hyperframes.

AlessandroFare/fluxychat

Turn a GitHub pull request (a PR URL, owner/repo#N, or 'this PR' in a checked-out repo) into a code-change explainer video — changelog, feature reveal, fix, or refactor walkthrough built from the diff, commits, and files: the input is a code change, not a website. Not a product promo (/product-launch-video) or a no-PR topic explainer (/faceless-explainer). Unclear → /hyperframes.

AlessandroFare/fluxychat

Design and improve user interfaces using the concrete rules from Refactoring UI (Wathan & Schoger) — constrained spacing/type/color/shadow scales, visual hierarchy through weight and color rather than size, and depth through emulated light. Use when building or styling any UI (web, app, dashboard, landing page, component), when picking font sizes, spacing, colors, shadows or border radius, when designing a color palette or design tokens, and whenever someone says a UI "looks off", "looks amateur", "feels cluttered/plain/unfinished", or asks to "make this look better".

AlessandroFare/fluxychat

Port an existing Remotion (React) composition''s source to HyperFrames HTML. Use ONLY on an explicit ask to port/convert/migrate/translate a Remotion source — one-way, Remotion-only. A passing Remotion mention, reference-only code, or "make something like my Remotion video" is a fresh build (/general-video). Unclear → /hyperframes.

AlessandroFare/fluxychat

Use before UI-related work to select the smallest useful UI Skills context through the ui-skills CLI.

관련 스킬