Prerrequisitos
Instala y carga estos skills antes de generar (saltar si ya están en contexto vía @pruna):
| Skill | Descripción | Instalación |
|---|---|---|
generation-diversity | Úsalo al escribir cualquier prompt generativo — semilla ritual, estructura explícita, ejes de escenario y compuertas de calidad antes de llamadas a API de pago. | npx skills add PrunaAI/pruna-skills@generation-diversity -y |
video-prompting | Úsalo al elaborar prompts de video o movimiento para cualquier modelo generativo — dramaturgia, cámara, movimiento físicamente seguro, anclajes de fotograma y encadenamiento de clips. | npx skills add PrunaAI/pruna-skills@video-prompting -y |
audio-prompting | Úsalo al crear prompts de TTS, música o ambiente para cualquier modelo de audio generativo — estilo de director, estructura de canción y capas de postproducción. | npx skills add PrunaAI/pruna-skills@audio-prompting -y |
pruna-api | Úsalo antes de cualquier llamada HTTP a Pruna o Replicate — credenciales, subida/sondeo/descarga, lotes paralelos y seguridad del agente. | npx skills add PrunaAI/pruna-skills@pruna-api -y |
O instala la suite completa una vez: npx skills add PrunaAI/pruna-skills@pruna -y
Sigue las secciones Antes de generar / artesanía de cada skill — no repliques el contenido guía aquí.
Hábito del agente
Enrutamiento: `p-video-2` es el generador de clips 1080p / audio importado / borrador (texto / imagen / audio). Usa `p-video-2-pro` para generación cinematográfica con audio generado (480p / 768p, primer/último fotograma, sin subida de audio). Usa `p-video` para clips más sencillos y rápidos. Solo talking-head (sin audio de escena nativo) → `p-video-avatar`. Edición por instrucciones de metraje existente → `p-video-edit`.
En la primera respuesta, nombra `p-video-2` entre acentos graves, confirma PRUNA_API_KEY (o detente con enlaces de registro de pruna-api), luego pregunta por las entradas requeridas. Admisión abierta → aclaración de admisión generation-diversity antes del primer POST. Al redactar prompts de movimiento, sigue Artesanía del prompt (dinámico + fiel) y video-prompting (p-video-2-prompting) — no pegues ejemplos del skill. Redirige cuando encaje mejor Cuándo NO usar.
Artesanía del prompt (dinámico + fiel)
Cada input.prompt debe ser fresco y específico, y debe coincidir con el ritmo del usuario. La diversidad nunca anula el briefing. Elabora deltas vs p-video: video-prompting (p-video-2-prompting).
| Hacer | No hacer |
|---|---|
Ejecutar el ritual de semilla aleatoria de generation-diversity; indicarlo; rotar ≥2 ejes libres (movimiento de cámara, cambio de iluminación, textura, ritmo) cuando el briefing lo permita | Copiar ejemplos de curl de este skill (coche deportivo, persona gira, …) o reutilizar el prompt de una sesión anterior |
Bloquear primero los hechos requeridos por el usuario (sujeto, ritmo de acción, OPEN/MID/CLOSE cuando esté anclado por fotograma, sincronización de narración cuando audio esté configurado) | Intercambiar el sujeto o movimiento por un clip "más guay" que ignore la solicitud |
Estructurar con dramaturgia de video-prompting — una acción congelada por ritmo, cámara estable para I2V, movimiento físicamente seguro | Cadenas de solo estado de ánimo vagas (vibra cinematográfica, energía neón) o movimientos de cámara cinematográficos extremos |
Cuando audio esté configurado, el movimiento y el ritmo deben coincidir con el ritmo de la narración/interpretación; mantener a los hablantes en uno o dos | Desviarse a una acción no relacionada mientras suena la VO, o saturar un clip con 3+ caras parlantes |
Mostrar el prompt redactado + campos de modo antes del POST cuando el usuario no haya fijado la redacción | Regenerar en silencio con un sujeto o ritmo diferente al aprobado |
Control de fidelidad (antes de pagar): si eliminas el sujeto/acción/escenario nombrado por el usuario del prompt, el trabajo está mal — reescribe. Los ejes libres solo llenan lo que el briefing dejó abierto.
Al mostrar un prompt redactado, sigue nombrando `p-video-2` (las guías ayudan a la artesanía; esta herramienta es dueña de la llamada).
Límite del skill
Este skill = una predicción p-video-2 por invocación.
Fuera de alcance (no ejecutar desde este skill):
- Ensamblaje de múltiples escenas, concatenación, orquestación de subagentes o lotes de escenas paralelas
- Generación cinematográfica con audio generado (sin pista importada) →
p-video-2-pro - Transferencia de movimiento desde un video plantilla →
p-video-animate - Solo talking-head / anfitrión con sincronía labial sin audio de escena nativo →
p-video-avatar - Edición por instrucciones de metraje existente →
p-video-edit
Si la solicitud excede un clip, detente y recomienda: image-to-video (un ritmo narrado), visual-transition-reel (visual multiescena) o narrated-multi-scene (múltiples escenas + VO).
Cuándo NO usar
Usa un skill diferente en su lugar:
| Skill | Descripción | Instalación |
|---|---|---|
p-video-2-pro | Úsalo cuando se quiera un clip cinematográfico a partir de texto o fotogramas inicial/final — anuncios de producto, tomas documentales o diálogos con audio generado. No para 1080p, pistas de audio importadas o anfitriones solo talking-head. | npx skills add PrunaAI/pruna-skills@p-video-2-pro -y |
p-video | Úsalo cuando se quiera un clip corto simple a partir de texto o imágenes — B-roll rápido, borradores o animación de fotograma inicial/final. No cuando el briefing necesite generación cinematográfica, máxima calidad, sincronía labial ajustada o audio importado a 1080p. | npx skills add PrunaAI/pruna-skills@p-video -y |
p-video-avatar | Úsalo cuando se quiera una persona en cámara hablando un guion — anfitrión con sincronía labial, portavoz o avatar narrado a partir de una foto de retrato. | npx skills add PrunaAI/pruna-skills@p-video-avatar -y |
p-video-animate | Úsalo cuando se quiera que una foto se mueva como otro video — transferencia de movimiento, remixes de baile o variaciones de interpretación a partir de un clip plantilla. | npx skills add PrunaAI/pruna-skills@p-video-animate -y |
p-video-replace | Úsalo cuando se quiera intercambiar una persona, atuendo o producto dentro de metraje existente manteniendo el movimiento de cámara y el audio. | npx skills add PrunaAI/pruna-skills@p-video-replace -y |
p-video-edit | Úsalo cuando se quiera editar un video existente con una instrucción de texto — recolorar, cambiar estilo, eliminar o añadir objetos, cambiar entorno o iluminación, actualizar texto en pantalla, o aplicar ediciones opcionales de producto y accesorios guiadas por referencia. No para un clip nuevo desde cero o ensamblaje con ffmpeg. | npx skills add PrunaAI/pruna-skills@p-video-edit -y |
video-editing | Úsalo al ensamblar o pulir clips ya renderizados con ffmpeg — concatenación, encadenados, subtítulos y leyendas quemados, superposiciones de texto/logotipo, controles deslizantes antes/después, lechos de música de fondo, exportación para plataforma — o al componer un video combinado HTML multicapa con Hyperframes. No para generación de video con IA, artesanía de prompts o ediciones de video basadas en modelos. | npx skills add PrunaAI/pruna-skills@video-editing -y |
HTTP (curl)
Subida para imagen-a-video / anclajes de fotograma
curl -X POST "https://api.pruna.ai/v1/files" \
-H "apikey: ${PRUNA_API_KEY}" \
-F "content=@/ruta/a/primer-fotograma.png"
Pasa urls.get como input.image (primer fotograma) y/o input.last_frame_image (último fotograma). Sube TTS/música de la misma manera para input.audio.
Crear (texto-a-video asíncrono — recomendado)
curl -X POST 'https://api.pruna.ai/v1/predictions' \
-H 'Content-Type: application/json' \
-H "apikey: ${PRUNA_API_KEY}" \
-H 'Model: p-video-2' \
-d '{
"input": {
"prompt": "Un coche deportivo derrapando por una ciudad iluminada con neón de noche, toma aérea cinematográfica",
"duration": 5,
"resolution": "720p",
"aspect_ratio": "16:9"
}
}'
Sondea y descarga: sigue pruna-api.
Completa el ritual de semilla aleatoria de generation-diversity antes de escribir prompts — no pases la cadena del ritual como seed de la API.
La facturación es por segundo devuelto (no la duration solicitada). Límite de velocidad: 250 solicitudes por minuto.
| Resolución | draft=false | draft=true |
|---|---|---|
| 720p | $0.025 / s | $0.015 / s |
| 1080p | $0.05 / s | $0.03 / s |
Primer / último fotograma (transición visual)
curl -X POST 'https://api.pruna.ai/v1/predictions' \
-H 'Content-Type: application/json' \
-H "apikey: ${PRUNA_API_KEY}" \
-H 'Model: p-video-2' \
-d '{
"input": {
"prompt": "OPEN: mantener plano abierto en callejón mojado, parpadeo de neón. MID: dolly lento hacia adentro, lluvia golpea el asfalto. CLOSE: posar en pose final.",
"image": "https://api.pruna.ai/v1/files/START_ID",
"last_frame_image": "https://api.pruna.ai/v1/files/END_ID",
"duration": 5,
"resolution": "720p",
"fps": 24
}
}'
Trío de anclaje de escena (image + last_frame_image + audio)
curl -X POST 'https://api.pruna.ai/v1/predictions' \
-H 'Content-Type: application/json' \
-H "apikey: ${PRUNA_API_KEY}" \
-H 'Model: p-video-2' \
-d '{
"input": {
"prompt": "Primer plano de un cantante interpretando la pista subida. Sincronía labial natural, rostro expresivo, iluminación de escenario, la cámara se mantiene firme sobre el intérprete.",
"image": "https://api.pruna.ai/v1/files/SCENE_START",
"last_frame_image": "https://api.pruna.ai/v1/files/SCENE_END",
"audio": "https://api.pruna.ai/v1/files/SCENE_NARRATION",
"resolution": "720p",
"fps": 24,
"save_audio": true
}
}'
Omite duration cuando audio esté configurado. Duración del clip = min(longitud del audio, 20s) — mantén TTS ≤ ~19s (ffprobe antes de renderizar). Los trabajos condicionados por audio se facturan por la longitud del audio.
Crear (síncrono — solo prueba rápida)
curl -X POST 'https://api.pruna.ai/v1/predictions' \
-H 'Content-Type: application/json' \
-H "apikey: ${PRUNA_API_KEY}" \
-H 'Model: p-video-2' \
-H 'Try-Sync: true' \
-d '{
"input": {
"prompt": "Un coche deportivo derrapando por una ciudad iluminada con neón de noche, toma aérea cinematográfica",
"duration": 5,
"resolution": "720p",
"draft": true
}
}'
Antes de generar
- Completa el orden de lectura de los Prerrequisitos (
generation-diversity→video-prompting). - Semilla ritual → redacta un prompt de movimiento dinámico + fiel (sección anterior) → confirma modo (T2V / I2V / par de fotogramas / audio),
duration(omitir para que el modelo elija a partir del prompt, o cuando esté basado en audio),resolution,fps,draftypromptcon el usuario. - Notas de Pruna: cuando
imageestá configurado, se ignoraaspect_ratio. Conaudio, omitedurationy manténsave_audio: true(por defecto) para conservar la narración. Para habla en cámara, lidera con T2V habla nativa (save_audio: true, sinaudioimportado) — pausa / línea / reposo de sincronía labial es el salto de calidad vsp-video. Elaudioimportado mantiene una cara más limpia; el bloqueo de visemas es mixto — no trates un wav multiplexado como la demostración de sincronía labial. Itera endraft: true, luego final condraft: false. Si la solicitud es multiescena — detente (ver Límite del skill). No se admite 4K nativo.
Entrada requerida
prompt(string)
Campos opcionales comunes
| Campo | Rol |
|---|---|
image | Primer fotograma — anclaje I2V; cuando se configura, se ignora aspect_ratio (jpg, jpeg, png, webp) |
last_frame_image | Imagen de estado final opcional |
audio | Condicionado por audio; la duración sigue al audio (limitado a 20s); flac/mp3/wav |
duration | 1–20s; déjalo vacío para que el modelo elija la longitud a partir del prompt; ignorado si audio está configurado |
resolution | 720p (por defecto) o 1080p |
fps | 24 (por defecto) o 48 |
aspect_ratio | Cuando no hay image: 16:9 (por defecto), 9:16, 4:3, 3:4, 3:2, 2:3, 1:1 |
draft | true = vista previa más barata y rápida ($0.015/s 720p, $0.03/s 1080p); false (por defecto) = final |
save_audio | Mantener el audio generado por el modelo o subido en la salida (por defecto true) |
prompt_upsampling | Mejorar el prompt (por defecto true) |
seed, disable_safety_filter | Reproducibilidad / política del cliente |
Relacionados
Skills relacionados:
| Skill | Descripción | Instalación |
|---|---|---|
p-video-2-pro | Úsalo cuando se quiera un clip cinematográfico a partir de texto o fotogramas inicial/final — anuncios de producto, tomas documentales o diálogos con audio generado. No para 1080p, pistas de audio importadas o anfitriones solo talking-head. | npx skills add PrunaAI/pruna-skills@p-video-2-pro -y |
p-video | Úsalo cuando se quiera un clip corto simple a partir de texto o imágenes — B-roll rápido, borradores o animación de fotograma inicial/final. No cuando el briefing necesite generación cinematográfica, máxima calidad, sincronía labial ajustada o audio importado a 1080p. | npx skills add PrunaAI/pruna-skills@p-video -y |
gemini-3.1-flash-tts | Úsalo cuando se necesite narración hablada o voz en off — pistas explicativas, líneas documentales o voz para acompañar video generado. | npx skills add PrunaAI/[email protected] -y |
image-to-video | Úsalo cuando se quiera un ritmo de película corto a partir de imágenes — una escena narrada, momento de historia o metraje B-roll cinematográfico con voz en off opcional. | npx skills add PrunaAI/pruna-skills@image-to-video -y |
visual-transition-reel | Úsalo cuando se quiera un montaje con transiciones entre tomas — reel de secuencia de acción o pieza multiescena donde la narración sea opcional. | npx skills add PrunaAI/pruna-skills@visual-transition-reel -y |
narrated-multi-scene | Úsalo cuando se quiera una historia de múltiples partes con voz en off — metraje B-roll episódico, promoción por capítulos o varias escenas de video enlazadas sin diálogo en cámara. | npx skills add PrunaAI/pruna-skills@narrated-multi-scene -y |
p-video-avatar | Úsalo cuando se quiera una persona en cámara hablando un guion — anfitrión con sincronía labial, portavoz o avatar narrado a partir de una foto de retrato. | npx skills add PrunaAI/pruna-skills@p-video-avatar -y |
p-video-animate | Úsalo cuando se quiera que una foto se mueva como otro video — transferencia de movimiento, remixes de baile o variaciones de interpretación a partir de un clip plantilla. | npx skills add PrunaAI/pruna-skills@p-video-animate -y |
video-editing | Úsalo al ensamblar o pulir clips ya renderizados con ffmpeg — concatenación, encadenados, subtítulos y leyendas quemados, superposiciones de texto/logotipo, controles deslizantes antes/después, lechos de música de fondo, exportación para plataforma — o al componer un video combinado HTML multicapa con Hyperframes. No para generación de video con IA, artesanía de prompts o ediciones de video basadas en modelos. | npx skills add PrunaAI/pruna-skills@video-editing -y |