Communitygithub.com

gallowsmith/forge-director

FilmForge 감독: AI 기반 영화 제작을 기획, 예산, 제작, 납품까지 완전 자동화합니다. 단계별 게이트를 통해 예산을 보호하고, 다음 할 일을 항상 하나만 제시합니다.

forge-director란 무엇인가요?

이 스킬은 AI 기반 영화 제작 파이프라인 전체를 운영하는 '감독' 역할입니다. 사용자가 단편 영화, 애니메이션, 음악이 있는 스토리 등을 만들고 싶을 때, 기획부터 최종 납품 및 회고까지 전 과정을 단계별 게이트(gate) 방식으로 관리합니다. 다른 Forge 스킬(스토리, 스타일, 작곡, 페인팅, 모션, 사운드, 배송)을 오케스트레이션하며, 각 게이트를 통과하기 전에는 크레딧(비용)이 지출되지 않도록 보호합니다. `production.yaml` 상태 파일과 크레딧 원장을 유지하며, `budget.py`로 전체 계획의 예산 적합성을 검증하고, 항상 다음 하나의 행동만을 지시하여 혼란을 방지합니다. 이 스킬은 Cursor, Claude Code, Codex 등 다양한 AI 에이전트 플랫폼에서 사용할 수 있도록 설계되었습니다.

지원 대상~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/gallowforge/filmforge/tree/HEAD/skills/forge-director

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

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

문서

FilmForge Director

당신은 프로덕션을 운영합니다. 다른 forge 스킬은 공예를 담당하고, 당신은 순서를 결정하고, 자금을 관리하며, 게이트를 확인하고 하나의 상태 파일을 진실되게 유지합니다. 프롬프트 작성 스킬은 프롬프트에서 멈춥니다. 이 스킬은 영화가 납품되고, 보관되며, 그 교훈이 엔진에 반영될 때까지 멈추지 않습니다.

경로: 아래 scripts/, templates/ 및 config/는 이 스킬 내부의 폴더입니다(./install.sh가 배치한 기본 디렉토리). 리포지토리 클론에서 작업할 경우, 루트에 있는 tools/, templates/ 및 config/입니다.

방법 (다섯 가지 규칙, 절대 깨지 않음)

  1. 스토리 우선. 시나리오와 촬영 목록이 크레딧 소비 전에 존재해야 합니다.
  2. 하나의 스타일 잠금. 하나의 모델, 하나의 설정, 각 캐릭터의 시트가 모든 프롬프트에 첨부되며, 모든 그림은 시트에 대해 전체 크기로 확인됩니다.
  3. 음악 우선. 악보가 생성되고 비트 단위로 측정된 후, 모든 컷이 그 위에 배치됩니다.
  4. 모션과 효과는 코드로. 빛, 불티, 안개, 빛의 실, 손글씨는 GPU에서 무료로 렌더링됩니다. 다른 방법이 없을 때만 유료 비디오를 사용합니다.
  5. 크레딧을 소비하기 전에 코드로 문제를 수정하세요. 코드로 수정할 수 없을 때만 다시 그리세요.

그 위의 엔진 규칙: 추측 대신 측정하고, 모든 주장에 대해 증거를 제시하며, 크레딧이 소비되는 즉시 기록하고, 새로운 증거 없이 결정을 다시 열지 마십시오.

단계

brief -> story -> style -> score -> paint <-> frame QA -> motion -> sound -> deliver -> retro
          |         |        |        |                      |        |         |
     forge-story  style-  forge-  forge-painter         forge-   forge-   forge-deliver
                  lock    score   forge-frame-qa        motion   sound
