CommunityImagengithub.com

Pintor de planos

Escribe el prompt de cada plano a partir del storyboard, las fichas de personaje y el estilo fijado, para que un filme pintado siga siendo una sola imagen.

¿Qué es Pintor de planos?

Genera los prompts de imagen de cada plano de un filme pintado. Lee el storyboard, las fichas y el bloqueo de estilo, y deja fijos vestuario, luz y render para que el siguiente cuadro no cambie de cara.

Compatible con~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/gallowforge/filmforge/tree/HEAD/skills/forge-painter

Installed? Explore more Imagen skills: steipete/songsee, affaan-m/frontend-design, mattpocock/improve-codebase-architecture · View all 6 →

Preguntar en tu IA favorita

Abre un nuevo chat con esta habilidad de agente ya precargada.

Documentación

FilmForge Painter

Conviertes la lista de planos en pinturas que pertenecen a una sola película. Cada prompt se ensambla a partir de partes fijas (el bloqueo de estilo, el libro de contabilidad, la lista de planos), nunca improvisado, de modo que el mismo personaje se describe con las mismas palabras en cada plano. El lint lo prueba antes de que se mueva el dinero.

Rutas: scripts/, templates/ y config/ debajo son carpetas dentro de esta habilidad (el directorio base que se muestra cuando carga), puestas allí por ./install.sh. Al trabajar desde un clon del repositorio, son tools/, templates/ y config/ en su raíz.

Entradas

shotlist.yaml (reajustada), style-lock.yaml, continuity.yaml, las hojas y láminas en art/sheets/.

Paso 1. El libro de contabilidad, plano por plano

Para cada plano, escribe su entrada en continuity.yaml: qué personajes están en cuadro, qué utilería (con sus titulares), qué estados (una herida, hollín, una cinta en la muñeca). La utilería y los estados llevan intervalos (from, until).

python3 scripts/ledger.py check continuity.yaml --shotlist shotlist.yaml

Falla ante divergencias: un accesorio que falta dentro de su intervalo mientras su titular está en cuadro, un accesorio o estado fuera de su intervalo, un id desconocido, una lista de personajes que no coincide con la lista de planos. Arregla el libro de contabilidad antes de escribir un prompt.

Paso 2. Escribe cada prompt (prompts/<id>.md)

Sigue la gramática del bloqueo de estilo, ranura por ranura (forge-style-lock, references/prompt-grammar.md):

  1. LOOK: el look para este plano (look: en la lista de planos, si no, el predeterminado), palabra por palabra.
  2. REFERENCES: una cláusula por activo adjunto, de style-lock.yaml references:, en el orden en que los adjuntas; la cláusula de relight.
  3. SHOT: el encuadre de la lista de planos, altura de cámara, sensación de lente, posiciones en tercios.
  4. SUBJECT AND SCALE: por personaje, handle + ancla + bloqueo de escala del libro de contabilidad; recuentos.
  5. MOMENT: el beat del plano como un instante.
  6. SETTING: lugar, clima, hora del día, el fondo.
  7. LIGHT: dirección, calidad, temperatura y su fuente en el mundo.
  8. COLOUR: las palabras de la script de color de la escena.
  9. TEXT AREA, cuando el plano tiene text_area o narración sobre él.
  10. CONTINUITY: la utilería y los estados del libro de contabilidad para este plano, palabra por palabra.
  11. LOCKS: cada cláusula forbid que cubre este plano, palabra por palabra; negaciones específicas del plano.
  12. AVOID: la cola, palabra por palabra.

El formato del archivo, exactamente:

# s02: the last match

Model: gpt-image-2.5, high, 2K, 16:9. Attach: sheet_girl, sheet_moth.

```
<el prompt, ranuras 1 a 12 como párrafos>
```

El primer bloque delimitado es el prompt; todo lo demás son notas para las personas.

Paso 3. Lint antes de gastar

python3 scripts/ledger.py prompts continuity.yaml --prompts prompts --style style-lock.yaml --shotlist shotlist.yaml

Falla en un prompt que no comienza con el look, no termina con la cola de avoid, le falta el handle o el bloqueo de escala de un personaje, un ancla de utilería o estado, una cláusula de color prohibido, o contiene el nombre de un personaje. production.py spend rechaza los gastos de etapa de pintura mientras falle. En el ejemplo del motor, el lint detecta el bloqueo de escala faltante de s03; la pintura hecha a partir de ese prompt dibujó la polilla a una sexta parte de su tamaño.

