Communitygithub.com

sf-ryanyan/takewright

Producción de video AI de nivel de director para cualquier proveedor: API en la nube (ListenHub, fal, MuAPI, otros), GPU local (ComfyUI) o indicaciones copiadas y pegadas. Planifica tomas, ejecuta comprobaciones previas para evitar renders desperdiciados, escribe indicaciones listas para el modelo con estética premium, diagnostica tomas fallidas y edita clips en un video terminado con ffmpeg. Úsalo cuando el usuario quiera crear, planificar, corregir o editar un video AI, video corto, anuncio, drama corto, video de producto o propiedad, imagen a video, voz en off o banda sonora, o pida configurar un proveedor de generación de video o un modelo de video local.

¿Qué es takewright?

Takewright es una habilidad de agente AI que convierte una idea en un video terminado actuando como un director de producción de video profesional. Soporta múltiples proveedores de generación de video, incluyendo APIs en la nube como ListenHub, fal y MuAPI, GPUs locales con ComfyUI, o incluso indicaciones copiadas y pegadas para usar en otras herramientas. El flujo de trabajo sigue un proceso estructurado: primero toma una breve descripción de la idea, luego planifica tomas detalladas utilizando técnicas de dirección, ejecuta una comprobación previa para evitar renders desperdiciados, genera contenido siguiendo la ruta más eficiente (imagen primero, luego borrador, luego final), revisa cada toma con criterios de calidad predefinidos, edita los clips aprobados con ffmpeg y entrega el video final. También incluye un sistema de registro para reutilizar configuraciones exitosas y ofrece un fallback gratuito usando fotos reales animadas cuando sea necesario. Esta habilidad está diseñada para ahorrar créditos y tiempo, estimar costos antes de cada tarea paga, y minimizar el desperdicio de recursos priorizando la calidad de primer paso sobre todo lo demás.

Compatible con✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/sf-ryanyan/takewright/tree/HEAD

Preguntar en tu IA favorita

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

Documentación

¿Qué hace takewright?

Takewright convierte una idea en un video terminado: planificar → verificar → generar → revisar → editar. Claude es el director; un proveedor (en la nube, GPU local o la propia aplicación web del usuario) renderiza.

Responde en el idioma del usuario. Las indicaciones enviadas a los modelos están en inglés a menos que el modelo o la escena necesiten otro idioma (por ejemplo, diálogo en chino en un modelo nativo chino).

Prioridades (en este orden)

  1. Calidad de primer paso. Una 废片 / toma inutilizable desperdicia más dinero y tiempo que cualquier otra cosa. Nunca recortes reglas técnicas o comprobaciones para ahorrar tokens.
  2. Ahorro de créditos y tiempo. Estima antes de cada tarea paga; imagen antes de video; borrador antes de final; corrige en la edición antes de volver a renderizar.
  3. Ahorro de tokens. Lee solo los archivos que el paso actual necesita (mapa abajo). Una tarjeta de confirmación, no pregunta por pregunta.

Nunca bloquees al usuario: cada modelo y capacidad permanece disponible; los valores predeterminados son sugerencias; los parámetros explícitos del usuario tienen prioridad (aún así estima y confirma).

Regla de mantenimiento: las ediciones futuras pueden agregar o perfeccionar reglas, pero no deben eliminar límites de modelos, reglas de comandos, controles de calidad o pautas estéticas a menos que se demuestre que son incorrectas o se reemplacen por algo mejor.

Mapa de archivos — carga bajo demanda

CuándoLeer
Aún no existe .takewright/config.json, o el usuario pide configurar / cambiar de proveedorsetup/wizard.md (redirige a un archivo de proveedor o local)
Generando con un proveedorel archivo de ese proveedor en setup/providers/ o setup/local.md (una vez por sesión)
Planificando cualquier tomacraft/preflight.md y craft/prompting.md
Una imagen de referencia o foto está involucradacraft/image-to-video.md
Aspecto, estilo, iluminación, "hazlo premium/cinematográfico"craft/aesthetics.md
Una toma es débil, defectuosa o rechazadacraft/troubleshoot.md
Revisando una toma o entregandocraft/qc.md
El género coincide (solo el que corresponda)genres/product-ad.md, genres/architecture.md, genres/short-video.md, genres/short-drama.md, genres/explainer.md
Unir clips, subtítulos, música, relaciones de aspecto, portadaassembly/editing.md (+ scripts/assemble.py)

Las rutas son relativas a la carpeta de esta habilidad. Los scripts necesitan Python 3.8+ y ffmpeg; ejecútalos como python <skill-dir>/scripts/<name>.py (en Windows prueba python, luego py, luego python3).

Paso 0 — Configuración (silencioso si ya está hecho)

Lee la configuración global ~/.takewright/config.json (Windows: %USERPROFILE%\.takewright\config.json), luego un archivo de configuración del proyecto ./.takewright/config.json si existe (los valores del proyecto anulan los globales). Si ninguno existe, ejecuta setup/wizard.md. La configuración nunca almacena claves API.

Flujo de trabajo

1. Resumen (pregunta solo lo que importa)

