Communitygithub.com

tasteforge-video

파일 기반 멀티모달 이미지, 비디오, 3D 에셋 발견; 취향 인터뷰; 증류 또는 적용 워크플로우; 스타일 팩 검증; 편집 가능한 EDL/FCPXML 내보내기; 출처 감사; 그리고 제공자 생성 전에 반드시 실패-종결되어야 하는 오프라인 계획에 사용됩니다.

tasteforge-video란 무엇인가요?

TasteForge Video는 '이 레퍼런스처럼 느껴지게 해줘'라는 모호한 요청을 반복 가능하고 검증 가능한 워크플로우로 전환하는 AI 에이전트 스킬입니다. 주로 Claude Code, Cursor, Codex와 같은 AI 에이전트 환경에서 사용되며, ECC(Enhanced Creative Coding) 패키지 내에 포함된 `tasteforge` 엔진을 기반으로 합니다. 이 스킬의 핵심은 로컬, 결정론적, 오프라인 연산과 제공자(예: Fal) 생성을 엄격히 분리하는 것입니다. 사용자가 비디오 취향을 인터뷰하고, 이를 구조화된 스타일 팩으로 증류하며, 팩을 검증하고, 로컬 미디어에 적용한 다음, 편집 가능한 EDL(CMX3600) 또는 FCPXML 1.9 타임라인을 내보낼 수 있습니다. 제공자 생성(예: AI 기반 비디오 생성)은 별도의 승인된 실행 경로에서만 가능하며, 이 스킬 내에서는 절대 호출되지 않고 실패-종결됩니다. 또한, 멀티모달 발견(이미지, 비디오, 3D 에셋)과 출처 감사 기능을 제공하여 모든 산출물의 투명성을 보장합니다. 이 스킬은 Resolve 어댑터와의 호환성을 유지하며, `Ito-Markets/ito-video`와 같은 예제 프로젝트에서 소비됩니다.

지원 대상~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/affaan-m/everything-claude-code/tree/main/skills/tasteforge-video

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

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

문서

TasteForge Video

완전한 독립형 크리에이티브 파이프라인을 위해서는 taste-distillation을 먼저 사용한 다음 taste-application을 사용하세요. 해당 ECC 스킬은 Python 스크립트를 직접 제공합니다: 레퍼런스 측정, 기존 테이크 생성 또는 전달, 등급, 컷, 합성, 검증, 그리고 Blender 및 Resolve로 전달합니다. 해당 워크플로우에는 별도의 비디오 저장소가 필요하지 않습니다. 이 스킬은 ECC의 패키지된 오프라인 엔진과 엄격한 증거 계약을 문서화합니다.

TasteForge는 "이 레퍼런스처럼 느껴지게 해줘"를 반복 가능하고 검사 가능한 워크플로우로 전환합니다: 취향 인터뷰, 구조화된 스타일 팩으로 증류, 팩 검증, 측정된 케이던스와 룩을 로컬 미디어에 적용, 그리고 편집 가능한 타임라인 내보내기. 표준 구현은 ECC 내부 skills/taste-application/scripts/tasteforge/에 제공되는 tasteforge 패키지입니다. Ito-Markets/ito-video는 패키지된 ECC 엔진을 소비하는 예제 프로젝트입니다.