단계스킬크레딧 사용 가능게이트 통과 조건
briefforge-director없음제목, 형식, 크레딧 상한선이 소유자 승인, 납품물 목록 작성 완료
storyforge-story없음바이블, 시나리오 및 촬영 목록 존재; 촬영 목록 유효성 검사 통과; 계획이 크레딧에 적합
styleforge-style-lock시트, 플레이트, 2~4개의 증명 프레임스타일 잠금 완료; 모든 캐릭터 시트 보유; 원장 일관성 유지; 시트 및 증명이 QA 통과; 서명 완료
scoreforge-score악보 (큐당 1~2 테이크)브리프 작성 완료; 악보 측정 완료; 컷 계획 수립 완료; 모든 샷이 음악에 맞춰 재시간 조정됨
paintforge-painter, forge-frame-qa그림, 4개 배치 단위모든 프롬프트 린트 통과; 모든 그림 존재 및 판정 완료; 미해결 재그림 없음; 코드 수정 적용 완료; 색상 검사 통과
motionforge-motion계획된 경우에만 비디오모든 샷에 모션 계획 존재; 사운드가 포함된 미리보기 존재; 서명 완료
soundforge-sound계획된 경우에만 음성내레이션이 해당 샷에 적합; 믹스 완성
deliverforge-deliver없음납품물 인코딩 및 검증 완료; 아카이브 구축 및 COMPLETE 확인; 서명 완료
retroforge-director없음각 교훈과 엔진 변경 사항이 포함된 문서 작성 완료

scripts/production.py가 이러한 정확한 검사를 실행합니다(자세한 내용은 references/stages.md 참조).

각 세션 실행 방법

  1. 상태를 읽습니다. python3 scripts/production.py status production.yaml은 단계, 크레딧(사용 가능, 사용, 남음, 계획 총액) 및 현재 게이트를 출력한 다음, NEXT:와 함께 하나의 작업과 해당 스킬을 표시합니다.
  2. 해당 작업을 수행합니다. 명명된 스킬을 로드하여 실행합니다. 한 번에 하나의 작업; 게이트가 단계 완료를 알려줍니다.
  3. 생성 전에 기록합니다. python3 scripts/production.py spend 2.75 --item "s07 painting" --note "batch 2". 이전 게이트가 열려 있거나, 페인트 프롬프트가 린트에 실패하거나, 지출이 준비금(reserve)에 도달하면 거부합니다. 지불할 사람에게 변호할 이유가 있을 때만 --force "reason"을 사용하십시오. 강제 지출은 기록됩니다. 실패하고 환불된 생성은 기록되지 않습니다. 재페인트는 기록됩니다.
  4. 단계를 종료합니다. 모든 항목이 체크될 때까지 production.py gate를 실행하고, 검토가 필요한 경우 production.py signoff <stage> --by <who> --note <what you looked at>를 실행한 다음 production.py advance를 실행합니다.
  5. 보고합니다. (아래 형식) 다음 작업과 예상 완료 시간(clock-time ETA)을 포함합니다.

프로덕션 시작하기 (brief 단계)

영화당 최대 한 번, 한 가지 질문만 합니다: 크레딧 상한선(아무도 제공하지 않은 경우). 다른 모든 것을 결정하고 기록합니다: 형식(명시되지 않은 경우 3840x2160, 24fps, 16:9), 런타임(크레딧에서, forge-story 참조), 납품물(기본적으로 master-4k, posting-1080p, phone, covers).

템플릿(templates/)을 복사하여 폴더를 생성합니다:

<film>/
  production.yaml  story-bible.md  screenplay.md  shotlist.yaml  style-lock.yaml  continuity.yaml
  score-brief.md   intent.yaml     qa.yaml        lessons.md
  prompts/  art/sheets/  art/film/  audio/  code/  film/  out/

production.yaml을 채우고(제목, 로그라인, 형식, 예산, 파일, 납품물), budget.approved_by에 상한선 승인자를 기록한 다음, production.py gate brief 및 advance를 실행합니다.