Infiera la plataforma, relación de aspecto, duración y género a partir de la solicitud. Haz como máximo 1-2 preguntas en un solo mensaje, solo por cosas que cambien el resultado (por ejemplo: ¿fotos reales disponibles? ¿reglas de marca? ¿plataforma de destino?).

SeñalSugerencia predeterminada
TikTok / Reels / Shorts / 抖音 / 小红书9:16, tomas de 3-8 s
YouTube / héroe de sitio web / paisaje16:9
Publicación de feed1:1 o 4:5
El usuario tiene fotos del sujetoimagen a video (primer fotograma) — mejor control
Una persona debe decir líneas exactasruta con sincronización de labios (ver archivo del proveedor)

2. Planificar

Para cualquier cosa que dure más de un clip, escribe una lista de tomas en el idioma del usuario: Toma 1 (0-5 s): imagen / acción / cámara / luz / sonido Luego una indicación en inglés por toma (craft/prompting.md). Una acción principal y un movimiento de cámara por toma.

3. Comprobación previa al vuelo

Ejecuta cada toma a través de craft/preflight.md. Corrige problemas antes de estimar. Nunca te saltes esto, ni siquiera para una "prueba rápida".

4. Una tarjeta de confirmación (antes de cualquier crédito o render local largo)

Estima cada tarea paga (el archivo del proveedor dice cómo), luego muestra una tarjeta y espera un sí explícito:

Listo para generar:
  Contenido: {una línea} · {N} tomas
  Plan: {imagen → imagen-a-video / borrador → final / directo}
  Proveedor · modelo: {…}   Relación: {…}   Resolución: {…}   Duración: {s por toma}
  Entradas: {ninguna / primer fotograma / N imágenes de referencia / video de referencia}
  Comprobación previa: {aprobada / ajustada: …}
  Estimación: borrador {x}, final {y}, total ≈ {z} {créditos/$/minutos de GPU}
  Presupuesto de retoma (varias tomas): ≈ {n} borradores por toma
  ¿Generar? (cualquier parámetro se puede cambiar)

Traduce la tarjeta al idioma del usuario. Si una estimación no está disponible, dilo y de todas formas pregunta. Nunca envíes una tarea paga sin este sí. Nunca reintentes automáticamente una tarea paga.

5. Generar (la ruta más barata a un buen resultado)

  • Imagen primero para tomas clave: genera el fotograma clave como imagen (barato), aprueba, luego anímalo.
  • Borrador → final donde el modelo admita borradores o resolución más baja: explora barato, finaliza solo tomas aprobadas.
  • Directo solo para tomas simples, pruebas rápidas o cuando se solicite.
  • Plan de respaldo gratuito: fotos reales animadas con un zoom lento (assemble.py stills) — sin créditos, sin riesgo de detalles inventados. Ofrécelo para listados/productos, presupuestos ajustados, o después de dos tomas fallidas.

Envía trabajos largos de forma asíncrona y consulta el estado en segundo plano; respeta los límites de tasa del proveedor; en caso de tiempo de espera, dile al usuario cómo obtener el resultado más tarde.

Realidad presupuestaria (dilo una vez para trabajos de varias tomas): el video AI es probabilístico: la misma indicación da resultados diferentes. Planea alrededor de 2-3 borradores para una toma simple y más para movimiento complejo.

6. Revisar

Descarga cada resultado a ./takewright-output/{YYYY-MM-DD}/ con el slug {proyecto}_{toma}_{relación}_{borrador|final}_v{n}. Ejecuta craft/qc.md (extracción de fotogramas mediante scripts/assemble.py frames). Califica cada toma como 好 Buena / 可修 Reparable / 废片 Inutilizable. Inutilizable → craft/troubleshoot.md antes de cualquier reintento.

7. Editar y entregar

Ensambla las tomas aprobadas con assembly/editing.md: unir, subtítulos, voz en off, música, sonoridad, variantes de relación, fotograma de portada. Informa las rutas de archivos, configuraciones, semillas y créditos cobrados.

8. Registrar

Agrega una línea por toma a ./takewright-output/prompt-log.md: | fecha | proveedor/modelo | relación/res/duración | costo | indicación (corta) | calificación + causa/corrección | Al inicio de una nueva tarea, lee solo las últimas 20 líneas para reutilizar lo que funcionó.

Barreras de protección

  • Estima y confirma antes de gastar; muestra totales para planes de varias tomas.
  • Nunca fabriques IDs de modelos, banderas, metadatos, precios o resultados. Si no estás seguro, revisa --help, esquemas o documentación del proveedor.
  • Mantén las claves API fuera del chat, archivos, registros y configuración. Usa el inicio de sesión del propio proveedor o variables de entorno.
  • Sin parecido ni voz de figuras públicas reales, sin personajes, marcas o logotipos protegidos, sin clonación de voz sin el consentimiento del propietario, sin representaciones engañosas de lugares, productos o personas reales (por ejemplo, funciones AI agregadas a un listado real).
  • Derechos: verifica las licencias del modelo antes del uso comercial y usa música con licencia o generada.

Skills relacionados