Communitygithub.com

艺术犯爆款短视频复刻工作流 v6.1

内置历史爆款向量案例库,支持新视频拉片、双模型 ASR、Seedance 提示词与分层质量门禁的 Codex Skill

¿Qué es 艺术犯爆款短视频复刻工作流 v6.1?

Este workflow para Claude Code (Codex) permite replicar videos cortos virales con un enfoque profesional y estructurado. Incluye una base de datos de casos vectoriales locales (2048 dimensiones) de videos exitosos previos, que se puede usar como referencia inteligente sin depender de servicios de pago de embeddings. Soporta análisis frame a frame de nuevos videos de referencia, transcripción ASR con dos modelos (parafermer-v1 y v2), y la generación de prompts Seedance optimizados para diferentes plataformas de video. Todo el proceso está dividido en 9 fases que van desde el bloqueo de modo y estilo visual, extracción de mecanismos narrativos, competición creativa, script segundo a segundo, hasta la validación final con múltiples puertas de calidad (pre-generación, pre-unión, pre-publicación). Garantiza la coherencia causal, la continuidad visual y la fidelidad al material de referencia original, evitando inventar información no soportada por la evidencia. El workflow está diseñado para proyectos de alta fidelidad visual, migración de mecanismos virales o réplicas comerciales mixtas, y produce entregables como contratos de réplica, storyboards, guiones, prompts y reportes de verificación, todo listo para ser utilizado en plataformas como VidMuse o Airtable.

Compatible con✓Claude Code✓Codex CLI~Cursor
npx skills add 784697524-ux/yishufan-viral-video-replica-workflow

Preguntar en tu IA favorita

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

Documentación

Flujo de Trabajo para Réplica de Videos Cortos Virales v6.1

Ruta del Paquete Portátil

Considera el directorio que contiene este SKILL.md como SKILL_DIR. Este paquete incluye internamente en vendor/watch/ las herramientas de análisis, extracción de subtítulos y backend ASR. Los ejemplos de comandos usan la siguiente ruta portátil:

SKILL_DIR="<ruta completa al directorio que contiene este SKILL.md>"

Límites de Entrega

Por defecto, se entregan: evidencia de referencia, hechos del producto, bloqueo visual de producto y estilo, contrato de réplica legible por máquina, guion segundo a segundo, definición de personajes, storyboards independientes, plan de movimiento por fotograma, prompts Seedance segmentados por duración del modelo, e informe de verificación previa a la generación.

A menos que el usuario lo solicite explícitamente, no se deben generar videos, consumir créditos, exportar productos terminados ni publicar. Cuando el usuario solicite explícitamente la producción completa, primero se debe pasar la puerta de calidad previa a la generación y luego leer completamente la Rama de Producción Completa de VidMuse; el contenido sin evidencia real debe marcarse como "inferencia creativa".

Entrada Mínima

  • Seleccionar una de dos fuentes de referencia: la ruta local completa o enlace público de un video de referencia, o escribir explícitamente "referencia inteligente a la base de datos de casos virales históricos".
  • Captura de pantalla o información detallada del producto; para productos físicos, debe haber imágenes claras del producto que permitan fijar su forma, proporciones, color, material, estructura y logotipo. Si solo hay páginas de cupones/derechos, no se deben inventar ángulos físicos no mostrados.
  • Imagen de referencia de estilo o un video de referencia que pueda servir como evidencia de estilo; si no hay una imagen de estilo independiente, se debe tomar explícitamente el video original como fuente de estilo, sin convertirlo en un genérico "de alta gama".
  • Modo de réplica y densidad de ritmo; si el usuario no lo especifica y diferentes opciones cambiarían el resultado, solo preguntar una vez.

Especificaciones por defecto: 9:16, mandarín estándar, cada segmento generado de 1 a 15 segundos. Al escribir la tabla AI, el total de archivos adjuntos (personajes, storyboards, audio y materiales del producto) no debe exceder de 9. La réplica visual de alta fidelidad sigue por defecto la duración completa del video original; los otros dos modos, cuando el usuario no especifica, tienen una duración predeterminada de 30 segundos. No se deben eliminar los giros del video original para ajustar dos segmentos.

Base de Datos de Casos Vectoriales Virales Integrada (Modo de Referencia Inteligente)

La knowledge_base/index.sqlite3 de este skill es una base de semillas lista para usar: solo contiene casos de proyectos oficiales, sin chats privados, API Keys, cookies ni videos originales. Utiliza vectores hash locales fijos de 2048 dimensiones para caracteres chinos y etiquetas de mecanismos, y su recuperación no consume servicios de Embedding de pago.

Cuando el usuario solo proporciona cupones/productos, o solicita explícitamente seleccionar inteligentemente una referencia de casos virales históricos, primero se debe recuperar la base de datos vectorial local, sin elegir casos al azar basándose en la memoria. Después de la instalación inicial, se puede recuperar directamente sin necesidad de construir primero la base de datos:

python3 "${SKILL_DIR}/scripts/viral_library.py" search \
  "<requisito completo de creación>" \
  --top-k 5 \
  --out "<directorio del proyecto>/00_historical_match.md"