사용 시기

  • 사용자가 비디오 취향에 대해 인터뷰를 요청하는 경우(푸티지 제작 전에 "룩에 대해 물어봐줘", "미학적 방향에 대해 인터뷰해줘").
  • 사용자가 미학을 구조화된 제약 조건으로 증류하려는 경우 — 분위기가 아닌 재사용 가능한 스타일 팩 ("이 레퍼런스들을 팩으로 만들어줘").
  • 사용자가 스타일 팩을 검증하려는 경우 (메타데이터가 완전한가, 스키마가 유효한가, 케이던스가 측정되었는가, 스펙이 증류되었는가?).
  • 사용자가 로컬 푸티지에 스타일 팩을 적용하려는 경우 — 로컬 클립에 대해 팩의 측정된 케이던스로 컷 계획을 결정론적으로 수립.
  • 사용자가 EDL/FCPXML 내보내기를 요청하는 경우 — DaVinci Resolve / Premiere / Final Cut으로의 편집 가능한 프레임 정확한 핸드오프.
  • 사용자가 생성된 미디어 출처 감사를 요청하는 경우 — 이 팩, 스펙 또는 컷이 어디서 왔는지; 로컬에서 측정된 것과 제공자가 생성한 것은 무엇인지; 드라이런된 것은 무엇인지.
  • 사용자가 로컬 레퍼런스 파일로부터 파일 기반 멀티모달 이미지, 비디오 또는 3D 에셋 출력을 발견하거나 계획하도록 요청하는 경우 (별도 매니페스트, 주제 기반 CV 효과 또는 Resolve 효과 레시피 포함).
  • 사용자가 TasteForge, 스타일 팩, flashethereal, 취향 증류, 케이던스/리듬 계획, 멀티모달 발견, 증류/적용 워크플로우 또는 비디오용 취향 인터뷰를 언급하는 경우.

로컬 결정론적 연산 vs 제공자 생성

이 경계는 이 호환성 스킬의 핵심입니다. 해당 연산은 로컬, 결정론적, 오프라인입니다:

연산결정론적?ECC 실행 가능?
취향 인터뷰 → 프로필예 (오프라인)예
팩 검사 / 스키마 검증예예
프로필 (+ 측정된 근거) → 스펙 증류예 (드라이런 의미)예
로컬 미디어에 팩 케이던스 적용 → 보고서 + 타임라인예예
EDL (CMX3600) / FCPXML 1.9 내보내기예예
출처 / 계보 보고서예예
정지 이미지의 비전 모델 증류제공자 생성아니오
레퍼런스-투-비디오, 이미지-투-3D, 호스티드 컴포즈제공자 생성아니오

ECC에서 제공자 생성은 반드시 실패-종결되어야 합니다. 라이브 Fal(또는 다른 제공자) 호출(샷 생성, 소품 메시 발행, 호스티드 VLM 증류)은 별도 검토가 있는 별도 레인에서 명시적으로 별도 승인된 실행이 필요합니다. 이 호환성 레인에서 ECC는 Fal을 절대 호출하지 않으며, API 키나 기타 자격 증명(FAL_KEY 포함)을 읽지 않으며, 미디어를 업로드하지 않으며, 제공자 계정 상태를 변경하지 않습니다. 요청에 제공자 생성이 필요한 경우, 해당 경계를 정확히 명시하고 로컬 부분(인터뷰, 팩 검증, 계획, 내보내기)을 실행한 후 중단하세요.

Fal 워크플로우가 저장되었다고 주장하지 마십시오. Fal 엔드포인트, 모델 ID 또는 드라이런 URL(팩 메타데이터 내에 나타남)에 대한 로컬 참조는 참조 전용입니다: 이는 제공자 측 워크플로우가 저장되었거나 유지되거나 실행이 승인되었음을 의미하지 않습니다. 오프라인에서 생성된 모든 것은 드라이런(dry-run/dry_run) 의미를 갖습니다 — "드라이런 스펙" 또는 "결정론적 계획"이라고 말하고, "모델에 의해 생성됨"이라고 말하지 마십시오.

표준 구현

  • 저장소: affaan-m/ECC; Python 배포판 ecc-tasteforge, 패키지 디렉토리 skills/taste-application/scripts/tasteforge/. 추출된 ECC 패키지에서 python3 -m pip install ./skills/taste-application/scripts로 설치합니다. 예제 프로젝트 Ito-Markets/ito-video는 특정 ECC 커밋을 고정합니다.
  • CLI: python3 -m tasteforge <command> — provenance, inspect, validate, interview, distill, apply, export, multimodal. --live 플래그는 코드 2로 종료되고 거부합니다.
  • 스키마가 계약입니다: 취향 프로필, 팩 매니페스트, 등급, 케이던스, 스펙, 타임라인 이벤트, 애플리케이션 보고서(provider는 "none"으로 열거형 잠금; dry_run은 true).
  • 복구된 소스 계보와 의도적 제외는 저장소의 skills/taste-application/SOURCE.md에 있습니다. 머신이 읽을 수 있는 버전을 보려면 python3 -m tasteforge provenance를 실행하세요.