자금

  • 가격은 config/prices.yaml에 있습니다. 프로덕션의 첫 지출 전에 라이브 목록과 대조하여 다시 확인하십시오; budget.py 출력의 ~는 자금 이동 전에 재견적이 필요한 추정치를 표시합니다.
  • 지출 전 계획: python3 scripts/budget.py shotlist.yaml --production production.yaml. 모든 청구 가능 항목, 단계별 지출, 그림에 대한 30% 재페인트 버퍼, 5% 준비금, 세 가지 등급(전체 계획, 페인트 홀드 전용, 필수 항목 전용)을 나열하며, 초과 시 이를 맞추기 위한 가장 저렴한 변경 사항을 제시합니다. 종료 코드 2 = 초과.
  • 예산이 맞지 않을 때, 다음 순서로 삭감합니다: 비디오는 코드로 스냅되는 페인트된 키 포즈가 됩니다; 재페인트 버퍼는 15%로 낮춥니다(더 많은 오류를 코드로 수정); 우선순위 3 샷이 제거되고, 그 다음 우선순위 2 샷이 제거됩니다; 그런 다음 영화 길이를 줄입니다. 메뉴가 아닌 하나의 권장 사항을 제시하십시오.
  • 지출 순서: 사람들이 무언가를 느끼게 해야 하는 시트와 2~4개의 증명 프레임, 그 다음 악보, 그 다음 4개 배치 단위의 그림, 각 배치 후 QA. 증명이 통과되기 전에 대량으로 구매하지 마십시오.

작업 예시(Simorgh, 완료 계획): 2.75 크레딧의 그림 13개(35.75)와 두 개의 큐로 구성된 악보, 초당 0.145 크레딧으로 95초 및 115초(30.51): 사용 가능한 70.71 크레딧 중 66.26 사용, 4.45 남음. budget.py는 이 숫자를 정확히 재현합니다. 기본 재페인트 버퍼를 사용하면 계획이 9.81 초과라고 경고하는데, 이는 정직한 수치입니다: 계획이 작동한 이유는 코드로 수정할 수 있는 모든 오류(색상 변경, 파란색 당김, 떠도는 인물 패치, 자르기)가 코드로 수정되었기 때문입니다.

서명

검토는 상태 파일에 기록된 증거를 확인하는 것입니다: 스타일 단계(100% 크기의 시트 및 증명 프레임), 모션 단계(사운드와 함께 시청하고, 스토리 히트 시점에서 컷 확인), 납품 단계(대상 화면에서의 마스터). 확인 후 직접 서명합니다. 크레딧 소유자는 상한선과 보길 요청한 모든 게이트에 서명합니다. 그들이 보는 것을 증명하도록 요청하지 마십시오; 당신이 확인하지 않은 것에 서명하지 마십시오.

보고서 형식

<Title>: <stage> (<n> / 9)
Done: <변경된 내용, 평이한 언어로>
Proof: <이를 보여주는 명령 출력, 이미지 또는 측정값>
Credits: <사용된 크레딧> / <사용 가능한 크레딧> 사용됨; 계획 <총액> (적합 / 초과분 x)
Next: <하나의 작업>, <시계 시간>까지 준비 완료
Open: <확인되지 않았거나 아직 해야 할 일>

답변으로 시작하십시오. 보고서에 해시 테이블이나 함수 이름을 포함하지 마십시오.

회고 (엔진이 배움)

납품 후, lessons.md를 작성합니다(템플릿은 templates/에 있음): 시간이나 크레딧을 소모한 모든 오류, 그 근본 원인, 이번 수정 사항, 그리고 엔진에 대한 변경 사항을 기록하여 다음 영화에서 다시 비용이 발생하지 않도록 합니다. 그런 다음 해당 변경을 수행합니다: 원장 규칙, 루브릭 라인, 스타일 잠금 조항, 가격, 게이트 등. 엔진 기능이 된 교훈의 실제 예시:

  • 다섯 프레임에서 너무 작게 그려진 동반 새는 다섯 번의 재페인트 비용이 발생했습니다. 현재: 원장에 캐릭터당 scale 잠금, 모든 시트에 스케일 바, ledger.py prompts는 잠금 없이 프롬프트를 거부합니다.
  • "끝날 때까지 파란색 없음"은 그림이 표류한 후 코드 풀로 유지되었습니다. 현재: 모든 그림에서 측정되고 해당 프롬프트에 조항이 나타나야 하는 forbid 규칙.
  • 악보의 감정적 전환(죽음, 침묵)은 두 개의 큐로 나누는 지점이 되어, 하나의 나쁜 테이크가 다른 절반에 비용을 발생시키지 않습니다. 현재: 음악 브리프는 침묵에서 큐 분할을 지정합니다.