Se debe generar una consulta completa que incluya: producto, audiencia, escenario de uso, mundo visual, relaciones entre personajes, emoción objetivo, densidad de ritmo y derechos confirmados; no solo ingresar el nombre del producto. Los resultados de la búsqueda darán un ID de caso; para leer el texto completo del archivo del caso en la base de datos, ejecutar:

python3 "${SKILL_DIR}/scripts/viral_library.py" show "<case_id>" \
  --out "<directorio del proyecto>/00_historical_case.md"

Después de completar el análisis, guion, storyboard o revisión del nuevo video y colocarlo en el workspace outputs/, actualizar el índice local del usuario. Este índice se fusiona por defecto con la base de semillas integrada, dando prioridad a su uso en la búsqueda:

python3 "${SKILL_DIR}/scripts/viral_library.py" build \
  --workspace "<ruta completa del workspace del video viral>"

Para búsquedas posteriores, añadir --workspace "<ruta completa del workspace del video viral>" para buscar en la base combinada "casos integrados + nuevos casos del usuario".

Por defecto, no indexa chats privados de Codex. Solo cuando el usuario solicite explícitamente construir una biblioteca privada puramente local se puede añadir --include-chats; las bases de datos que contengan chats no deben distribuirse externamente.

El informe de recuperación debe incluir simultáneamente: una referencia principal, una plantilla de producción reutilizable, un máximo de dos referencias candidatas, el mecanismo acertado, las rutas trazables de análisis/guion/prompt/storyboard, si el video original está actualmente disponible, y las lecciones de fracaso que se deben aprender en esta ocasión. Reglas de ejecución:

  • Cuando decision=insufficient_match, se debe detener la aplicación forzada de la plantilla y solicitar un nuevo video de referencia o realizar solo una inferencia de mecanismo original.
  • No se deben reutilizar guiones, prompts o storyboards de casos con quality_status=blocked; si existe un análisis confiable del video original, solo se puede reutilizar reference_analysis_only, leyendo simultáneamente su revisión de QC como puerta negativa.
  • quality_status=unknown no equivale a éxito, solo indica que el material histórico no tiene una conclusión a nivel de publicación; al entrar en esta creación, aún se deben pasar todas las puertas de calidad.
  • La base de semillas no contiene videos originales ni activos de máquina originales; solo se pueden citar los códigos de tiempo, hashes, análisis, guiones y lecciones de fracaso archivados en la base de datos, sin afirmar que se ha vuelto a ver el video original en esta ronda.
  • Incluso si la biblioteca local del usuario incluye explícitamente chats históricos, el peso de los chats sigue siendo menor que el de los productos formales del workspace, y no pueden reemplazar la evidencia del análisis.
  • La recuperación solo es responsable de seleccionar mecanismos y activos, no de unir directamente guiones antiguos. Aún se debe proceder a la fase tres (competencia creativa, prueba de eliminación del producto, lectura en mesa y contrato de historia schema v4).

Cuando el usuario proporciona un nuevo video de referencia, aún se puede usar esta base de datos para buscar casos similares y lecciones de fracaso como ayuda, pero la identidad de la referencia principal, la duración y el SHA-256 deben basarse en el nuevo video real leído en esta ronda.

Fase Cero: Bloquear Modo, Mundo Visual e Identidad de los Materiales

Antes de generar el guion o storyboard, primero generar:

Modo actual: Réplica Visual de Alta Fidelidad / Migración de Mecanismo Viral / Réplica Comercial Mixta
Densidad de Ritmo: Sigue el Video Original / Densidad Estándar / Alta Densidad de Giros
Alcance de Producción: Paquete de Materiales / Entrega de Tabla AI / Video Completo
Tipo de Movimiento: Dominado por el Video de Referencia / Actuación Dramática / Anuncio de Movimiento Continuo
Razón de la Inferencia:
Restricciones Duras del Mundo Visual:

Leer completamente el archivo references/tres_modos_de_replica.md. Solo se puede ejecutar un modo. El medio, la dirección de PI o el mundo visual especificados explícitamente por el usuario son restricciones duras globales; no se vuelven inválidas porque "se permita reemplazar personajes/escenas". Por ejemplo, un CG artístico histórico no se puede cambiar por un drama romántico moderno realista.

Antes de ejecutar el backend, releer la ruta absoluta o URL proporcionada por el usuario en esta ocasión. Prohibido seleccionar otros materiales basándose en nombres de archivo similares.

Fase Uno: Ejecutar el Backend de Evidencia

El contrato del backend se encuentra en references/backend_contract.md. Primero verificar la configuración de Alibaba Cloud:

python3 "${SKILL_DIR}/scripts/configure_asr.py" --check

Si falta configuración, ejecutar el siguiente comando; la Key se lee mediante entrada oculta, no debe colocarse en la línea de comandos, en el archivo del skill ni en el informe:

python3 "${SKILL_DIR}/scripts/configure_asr.py" \
  --endpoint "<Endpoint compatible-mode/v1 del espacio de trabajo de Alibaba Cloud>"

Preparar la evidencia de referencia:

python3 "${SKILL_DIR}/scripts/prepare_reference.py" "<video de referencia>" \
  --out-dir "<directorio del proyecto>"