로컬 결정론적 명령에 대해 설치된 ECC 엔진을 사용하고 해당 JSON을 해석하십시오. 패키지된 엔진이 없으면 설치하십시오. 해당 로직을 인라인으로 재구성하지 마십시오. taste.resolve는 tasteforge.resolve의 호환성 가져오기이므로, 크리에이티브 스크립트와 예제 프로젝트가 하나의 검증된 Resolve 어댑터를 공유합니다.

python3 -m tasteforge CLI는 설치된 ecc-tasteforge 배포판을 사용합니다. 독립형 taste-distillation 및 taste-application 스크립트는 ECC의 옵트인 미디어 생성 모듈에 자체 Python 요구사항과 함께 제공됩니다. 두 경로 모두 사용자의 저장소나 미디어를 게시할 필요가 없습니다.

저장된 체크아웃을 재개하기 전에 해당 커밋을 기록하고 로컬 브랜치와 워크트리를 검사하여 이후 구현 수정을 준비하십시오. 표준 패키지의 테스트와 python3 -m tasteforge apply --help를 실행하십시오. ECC의 텍스트 및 픽스처 테스트는 선택된 Python 체크아웃이 이 계약을 구현한다는 것을 증명하지 않습니다.

크리에이티브 스킬 체이닝

단계소유자검토 가능한 결과
크리에이티브 방향taste명명된 장르, 레퍼런스 관찰, 선택된 룩 및 회피 목록
증류 및 계획tasteforge-video측정된 증거, 별도 장르 스펙, 드라이런 매니페스트 및 케이던스 계획
편집 및 효과video-editing (선택한 렌더러 포함: Remotion, Manim, 또는 Fusion)적용된 푸티지, 실제 트랙, 편집 가능한 효과 및 타임라인
선택적 생성 에셋 또는 음성fal-ai-media 또는 선택한 오디오 워크플로우 (자체 승인 하에)제공자 영수증 및 검사된 출력
전달편집 워크플로우, 요청 시 content-engine검토된 정확한 내보내기 및 배포 사본

프로젝트에 필요한 단계만 사용하십시오. taste 스킬의 과거 angelcore/cloud-trance 팔레트와 비트 문법은 선택적인 크리에이티브 예시입니다. 현재 브리프를 재정의하거나 별개의 번호가 매겨진 장르를 병합해서는 안 됩니다. 3D Cyber Glitch 및 Fluid Sketch를 포함하여 각 장르의 실제 레퍼런스를 방향에 사용하십시오. TasteForge는 이러한 스킬을 대체하지 않으며 모든 렌더러를 필요로 하지 않습니다. 3D 재료, 지오메트리, 와이어프레임 동작, 모션 및 구성을 장르 서명에 명시적으로 유지하십시오. 3D 요청 매니페스트는 에셋에 대한 계획입니다. 메시가 아닙니다. 주제-앵커 설명자는 추적 요구 사항의 이름입니다. 주제가 감지되거나 추적되었다는 증거가 아닙니다. CV 효과가 안정적으로 적용되었다고 주장하기 전에 실제 트랙, 트랙 손실 동작 및 렌더링된 주제 프레임을 검사하십시오.