Paso 4. Pintar en lotes de cuatro

  • Orden: hojas y pruebas (etapa de estilo), luego fotogramas principales, luego el resto escena por escena. Las tomas reutilizadas y las tomas de código no cuestan nada; no las pintes nunca.
  • Lote: cuatro prompts, cada uno con sus referencias adjuntas en el orden que su ranura REFERENCES las nombra. Registra el gasto primero: production.py spend 11.0 --item "s05-s08 batch 2".
  • Archivos: art/film/<id>_<slug>.png (s07a_child_reaches.png estilo: id primero, luego un slug). Una repintura es <id>_<slug>_v2.png; una corrección de código graduada es <id>_<slug>_g.png. Las herramientas eligen la versión más nueva por nombre.
  • Después de cada lote: forge-frame-qa lee cada pintura a tamaño completo antes de pintar el siguiente lote. Una falla encontrada en el lote uno se corrige en los prompts del lote dos antes de que se repita.

Paso 5. Repinturas

Una repintura proviene de forge-frame-qa con su causa y un prompt corregido. Coloca el prompt corregido en prompts/<id>.md, ejecuta lint, registra el gasto, pinta _v2 y envíalo de vuelta a QA. Si la causa estaba en el libro de contabilidad o en el bloqueo de estilo (un bloqueo faltante para todos), corrígelo allí y vuelve a hacer lint de cada prompt.

Casos especiales

  • Páginas de libro ilustrado: nombra el diseño (doble página 3:2, página 3:4, viñeta 1:1 sobre fondo transparente) y el área de texto en cada prompt. Todas las palabras se colocan en el libro, nunca se pintan.
  • Fotogramas clave de video: pinta el primer fotograma (y el último cuando el movimiento debe terminar en un lugar exacto) a través de esta misma gramática; el prompt de movimiento es un paso separado, ejecutado solo después de que el fotograma clave pase QA.
  • Poses clave (poses: 2): un prompt por pose, idénticos excepto la ranura MOMENT, para que encajen limpiamente.
  • Láminas: ubicaciones vacías, sin personajes, reutilizadas en varios planos; llevan el escenario para que los prompts sean cortos.

Salida

  • prompts/<id>.md para cada plano pintado, todos pasando el lint.
  • continuity.yaml con la entrada de cada plano, pasando ledger.py check.
  • art/film/ pinturas, nombradas por id, listas para QA.

Lista de verificación antes de cada lote

  • ledger.py check pasa
  • ledger.py prompts pasa para este lote
  • Referencias adjuntas en orden REFERENCES; las versiones de hoja correctas
  • Gasto registrado; lote de cuatro o menos
  • El lote anterior tiene sus veredictos de QA

Tabla de reparación

Hallazgo de lint o QAQué ranura corregir
no comienza con el bloqueo de estilo1: pega el look, sin editar
falta handle o bloqueo de escala4: pega desde el libro de contabilidad; añade la proporción a algo en cuadro
falta ancla de utilería o estado10: pega desde el libro de contabilidad
falta cláusula de color prohibido11: pega el prompt de la regla
usa un nombre4 y en cualquier otro lugar: reemplázalo con el handle
tamaño incorrecto o recuento incorrecto en la pintura4: bloqueo de escala y un recuento exacto; luego la barra de escala de la hoja
sujeto iluminado de forma plana2: la cláusula de relight; 7: una luz con una fuente
texto o letras pintados9 y 12: el área de texto es para código; "text" en la cola de avoid

Referencias

  • references/batching.md: planificación de lotes, nomenclatura, versiones y un lote trabajado de una película real

Individual skills in this repo

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

gallowforge/forge-director

FilmForge director: runs an AI film production end to end (story, style lock, score, paintings, frame QA, motion in code, sound, delivery, archive) through stage gates, so no credit is spent before its gate passes. Keeps the production state file (production.yaml) and the credit ledger, prices the plan against the credits, and always names the one next action. Use this skill whenever the user wants to make, plan, budget, continue or check on a short film, painted film, animated story, music...

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-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,...

Skills relacionados