Este script debe completar:

  • Bloqueo de la ruta absoluta, nombre de archivo, SHA-256, duración, relación de aspecto y parámetros de audio/video de los materiales locales.
  • Extracción de fotogramas clave de todo el video y fotogramas densos no deduplicados a 2fps de los primeros 3 segundos.
  • Generación adicional de una línea de tiempo fija de 0,5 segundos para todo el video; incluso si las escenas son estáticas, no se deben deduplicar.
  • Uso obligatorio del espacio de trabajo de Alibaba Cloud, no del Groq predeterminado.
  • Transcripción separada con paraformer-v2 y paraformer-v1, generando códigos de tiempo.
  • Cuando los textos de los dos modelos son inconsistentes, marcar como "requiere revisión", sin tratarlos directamente como diálogo de personajes.

Primero revisar fotograma por fotograma la línea de tiempo fija de 0,5 segundos listada en watch/timeline_0_5s/timeline_manifest.json, y luego revisar los fotogramas clave de las escenas. Se debe registrar en el contrato de réplica la cantidad de fotogramas revisados y la última marca de tiempo; revisar solo los fotogramas clave de las escenas puede omitir fácilmente pausas largas, actuaciones estáticas al final y bucles al final. Después de encontrar engaños continuos, acciones rápidas o inversiones espaciales, ejecutar para cada clúster de giro:

python3 "${SKILL_DIR}/vendor/watch/scripts/watch.py" "<video de referencia>" \
  --detail balanced --start <inicio> --end <final> \
  --fps 2 --no-dedup --resolution 1024 --no-whisper \
  --out-dir "<directorio del proyecto>/watch/reversal_<número>"

El "análisis fotograma a fotograma" de este skill se refiere a: revisar fotograma por fotograma la línea de tiempo fija de 0,5 segundos de todo el video, revisar fotograma por fotograma los fotogramas clave de las escenas, y revisar fotograma por fotograma los primeros tres segundos y los clústeres de giro densamente extraídos. watch tiene un máximo de 2fps, no se puede afirmar que se ha visto cada fotograma codificado original del video. Cuando el usuario solicite explícitamente una revisión de fotograma completo a 30fps, se debe indicar que se necesita un proceso de visión por computadora de fotograma completo separado.

ASR solo demuestra que se ha reconocido sonido, no demuestra automáticamente la identidad del hablante. El diálogo debe ser cotejado conjuntamente con los resultados de los dos modelos ASR, los subtítulos visibles, la sincronización labial y las acciones en pantalla; las letras de fondo y el diálogo de los personajes se registran en columnas separadas.

La fase uno debe producir:

  • 00_source_manifest.json y 00_reference_evidence.md.
  • Duración del video, relación de aspecto, número de fotogramas extraídos, modelo de transcripción y estado de la transcripción.
  • Tabla de diálogo con códigos de tiempo; cada línea marcada como diálogo de personaje/letra/efecto de sonido/requiere revisión.
  • Tabla de planos con códigos de tiempo: plano, personajes, acción, expresión, mirada, relación espacial, movimiento de cámara y sonido.
  • Evidencia segundo a segundo de los primeros 3 segundos, información segundo a segundo de los clústeres de giro, tiempo de primera aparición de la marca y punto de memoria final.

Si la música, el viento, el impacto, el sonido de apagado o el sonido de bucle del video original son parte del giro, listarlos en una columna separada en la tabla de sonidos con sus códigos de tiempo. Cuando sea necesario pasar el sonido original al modelo de video, usar scripts/extract_reference_audio.py para extraer la pista de mezcla única del video original; se debe explicar que puede contener simultáneamente música, diálogo y efectos de sonido, sin afirmar que se ha separado la música pura.

Fase Dos: Extraer Mecanismo, Tabla de Hechos y Bloqueo Dual Producto/Estilo

Se debe responder: ¿Por qué se detiene el primer segundo?, ¿Por qué se sigue viendo?, ¿Cuál es el juicio inicial?, ¿Dónde cambia el poder/la causalidad/el significado del atrezo/la verdad espacial?, ¿Por qué el producto se convierte en la respuesta de la trama?, ¿Por qué vale la pena ver los últimos 3 segundos?

Cambios de plano, cambios de ángulo, explosiones repetidas o gritos continuos no se consideran giros. La alta densidad de giros solo se aplica a los clústeres de giro ya detectados; dentro del clúster, se debe agregar al menos una variable efectiva por segundo, actualizar un nivel cada 2-3 segundos, y el cambio posterior debe ser causado por el anterior.

La tabla de hechos del producto debe incluir al menos: nombre del producto, precio de venta, derechos, tiendas aplicables, período de venta, período de uso, método de canje, restricciones y reglas de devolución. Cada elemento debe estar marcado con su fuente de material y estado de confirmación. No se debe escribir un cupón de calificación como un producto gratuito, ni completar precios, cantidades, fechas y restricciones que no sean claras o no estén proporcionadas.