워크플로우

  1. 인터뷰 (interview): 룩 축(팔레트, 그레인, 조명, 초점 거리, 카메라 모션, 주제 프레이밍, 등급, 분위기 형용사, 회피 목록)과 별도로 콘텐츠 브리프에 대한 답변을 수집합니다. 룩과 콘텐츠를 분리하십시오. 병합하는 것이 고전적인 실패입니다.
  2. 증류 (distill): 프로필을 스펙 스키마에 오프라인으로 매핑하고, 팩이 제공될 때 팩의 측정된 근거(흑/백점, 대비, 영역별 채도, 팔레트, 컷 리듬)를 포함합니다. 결과는 드라이런 스펙입니다: 결정론적, 제공자 "none".
  3. 검증 (validate / inspect): 스키마에 대해 팩을 확인합니다. 오류와 경고를 보고합니다(메타데이터 전용 팩에서 빠진 스틸 이미지는 오류가 아닌 경고입니다).
  4. 적용 (apply): 사용자의 로컬 클립에 대해 팩의 측정된 케이던스(시드 기반, 결정론적)로 샷 지속 시간을 계획합니다. 애플리케이션 보고서와 프레임 정확한 타임라인 이벤트를 생성합니다.
  5. 내보내기 (export): 유리수, NTSC-안전 시간으로 CMX3600 EDL + FCPXML 1.9를 작성하여 실제 NLE로 가져옵니다.
  6. 감사 (provenance): 계보 보고 — 복구된 소스 다이제스트, 생성 기록, 픽스처 출처, 포인터 전용 레코드로서의 제공자 참조.

반복 소스 없이 실제 푸티지 적용

브리프에 반복 클립이 필요하지 않은 경우, apply --no-repeat --fps를 지원하는 표준 체크아웃을 사용하고 출력 프레임 레이트를 명시적으로 설정하십시오. 해당 플래그가 없으면, 기존 라운드-로빈 선택을 자동으로 사용하지 말고 구현 격차를 보고하십시오. 엄격 모드는 매니페스트 순서로 각 정규화된 소스 경로를 최대 한 번 사용하고, 불충분하거나 너무 짧은 소스를 거부합니다. 케이던스 계획을 채우기에 충분한 검토된 선택 항목을 준비하십시오. 이는 동일한 녹화에서 별도의 인/아웃 범위를 지원하지 않는 소스 수준의 고유성입니다.

애플리케이션 보고서는 컷 계획입니다. 시각적 샷 순위를 매기거나, 푸티지 등급을 매기거나, LUT를 적용하거나, 오버레이를 렌더링하거나, Resolve 프로젝트를 가져오지 않습니다. 팩의 측정된 레퍼런스 케이던스를 출력 프레임 레이트와 분리하여 유지하십시오.

내보내기 CLI는 {"clips": [...]}를 예상합니다. 내보내기 전에 애플리케이션의 timeline_events를 clips 아래에 래핑하고, 애플리케이션에 사용된 것과 동일한 --fps를 전달하십시오. 내보내기의 기본 프레임 레이트는 계획을 재구성해서는 안 됩니다. 편집 워크플로우에 타임라인을 전달하기 전에 방출된 이벤트 수, 총 프레임, 고유 소스 및 미디어 연결을 확인하십시오. 편집 워크플로우가 NLE에서 겹치는 효과를 적용할 때, 호환 가능한 트랙을 할당하고 요청된 모든 시작, 종료 및 지속 시간을 다시 읽으십시오. 반환된 항목이나 성공적인 추가 호출만으로는 예정된 모든 효과가 배치되었음을 증명하지 않습니다. 누락, 이동 또는 잘린 배치를 렌더링 전에 거부하십시오.

파일 기반 멀티모달 계약

로컬 레퍼런스가 이미지, 비디오 및 3D 에셋 출력에 대한 드라이런 생성 계획을 구동하면서 장르 분리를 유지해야 하는 경우 이 경로를 사용하십시오:

python3 -m tasteforge multimodal --config workflow.json --out-dir out/multimodal

구성은 번호가 매겨진 장르와 로컬 증거 파일의 이름을 지정합니다. 이러한 후보 장르는 하나의 일반적인 미학으로 혼합하지 말고 별도로 유지하십시오:

  1. Flash Ethereal
  2. 3D Cyber Glitch
  3. Fluid Sketch

명령은 ffprobe/ffmpeg로 로컬 레퍼런스를 측정하고 장르당 하나의 스타일 스펙, 별도 이미지, 비디오 및 3D 에셋 매니페스트, 출처 및 Resolve 효과 레시피를 방출합니다. 효과 일정은 시드 기반 비주기적이어야 합니다. CV 효과는 정확한 트랙 손실 정책이 disable_effect_until_track_recovers인 실제 주제 앵커가 필요합니다. continue_without_anchor 및 기타 모든 정책은 실패-종결됩니다. 모든 효과는 얼굴과 읽을 수 있는 유형을 보존하고 장식용 코너 메시가 전체 프레임 3D 작업을 대체하지 못하도록 하는 배치 제약 조건을 수반합니다.