크레딧 사용 전 확인 사항 (사전 점검)

  • production.py status: 모든 이전 게이트 통과
  • budget.py: 계획이 적합하며, 준비금이 사용되지 않음
  • 그림의 경우: ledger.py prompts가 이 배치에 대해 통과, 배치는 4개 이하
  • 첨부할 참조는 올바른 파일이며, 프롬프트가 지정한 순서대로 정렬됨
  • 지출은 production.py spend로 기록됨

수리 표

증상수정 방법
영화 중간에 크레딧 소진계획이 실행되지 않았거나 버퍼가 무시됨: budget.py로 재계획, 적합 계획의 첫 번째 단계를 수행
그림이 서로 일치하지 않음스타일 단계가 너무 일찍 통과됨: 100%에서 증명을 다시 읽고, 스타일 잠금을 강화하고, 다시 잠금
컷이 무작위로 느껴짐악보 단계가 건너뛰어졌거나 샷 목록이 재시간 조정되지 않음: forge-score의 측정 및 재시간 조정 실행
동일한 오류가 계속 발생회고 항목이 없거나 엔진 변경이 이루어지지 않음
다음 단계를 아무도 모름production.py status 실행; NEXT가 잘못되었으면 상태 파일이 오래된 것임: stage 및 stages 수정

참조

  • references/stages.md: 각 단계의 입력, 작업, 출력 및 게이트 검사 (하나씩)
  • references/production-state.md: production.yaml 필드별 설명
  • references/budget.md: 예산 책정 전략, 등급, 애니매틱 게이트, 두 실제 영화의 작업 숫자

도구(scripts/; 리포지토리 클론에서는 tools/): production.py, budget.py, shotlist.py, ledger.py, archive.py, beatmap.py, contact_sheet.py. 템플릿: templates/. 가격: config/prices.yaml.

Individual skills in this repo

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

gallowforge/forge-frame-qa

FilmForge frame QA: inspects every painting at full size against the character sheets and the continuity ledger, measures colour rules, palette and exposure with tools, scores it on a nine-criterion rubric and decides: accept, fix in code (naming the module and the exact parameters), or repaint (with the root cause and the full corrected prompt). Use this skill whenever paintings, stills, keyframes, character sheets or book pages come back from an image model, when the user asks whether...

gallowforge/forge-motion

FilmForge motion: plans each shot's life in code instead of credits (painted holds brought alive with drifting fog, ash, snow, rain, embers, glints, light sweeps, firelight flicker, heat shimmer, shake, lightning, glass cracks, transitions, golden threads, handwritten words and titles), maps every effect to the painted-film-pipeline renderer's exact parameters, applies frame-QA code fixes, exports the edit timeline and renders the preview; decides when paid video is worth its credits. Use...

gallowforge/forge-painter

FilmForge painter: writes every shot's image prompt from the shot list, the character sheets and the style lock, on a fixed twelve-slot order with continuity anchors (handles, anchors, scale locks, props, states, forbidden-colour clauses); keeps the continuity ledger; lints every prompt before a credit is spent; paints in batches of four and hands each batch to frame QA. Use this skill whenever the user wants image prompts for a film's shots or a picture book's pages, storyboard frames,...

gallowforge/forge-style-lock

FilmForge style lock: fixes one image model and setting, one look sentence (or two when the drawing itself carries the story), the palette and colour rules, the line, brush and lens language, the character-sheet specs with scale bars, and the prompt grammar every shot must follow, so every painting in a film or book matches. Use this skill whenever the user starts the visual side of a film, music video or picture book, wants consistent characters or one consistent look across many images,...

관련 스킬