Al mismo tiempo, crear 02_visual_lock.md:

  • Bloqueo del producto: listar la ruta relativa, SHA-256 y propósito de cada activo de referencia del producto; bloquear uno por uno la forma, proporciones, color, material, estructura y logotipo. Para lados, parte trasera, interfaces, texto del empaque, etc., sin evidencia, ejecutar uniformemente do_not_invent.
  • Bloqueo de estilo: a partir de la referencia de estilo o el video original, extraer luz, color, composición, lenguaje de cámara, personajes, escenas y textura de materiales; generar un lock_id único y un prompt de estilo reutilizable; cada prompt de Clip debe incorporar palabra por palabra ese prompt de estilo y el lock_id.
  • Los elementos prohibidos solo registran los materiales de esta ocasión y los estilos conflictivos solicitados explícitamente por el usuario. Si el video original es de neón o ciberpunk, no se deben aplicar prohibiciones genéricas.

En este paso solo se bloquea la evidencia, no se conciben ideas creativas. Los activos de referencia del producto deben copiarse en el directorio del proyecto y vincularse con su hash; si hay múltiples ángulos, marcar sus propósitos por separado, sin hacer pasar imágenes generadas por IA como evidencia original del producto.

Fase Tres: Competencia Creativa y Lectura en Mesa

Prohibido escribir el guion segundo a segundo inmediatamente después de ver el video de referencia. Primero descomponer el video de referencia en su ADN de mecanismo: gancho de apertura, pregunta del espectador, juicio inicial, motor de conflicto, mecanismo de giro, recompensa emocional y punto de memoria final. Aquí solo se hereda el mecanismo de transmisión, no se copian los diálogos superficiales.

Ronda de guionistas: escribir primero al menos 5 conceptos de historia realmente diferentes; cuando el usuario solicite explícitamente "anuncio dinámico de alto presupuesto" o motion_profile=continuous_motion_ad, escribir 10. Cada concepto debe cambiar al menos dos de los siguientes elementos: relación entre personajes, fuente del conflicto, elección del personaje, intervención del producto, forma del giro, o recompensa final. Cada concepto debe incluir: historia en una frase, conflicto, elección del personaje, consecuencia visible, giro inesperado, evidencia previa, papel dramático del producto y recompensa final; para anuncios de movimiento continuo, además, escribir en una línea los 6 a 8 nodos de acción continua: "inicio del personaje → intervención del producto → cambio de entorno → escalada de acción → clímax → cierre del producto". Prohibido falsificar múltiples opciones simplemente cambiando palabras o vestimenta.

Ronda de editores: calificar cada concepto: gancho de primeros 3 segundos (20), causalidad (25), frescura (20), causalidad del producto (15), herencia del mecanismo de referencia (10), generabilidad por IA (10). Para anuncios de movimiento continuo, además, comparar intensidad dinámica, impacto visual, continuidad del movimiento, relación personaje-producto, integridad narrativa y facilidad de división en segmentos ejecutables, sin cambiar la puntuación principal de 100 del contrato. El concepto seleccionado debe tener una puntuación total no inferior a 85 y no tener ningún veto duro; los conceptos no seleccionados deben tener escrito el motivo de eliminación. La ronda de editores puede vetar todos los conceptos y solicitar una reescritura. Cualquiera de los siguientes es un veto duro: personaje sin motivación para girar, producto mencionado como lista, la trama sigue siendo válida si se elimina el producto, magia sin preparación, atrezo sin fuente, narración que reemplaza acciones clave, eslogan final que reemplaza la resolución de la trama; para anuncios de movimiento continuo, también se vetan: personajes solo posando/caminando lentamente, solo cambio de fondo, y usar el movimiento de cámara para simular la acción del sujeto.

Elevar el concepto seleccionado a narrative_qc.story_chain y luego realizar la lectura en mesa. Responder para cada paso de la historia: ¿Qué pregunta el espectador en este momento?, ¿Qué se añade en esta toma?, ¿Quién tomó una decisión o reacción?, ¿Qué acción visible impulsa el siguiente paso?, ¿Puede el actor completarlo naturalmente en los segundos asignados? Se debe leer el diálogo en voz alta para cronometrar, y ejecutar la "prueba de eliminación del producto": si la historia sigue siendo válida después de eliminar el producto, se devuelve a la sala creativa. No se puede proceder al guion segundo a segundo hasta que todas las preguntas de la lectura en mesa hayan sido resueltas.

Escribir en el contrato creative_room: ADN del mecanismo, 5 candidatos, puntuaciones detalladas, vetos duros, motivos de selección/eliminación y resultados de la lectura en mesa. La puerta de la máquina solo verifica la evidencia y las condiciones de entrada; no se puede afirmar que el éxito viral está garantizado antes de la publicación. Solo los datos de retención de primeros 3 segundos, tasa de finalización e interacción después de la publicación verifican el resultado de la transmisión.

Fase Cuatro: Libro de Ritmos del Video Original, Contrato de Réplica y Mapeo Único

Primero escribir el libro de ritmos Rxx en orden temporal de cada cambio causal, de poder, de significado del atrezo, de verdad espacial y de relación de bucle en el video original. En el modo de alta fidelidad, los nodos causales adyacentes como: acusación → juicio erróneo → ataque → revelación del atrezo → disculpa → segundo error operativo → revelación espacial → bucle final no deben fusionarse, intercambiarse ni eliminarse; el producto solo puede entrar en las posiciones que el usuario haya permitido explícitamente reemplazar.

Al principio de 03_structure_mapping.md, escribir el modo, la densidad de ritmo, las restricciones duras del mundo visual, lo que se debe conservar y lo que se permite reemplazar. Establecer una cadena única:

R01 (evidencia del video original) → S01 (guion del nuevo video) → B01 (archivo de storyboard) → P01 (párrafo de Seedance)

Cada nuevo plano debe completar: código de tiempo de referencia, código de tiempo del nuevo video, función psicológica/visual del video original, lo que se debe conservar, lo que se permite reemplazar, archivo de storyboard y párrafo de prompt. No se puede usar "se siente igual" en lugar de hechos verificables.

Al mismo tiempo, crear el 08_replica_contract.json según la Especificación JSON del Contrato de Réplica en schema v4. Primero, bloquear con brief_alignment el modo original del usuario, la duración original, production_scope y los valores de ejecución final; cualquier cambio debe ser confirmado explícitamente por el usuario y registrado el motivo, prohibido modificar el contrato en silencio para pasar la verificación. El contrato debe cubrir todos los Rxx del archivo de análisis, y vincular cada ritmo a un único Sxx, Pxx, archivo de storyboard y production_design.motion_beats. No se deben generar imágenes ni escribir tablas AI hasta que el contrato esté completo. El schema v3 antiguo solo permite revisar paquetes históricos; los nuevos proyectos no deben continuar creando v3.

El contrato usa schema_version=4. Primero completar creative_room y seleccionar la única solución que pase la puntuación de 85 y el umbral de la lectura en mesa, luego completar narrative_qc.story_chain y el storyboard: el primer paso debe ser una pregunta, el medio debe tener una elección del personaje y una consecuencia visible, y el último paso debe responder a la pregunta inicial; cada paso se conecta con caused_by a los pasos anteriores. El producto debe asumir al menos uno de los siguientes roles: evidencia, ficha, incentivo, obstáculo o herramienta de resolución. Por defecto, allows_unexplained_magic=false; si el usuario especifica explícitamente un mundo fantástico, solo entonces se puede establecer en true, y cada cambio sobrenatural aún debe ser desencadenado por la acción anterior. Los "cupones que se activan de repente, multitudes que aparecen de repente, celebraciones que comienzan de repente" sin elección del personaje se consideran rupturas causales y deben reescribirse.

Al mismo tiempo, completar:

  • dialogue_requirements: al menos una línea o palabra clave irrenunciable por cada Clip no silencioso.
  • prop_continuity_requirements: eventos de aparición, entrega/uso y resultado de los atrezo clave.
  • director_requirements: punto de memoria final y arco de actuación del personaje "inicio → giro → resultado".
  • finale_policy: solo se puede seleccionar story_action o source_fact_card. El primero requiere que la acción/reacción final sea visible en los últimos 3 segundos; el segundo solo permite que la respuesta de la trama se resuelva primero, y luego se use una tarjeta de hechos reales proporcionada por el usuario para cerrar, bloqueando el archivo fuente y los tiempos de inicio y fin.
  • production_design: registrar los activos de referencia del producto y su hash, seis características inmutables, bloqueo de estilo, estado de la música, tipo de movimiento, y para cada Pxx: estado inicial → acción del personaje → acción del producto → reacción del entorno → movimiento de cámara → cambio de velocidad → estado final → desencadenante de transición → punto de sincronización musical.

Cada ritmo de movimiento se conecta con handoff_in/handoff_out en una cadena única desde START hasta END, y se distingue entre product_visibility=visible/withheld_for_reveal para diferenciar la exposición real del retraso revelador de la trama; solo los ritmos visible vinculan forzosamente los activos del producto en el prompt. Los planos dinámicos deben pasar la prueba: "después de eliminar el movimiento de cámara, el personaje o el entorno aún tienen un movimiento evidente"; la inmovilidad intencional solo se permite con evidencia del video original, una breve acumulación inicial o un cierre del producto al final, y se debe explicar el motivo. Las acciones complejas deben vincular al menos tres fotogramas clave: inicio, medio y final. Los anuncios de movimiento continuo deben tener al menos tres niveles diferentes de escalada dinámica, con el nivel más alto no inferior a 4.

Ejecutar según el modo:

  • Réplica visual de alta fidelidad: conservar el orden de los planos, la proporción de duración, el plano, la posición de la cámara, el movimiento de cámara, la dirección de la acción, las transiciones, la estructura de la escena y la luz/color.
  • Migración de mecanismo viral: conservar los puntos de parada, las rutas de juicio erróneo, los cambios de poder, los niveles de giro, la escalada causal y los puntos de memoria finales, sin requerir similitud visual plano por plano.
  • Réplica comercial mixta: reconstruir el conflicto comercial en los segundos 0-3; después de los 3 segundos, restaurar el orden de los planos, la proporción de duración y los ritmos visuales del video original.

No se deben añadir reglas de verificación adicionales de otros modos.

Fase Cinco: Escribir el Guion Segundo a Segundo Según la Cadena Causal del Video Original y Segmentar Dinámicamente