반환된 영수증은 번들 경계입니다. 상대 경로, 바이트 크기, SHA-256, 장르, 양식, provider_execution:false 및 정확한 레퍼런스/시간 출처에 의해 방출된 모든 증거 아티팩트를 바인딩합니다. 영수증은 정확한 정수 provider_calls:0(JSON 부울 false는 유효하지 않음), provider_execution:false, dry_run:true가 필요합니다. 모든 장르 스펙에도 명시적 dry_run:true가 필요합니다. Resolve 효과 레시피에는 동일한 정확한 정수 provider_calls:0, provider_execution:false, dry_run:true가 필요합니다. 모든 양식 매니페스트와 모든 중첩 요청에는 네 가지 정확한 실패-종결 필드, 즉 정수 provider_calls:0, provider_execution:false, dry_run:true, submit:false가 모두 포함되어야 합니다. 각 요청에는 provider_call_mode:"disabled"도 필요합니다. 누락된 필드는 기본값이 아닌 거부이며, 출력이 작성되기 전에 dry_run:false는 거부되어야 합니다.

타임라인, 증거, 프로브 및 소스 지속 시간 데이터 어디에서나 부울을 유효하지 않은 숫자로 취급하십시오. 이러한 모든 숫자 값은 유한 실수여야 합니다: true, false, NaN, 무한대, 음수 이벤트 시작, 양수가 아닌 지속 시간, 범위를 벗어난 증거 시간, 선언된 유한 양수 타임라인을 넘어서는 이벤트 종료를 거부하십시오. 전체 파일 증거는 명시적 전체 파일 시간 기준을 사용하며 타임스탬프를 절대 발명하지 않습니다.

영수증 참조는 지속 시간 권한입니다. 인용된 SHA-256으로 각 검증된 참조 지속 시간을 키 지정하십시오. 한 다이제스트의 중복 발생은 지속 시간에 동의해야 하며, 그렇지 않으면 번들이 유효하지 않습니다. 모든 효과 증거 source_duration과 모든 주제-앵커 source_duration은 인용된 시간을 포함하는 것뿐만 아니라 해당 다이제스트의 검증된 영수증 지속 시간과 같아야 합니다. 프로브 지속 시간과 모든 프로브 측정은 바이트 수와 SHA-256에 사용된 동일한 안정적인 바이트를 설명해야 합니다. 소스가 프로빙 중에 변경되거나 사용 가능한 동안 다시 해시되는 경우, 영수증을 방출하거나 수락하지 말고 실패-종결하십시오.

생성 후 항상 번들 검증을 실행하십시오. 누락된 이미지, 비디오 또는 3D 에셋 매니페스트는 실패-종결되어야 합니다. 일반화되거나 중복된 장르, 주기적 일정, 앵커 없는 CV 효과, 누락된 배치 제약 조건, 제공자 실행 플래그, 바인딩되지 않은 출력 파일, 바이트 크기 드리프트 또는 SHA-256 변조는 실패-종결되어야 합니다. 심볼릭 링크인 출력 루트, 중간 파일 또는 아티팩트를 거부하고, 특수 파일(FIFO 및 장치 포함)을 거부하십시오. 출력은 실제 디렉토리 트리 아래의 일반 파일로 유지되어야 합니다. 로컬 ffmpeg 또는 ffprobe를 사용할 수 없는 경우, CLI는 Python 트레이스백 없이 제한된 0이 아닌 로컬 미디어 처리 오류를 반환해야 합니다. 증거를 삭제하거나 검증을 약화시켜 실패한 영수증을 수리하지 마십시오.

예제 세션

# ECC 엔진 설치 후; 아래 경로는 프로젝트 입력입니다
python3 -m tasteforge validate stylepacks/flashethereal
python3 -m tasteforge interview --answers answers.json --genre flashetherea

…

[번역을 위해 잘림]

Individual skills in this repo

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

accessibility