Primero completar todo el guion segundo a segundo, luego dividirlo en varios Clip en posiciones que no corten el diálogo ni la causalidad de los giros. Cada segmento debe ser de 1 a 15 segundos, cubriendo continuamente desde el segundo 0 hasta la duración objetivo. Cada segmento puede tener como máximo 3 unidades ejecutables; los segmentos narrativos pueden tener como máximo 2 unidades de diálogo y 1 línea de hechos del producto principal. Para cada unidad de tiempo se debe usar una tabla Markdown analizable; la columna de tiempo debe estar entre las primeras tres columnas, en formato inicio-fin, y escribir Sxx/Pxx, plano, movimiento de cámara, posición izquierda/derecha/delante/detrás de los personajes, dirección del cuerpo y la mirada, hablante y destinatario, acciones de manos y cuerpo, expresión inicial/cambio/resultado, diálogo en mandarín, sincronización labial, anclas de continuidad y sonido.

Inmediatamente después de completar el guion, ejecutar el análisis automático, sin informar manualmente la cantidad de segundos de voz, número de caracteres chinos y número de ritmos:

python3 "${SKILL_DIR}/scripts/analyze_script.py" \
  "<directorio del proyecto>" --out "<directorio del proyecto>/07_script_analysis.json"

El programa calcula la duración mínima de la voz a 4.2 caracteres/segundo; el diálogo narrativo puede ocupar como máximo el 60% del Clip, la narración en montaje como máximo el 75%, y la lectura de poesía clásica como máximo el 92%. También rechazará unidades sobrecargadas, demasiadas rondas de diálogo, diálogo tipo lista de productos, colocación del producto en el primer 30% sin permiso, y magia sin explicación. Si aparecen errores, no se deben generar imágenes.

En principio, la venta dura del producto no debe aparecer en el primer 30%. El producto debe resolver problemas de la trama en la sección media/tardía a través de los derechos confirmados; si el video original usa el producto como gancho del primer segundo, solo se permite la colocación adelantada si el usuario lo solicita explícitamente y los hechos del producto están completos. El final debe tener por defecto una acción, una reacción grupal o un segundo giro. Solo cuando finale_policy.type=source_fact_card, se permite, después de que el problema de la trama ya se haya resuelto visiblemente, usar una imagen original del producto/derechos real durante 1-2 segundos para cerrar, con una duración máxima de 2.5 segundos; prohibido usar imágenes regenradas por IA o carteles estáticos no vinculados a un archivo fuente para reemplazar la resolución de la trama.

Fase Seis: Definición de Personajes y Storyboards Independientes

Antes de generar la primera imagen, leer completamente la descripción del skill de imagegen instalado en el entorno actual de Codex; usar por defecto el image_gen incorporado, sin cambiar arbitrariamente a CLI/API.

  1. Primero generar una imagen unificada de definición del personaje: frente, perfil, espalda y expresiones clave.
  2. Usar la definición del personaje como referencia de identidad para todas las imágenes narrativas.
  3. Llamar a la generación de imágenes individualmente para cada storyboard; prohibido usar cuadrículas de nueve, viñetas de cómic o collages en lugar de storyboards independientes.
  4. Guardar cada imagen en el directorio del proyecto, y revisar una por una: personaje, escena, atrezo, dirección de la acción, destinatario del diálogo, sin subtítulos/códigos QR/texto irrelevante excepto los de la lista blanca, y relación de aspecto 9:16.
  5. El último fotograma del Clip anterior y el primer fotograma del siguiente Clip deben reutilizar el mismo archivo o una copia con píxeles idénticos; la posición, postura, orientación, atrezo, tiempo y luz del personaje deben ser consistentes.
  6. Cuando el usuario especifique que deben aparecer textos precisos en abanicos, letreros, empaques, etc., solo se permite ese texto de la lista blanca; escribir el texto palabra por palabra en el prompt de generación de imágenes; después de la generación, verificar realmente con view_image para confirmar que no esté reflejado ni mal escrito; luego se escribe en las visual_text_requirements del contrato. En este momento, prohibido continuar usando restricciones conflictivas como "la imagen no debe tener ningún texto".
  7. Para acciones complejas, generar fotogramas clave de inicio, medio y final por separado; los activos de referencia solo bloquean la identidad, el producto y el estado, sin bloquear la postura del personaje. Los fotogramas clave solo se usan como entrada del modelo de video, no se deben tratar directamente como planos dinámicos finales.

Cada storyboard debe estar vinculado a: ID del plano, punto de tiempo, código de tiempo de referencia, propósito de la imagen, plano/posición de cámara/composición, tres estados de la acción y prompt de generación de imágenes.

Fase Siete: Prompts Seedance

Para cada segmento, generar un bloque de código que se pueda copiar completo, que incluya: relación de aspecto, duración exacta, bloqueo del producto, lock_id de estilo y prompt de estilo completo reutilizable, función de las imágenes de referencia, plano segundo a segundo, acción, objeto del diálogo, sincronización labial en mandarín, continuidad de inicio/fin y limitaciones negativas.

Al principio del prompt, listar uno por uno los nombres de archivo y la función de los archivos adjuntos reales de ese segmento; en el cuerpo de cada Pxx, volver a escribir el nombre del archivo del storyboard correspondiente. No se debe escribir solo "consulte los archivos adjuntos". Si se usa música o efectos de sonido del video original, el contrato debe registrar por separado el intervalo de extracción del video original y el intervalo de uso en el video objetivo; el prompt debe escribir el nombre del archivo de audio, la hora de inicio/fin objetivo y "no reemplazar con otra música". "BGM del mismo segmento del video original" no puede reemplazar el nombre del archivo.

Excepto los textos especificados en la lista blanca del contrato, la imagen no debe generar subtítulos, inglés, códigos QR ni información irrelevante. Los modos de alta fidelidad y comercial mixto deben escribir en el prompt, por ID de plano, el orden, la duración, la posición de la cámara, el movimiento de cámara, la dirección de la acción y las transiciones; el modo de migración de mecanismo de alta densidad primero debe dar una tabla de ritmos segundo a segundo, y luego escribir en el prompt en el mismo orden.

Cada Pxx debe repetir punto por punto la cadena de movimiento del contrato: estado inicial, acción continua del personaje, movimiento del producto, reacción del entorno, movimiento espacial de la cámara, cambio de velocidad, estado final, transición desencadenada por la acción y punto de sincronización musical. Un solo plano solo debe tener una acción principal del personaje y un movimiento principal de la cámara; cuando la acción del personaje es compleja, simplificar el movimiento de cámara; cuando el movimiento de cámara es complejo, simplificar la acción del personaje. Prohibido usar zoom de cámara, zoom digital, reemplazo de fondo o cambios rápidos para simular eventos dinámicos.

Fase Ocho: Entrega Opcional de Tabla AI

Solo ejecutar cuando el usuario solicite explícitamente escribir la tabla AI. Primero, usar el skill de DingTalk para leer la Base real, subtablas, campos y registros objetivo; añadir los campos de video automático, fórmula, costo y resultado de generación a los aitable_handoff.protected_field_ids del contrato. Solo se permite escribir en campos de prompt y archivos adjuntos; para cada registro, el total de archivos adjuntos (imágenes de personajes, imágenes de storyboard, audio y materiales del producto) no debe exceder de 9; primero se deben reservar espacios para las imágenes de personajes y el audio, y luego decidir la cantidad de storyboards. Al actualizar los archivos adjuntos, primero releer los archivos adjuntos actuales y realizar un reemplazo conservador completo, prohibido enviar solo archivos nuevos y perder los antiguos. Después de escribir cada registro, se debe volver a leer: la referencia del prompt, el nombre/cantidad de los archivos adjuntos y los valores originales de los campos protegidos deben mantenerse; no se debe hacer clic en el botón de generar. Después de que el usuario solicite explícitamente la generación, leer registro por registro: ID del registro → ID del Clip → archivo/enlace de resultado → duración real → resolución → estado de finalización; después de descargar, solo se puede unir en el orden de tiempo de los Clips del contrato, no en el orden de descarga o la posición de la fila de la tabla.

Fase Nueve: Entrega Después de la Verificación

Usar la tabla de control de calidad previa a la generación para completar el control de calidad del contenido, luego ejecutar la puerta de calidad total previa a la generación:

python3 "${SKILL_DIR}/scripts/run_quality_gate.py" \
  "<directorio del proyecto>" --stage pre-generation \
  --out "<directorio del proyecto>/07_quality_gate_pre_generation.json"

Solo cuando decision=allow_generation se pueden generar imágenes o escribir la tabla AI. La puerta total ejecuta simultáneamente la verificación del contrato/activos y el análisis automático del guion; en caso de fallo, se debe indicar el nivel al que se debe regresar. --legacy solo puede revisar paquetes antiguos, no puede servir como base para la entrega de nuevos proyectos.

Cuando el usuario solicite explícitamente usar VidMuse para completar la generación, edición y exportación, solo después de obtener allow_generation aquí se puede proceder a la Rama de Producción Completa de VidMuse. Esa rama debe primero leer en tiempo real la cuenta, créditos, modelos disponibles y parámetros de generación, y luego calcular el presupuesto que incluya el margen para regenerar planos problemáticos; no se debe asumir el nombre del modelo, precio, duración y capacidad de línea de tiempo solo basándose en este documento o en el historial. Si no hay una solicitud de generación explícita, detenerse aquí.

Después de que el usuario proporcione el video terminado, ejecutar la verificación estructural:

Primero, establecer un 09_delivery_manifest.json para los videos segmentados devueltos por la tabla AI, registrando solo clip_id y archivo real en el orden del contrato:

{"outputs":[{"clip_id":"clip01","file":"renders/clip01.mp4"}]}

El formato del manifiesto posterior a la generación se encuentra en la Especificación de Manifiestos de Control de Calidad Posteriores a la Generación. Se debe preparar el manifiesto de segmentos de la tabla AI, el manifiesto ASR candidato y la evidencia del director de Watch; antes de unir, ejecutar:

python3 "${SKILL_DIR}/scripts/run_quality_gate.py" \
  "<directorio del proyecto>" --stage pre-stitch \
  --delivery-manifest "<directorio del proyecto>/09_delivery_manifest.json" \
  --asr-manifest "<directorio del proyecto>/10_asr_manifest.json" \
  --director-manifest "<directorio del proyecto>/11_director_qc.json" \
  --out "<directorio del proyecto>/12_quality_gate_pre_stitch.json"

Solo cuando decision=allow_stitch se puede unir. Rechazará: segmentos faltantes, orden incorrecto, segmentos duplicados, errores de duración, formato no 9:16, sin pista de audio, pérdida de diálogo clave, pasos de la historia no visibles, arco de actuación faltante, atrezo sin fuente, fallo de continuidad, punto de memoria final faltante, elementos con veto duro, o puntuación del director inferior a 85.