Design, implement, and audit inclusive digital products using WCAG 2.2 Level AA. Use when building or auditing UI that must meet WCAG 2.2 Level AA, or when reviewing a change for keyboard, contrast, or screen-reader support.

affaan-m/claude-api

Anthropic Claude API patterns for Python and TypeScript. Covers Messages API, streaming, tool use, vision, extended thinking, batches, prompt caching, and Claude Agent SDK. Use when building applications with the Claude API or Anthropic SDKs.

affaan-m/everything-claude-code

End-to-end marketing campaign planning and execution. Covers audience research, positioning, campaign angle definition, landing page copy, email sequences, social posts, ad copy, short-form video scripts, and content calendars. Use as the orchestration layer for multi-channel product launches. Use when planning or executing a multi-channel product launch, or producing landing page, email, social, or ad copy.

affaan-m/everything-claude-code

Development conventions and patterns for everything-claude-code. JavaScript project with conventional commits.

affaan-m/everything-claude-code-conventions

Development conventions and patterns for everything-claude-code. JavaScript project with conventional commits.

affaan-m/frontend-design

Create distinctive, production-grade frontend interfaces with high design quality. Use when the user asks to build web components, pages, or applications and the visual direction matters as much as the code quality.

affaan-m/gget

gget CLI and Python workflow for quick genomic database queries, sequence lookup, BLAST-style searches, enrichment checks, and reproducible bioinformatics evidence logs.

affaan-m/literature-review

Systematic literature-review workflow for academic, biomedical, technical, and scientific topics, including search planning, source screening, synthesis, citation checks, and evidence logging.

affaan-m/motion-ui

Production-ready UI motion system for React/Next.js. Use when implementing animations, transitions, or motion patterns.

affaan-m/project-guidelines-example

Example project-specific skill template based on a real production application.

affaan-m/pubmed-database

Direct PubMed and NCBI E-utilities search workflows for biomedical literature, MeSH queries, PMID lookup, citation retrieval, and API-backed literature monitoring.

affaan-m/scholar-evaluation

Structured scholarly-work evaluation for papers, proposals, literature reviews, methods sections, evidence quality, citation support, and research-writing feedback.

affaan-m/uspto-database

USPTO patent and trademark data workflow for official record lookup, PatentSearch queries, TSDR checks, assignment data, and reproducible IP research logs.

agent-architecture-audit

Full-stack diagnostic for agent and LLM applications. Audits the 12-layer agent stack for wrapper regression, memory pollution, tool discipline failures, hidden repair loops, and rendering corruption. Produces severity-ranked findings with code-first fixes. Essential for developers building agent applications, autonomous loops, or any LLM-powered feature. Use when an agent or LLM feature misbehaves and the failing layer is unknown, or before shipping an agent stack.

agent-eval

Head-to-head comparison of coding agents (Claude Code, Aider, Codex, etc.) on custom tasks with pass rate, cost, time, and consistency metrics. Use when choosing between coding agents, or when a change to an agent setup needs measured pass rate, cost, and time rather than an impression.

agent-harness-construction

Design and optimize AI agent action spaces, tool definitions, and observation formatting for higher completion rates. Use when defining or revising an agent

agentic-engineering

Operate as an agentic engineer using eval-first execution, decomposition, and cost-aware model routing. Use when planning or executing engineering work that agents will carry out end to end.

agentic-os

Build persistent multi-agent operating systems on Claude Code. Covers kernel architecture, specialist agents, slash commands, file-based memory, scheduled automation, and state management without external databases. Use when building a persistent multi-agent system on Claude Code with its own memory, commands, and scheduling.

agent-introspection-debugging

Structured self-debugging workflow for AI agent failures using capture, diagnosis, contained recovery, and introspection reports. Use when an agent run fails and you need a reproducible diagnosis instead of a retry.

agent-payment-x402

Add x402 payment execution to AI agents with per-task budgets, spending controls, and non-custodial wallets. Supports Base through agentwallet-sdk and X Layer through OKX Payments / OKX Agent Payments Protocol. Use when an agent must pay for something itself and needs per-task budgets, spending controls, and a non-custodial wallet.

관련 스킬