Para los videos de alta fidelidad, ejecutar también la verificación estructural con el video de referencia:

python3 "${SKILL_DIR}/scripts/validate_render.py" \
  "<video original>" "<video terminado>" --out "<directorio del proyecto>/QC/render"

Cuando la duración total del video terminado, la densidad de cambio de planos, la energía media del audio o la dinámica de baja frecuencia del audio no alcancen el umbral, se determina directamente "no alineado", sin afirmar que es de alta fidelidad solo porque aparecen los eventos principales de la trama. La dinámica de baja frecuencia se utiliza para detectar casos en los que el volumen general es aceptable, pero los intervalos clave como explosiones, golpes, música de transición, etc., están realmente ausentes. Luego, revisar todos los fotogramas de 0,5 segundos generados por el guion y verificar palabra por palabra el diálogo del contrato con el ASR candidato.

Independientemente del modo, para cada segmento devuelto por la tabla AI, se debe verificar individualmente: la duración real contra la duración del segmento del contrato (tolerancia no superior a 0,5 segundos), la continuidad del personaje/atrezo, cada paso de causalidad en narrative_qc y el orden de los segmentos; si alguno falla, solo se considera "resultado de generación", no se puede unir ni publicar.

Después de unir, se debe volver a ejecutar prepare_reference.py en el MP4 final, escribiendo la transcripción ASR de dos modelos y la línea de tiempo fija de 0,5 segundos en un directorio de QC independiente; prohibido copiar manualmente el ASR de los segmentos y hacerlo pasar por el ASR del video final unido. Según la Especificación de Manifiestos de Control de Calidad Posteriores a la Generación, establecer 13_final_manifest.json, donde el video final, el archivo de evidencia ASR y la imagen de hechos reales deben estar vinculados con SHA-256. Luego, ejecutar para todos los modos:

python3 "${SKILL_DIR}/scripts/run_quality_gate.py" \
  "<directorio del proyecto>" --stage pre-publish \
  --delivery-manifest "<directorio del proyecto>/09_delivery_manifest.json" \
  --asr-manifest "<directorio del proyecto>/10_asr_manifest.json" \
  --director-manifest "<directorio del proyecto>/11_director_qc.json" \
  --final-manifest "<directorio del proyecto>/13_final_manifest.json" \
  --out "<directorio del proyecto>/14_quality_gate_pre_publish.json"

Solo cuando decision=allow_publish se puede llamar "publicable". La puerta final leerá realmente la duración, relación de aspecto, pista de audio y hash del video unido; cargará los resultados de al menos dos modelos diferentes desde el archivo de evidencia ASR, y verificará la similitud de píxeles de la tarjeta de hechos en el video terminado. Cuando los dos modelos no coinciden, una persona que haya escuchado realmente la pista de audio del video terminado debe completar el revisor, la hora, los IDs de diálogo confirmados y el motivo; el modelo o el resultado ASR no pueden marcar human_audio_qc como aprobado. El modo de alta fidelidad también debe añadir --render-validation como puerta adicional para la alineación estructural con el video original.

Directorio de Entrega Estándar

outputs/<nombre del proyecto>/
├── 00_source_manifest.json
├── 00_reference_evidence.md
├── 01_reference_analysis.md
├── 02_product_facts.md
├── 02_visual_lock.md
├── 03_structure_mapping.md
├── 04_script.md
├── 05_seedance_prompts.md
├── 06_pre_generation_qc.md
├── 07_script_analysis.json
├── 07_quality_gate_pre_generation.json
├── 08_replica_contract.json
├── 09_delivery_manifest.json (después de la generación)
├── 10_asr_manifest.json (después de la generación)
├── 11_director_qc.json (después de la generación)
├── 12_quality_gate_pre_stitch.json (después de la generación)
├── 13_final_manifest.json (después de unir)
├── 14_quality_gate_pre_publish.json (después de unir)
├── asr/
├── audio/ (cuando se necesita música o efectos de sonido del video original)
├── watch/
├── character/character_sheet.png
└── storyboard/ (cada PNG independiente; al escribir la tabla AI, se deben reservar espacios para imágenes de personajes, audio, etc., hasta un total de 9 archivos adjuntos)

Consulte la plantilla de llamada en templates/plantilla_de_llamada.md.

Límites de la Revisión del Video Terminado

Cuando el usuario proporcione posteriormente el video terminado, primero ejecutar la transcripción ASR de dos modelos del MP4 final y la puerta total pre-publish; para el modo de alta fidelidad, ejecutar también validate_render.py. Luego, confirmar si el objetivo es "verificación de correspondencia" o "evaluación de calidad". La verificación de correspondencia compara la línea de tiempo fija del video original, el guion, el storyboard, los prompts, los códigos de tiempo del video terminado y el ASR candidato; no usar adjetivos de calidad en lugar de evidencia de la cadena de planos. Una expresión exagerada en un solo fotograma no equivale a una actuación alineada; se debe verificar el inicio, cambio y resultado de la expresión; cuando aparece un nuevo atrezo, se debe ver la acción de tomar, entregar o transformar.

Skills relacionados