Communitygithub.com

tasteforge-video

Se utiliza para la detección de imágenes, videos y activos 3D basada en archivos; entrevistas de gusto; flujos de destilación o aplicación; validación de paquetes de estilo; exportación editable EDL/FCPXML; auditorías de procedencia; y planificación offline que debe fallar de forma cerrada antes de la generación por proveedor.

¿Qué es tasteforge-video?

TasteForge Video es un skill de ECC que permite transformar referencias estéticas en flujos de trabajo repetibles e inspeccionables para la edición de video. Su principal función es entrevistar al usuario sobre sus preferencias de estilo, destilarlas en un 'paquete de estilo' estructurado, validarlo y aplicarlo a metraje local para generar un plan de edición, junto con exportaciones editables en formatos EDL y FCPXML. Es una herramienta determinista y offline que opera localmente sin depender de generación por proveedores externos como Fal, garantizando que cualquier solicitud de generación falle de forma cerrada. Está implementado en el paquete `tasteforge` dentro de ECC y se usa a través de la CLI `python3 -m tasteforge` con comandos como `interview`, `distill`, `validate`, `apply`, `export` y `provenance`. Su principal utilidad radica en permitir a los desarrolladores y editores planificar cortes, auditar la procedencia de los activos y mantener un control estricto sobre la separación de géneros estéticos, todo sin necesidad de conexión o autorización de proveedores.

Compatible con~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/affaan-m/everything-claude-code/tree/main/skills/tasteforge-video

Preguntar en tu IA favorita

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

Documentación

TasteForge Video

Para el pipeline creativo independiente completo, usa taste-distillation y luego taste-application. Esos skills de ECC envían sus scripts de Python directamente: medir referencias, generar o pasar tomas existentes, etalonar, cortar, componer, verificar y entregar a Blender y Resolve. No se requiere un repositorio de video separado para ese flujo. Este skill documenta el motor offline empaquetado de ECC y su estricto contrato de evidencia.

TasteForge convierte "haz que se sienta como esta referencia" en un flujo de trabajo repetible e inspeccionable: entrevistar el gusto, destilarlo en un paquete de estilo estructurado, validar el paquete, aplicar su cadencia y aspecto medidos al metraje local y exportar una línea de tiempo editable. La implementación canónica es el paquete tasteforge enviado dentro de ECC en skills/taste-application/scripts/tasteforge/. Ito-Markets/ito-video es un proyecto de ejemplo que consume el motor empaquetado de ECC.

Cuándo Usar

  • El usuario pide entrevistar para el gusto de video antes de que se haya creado cualquier metraje ("pregúntame sobre el aspecto", "entrevístame sobre la dirección estética").
  • El usuario quiere destilar una estética en restricciones estructuradas — un paquete de estilo reutilizable en lugar de sensaciones ("convierte estas referencias en un paquete").
  • El usuario quiere validar un paquete de estilo (¿los metadatos están completos, el esquema es válido, la cadencia medida, la especificación destilada?).
  • El usuario quiere aplicar un paquete de estilo al metraje local — planificar un corte a partir de la cadencia medida del paquete sobre clips locales, de forma determinista.
  • El usuario quiere exportar EDL/FCPXML — una entrega editable y de fotograma exacto para DaVinci Resolve / Premiere / Final Cut.
  • El usuario solicita una auditoría de procedencia de medios generados — de dónde vino este paquete, especificación o corte; qué se midió localmente versus qué fue generado por un proveedor; qué fue una simulación.
  • El usuario pide descubrir o planificar salidas de activos multimodales basadas en archivos para imágenes, video o 3D a partir de archivos de referencia locales, incluidos manifiestos separados, efectos CV anclados a sujetos o recetas de efectos de Resolve.
  • El usuario menciona TasteForge, paquetes de estilo, flashethereal, destilación de gusto, planificación de cadencia/ritmo, descubrimiento multimodal, flujos de destilación/aplicación o una entrevista de gusto para video.

Operaciones Deterministas Locales vs Generación por Proveedor

Este límite es el núcleo de este skill de compatibilidad. Sus operaciones son locales, deterministas y offline:

Operación¿Determinista?ECC puede ejecutar
Entrevista de gusto → perfilsí (offline)sí
Inspección/validación de paquete contra esquemassísí
Destilación de perfil (+ base medida) → especificaciónsí (semántica de simulación)sí
Aplicar cadencia de paquete a medios locales → informe + línea de tiemposísí
Exportar EDL (CMX3600) / FCPXML 1.9sísí
Informe de procedencia/linajesísí
Destilación de imágenes por modelo de visióngeneración por proveedorno
Referencia a video, imagen a 3D, composición alojadageneración por proveedorno

La generación por proveedor debe fallar de forma cerrada en ECC. Cualquier llamada en vivo de Fal (u otro proveedor) — generar tomas, crear mallas de accesorios, destilación VLM alojada — requiere una ejecución explícita y autorizada por separado bajo un carril separado con su propia revisión. En este carril de compatibilidad, ECC nunca llama a Fal, nunca lee ninguna clave API u otras credenciales (incluida FAL_KEY), no sube medios y no muta el estado de la cuenta del proveedor. Cuando una solicitud necesita generación por proveedor, indica exactamente ese límite, ejecuta la mitad local (entrevista, validación de paquete, planificación, exportación) y detente.

Nunca afirmes que un flujo de trabajo de Fal está guardado. Una referencia local a un endpoint de Fal, ID de modelo o URL de simulación (aparecen dentro de los metadatos del paquete) es solo referencia: nunca significa que un flujo de trabajo del lado del proveedor se haya guardado, persistido o esté autorizado para ejecutarse. Cualquier cosa producida offline lleva semántica de simulación — di "especificación de simulación" o "plan determinista", nunca "generado por el modelo".

Implementación Canónica

  • Repositorio: affaan-m/ECC; distribución de Python ecc-tasteforge, directorio del paquete skills/taste-application/scripts/tasteforge/. Instala desde el paquete ECC extraído con python3 -m pip install ./skills/taste-application/scripts. El proyecto de ejemplo Ito-Markets/ito-video fija un commit específico de ECC.
  • CLI: python3 -m tasteforge <comando> — provenance, inspect, validate, interview, distill, apply, export, multimodal. Las banderas --live salen con código 2 y se niegan.
  • Los esquemas son el contrato: perfil de gusto, manifiesto de paquete, etalonaje, cadencia, especificación, eventos de línea de tiempo, informes de aplicación (provider está bloqueado por enum a "none"; dry_run a true).
  • El linaje de fuente recuperada y las exclusiones deliberadas residen en skills/taste-application/SOURCE.md del repositorio. Ejecuta python3 -m tasteforge provenance para la versión legible por máquina.

Usa el motor ECC instalado para comandos deterministas locales e interpreta su JSON. Instala el motor empaquetado si está ausente; no reconstruyas su lógica en línea. taste.resolve es una importación de compatibilidad de tasteforge.resolve, por lo que los scripts creativos y el proyecto de ejemplo comparten un adaptador Resolve verificado.

La CLI python3 -m tasteforge usa la distribución ecc-tasteforge instalada. Los scripts independientes taste-distillation y taste-application se envían en el módulo de generación de medios opt-in de ECC con sus propios requisitos de Python. Ninguna de las dos rutas requiere publicar el repositorio o los medios del usuario.

Antes de reanudar un checkout guardado, registra su commit e inspecciona las ramas locales y los árboles de trabajo para futuras correcciones de implementación. Ejecuta las pruebas del paquete canónico y python3 -m tasteforge apply --help; las pruebas de texto y fixture de ECC no demuestran que el checkout de Python seleccionado implemente este contrato.

Encadenamiento de los Skills Creativos

EtapaPropietarioResultado revisable
Dirección creativatasteGéneros nombrados, observaciones de referencia, lista de aspecto elegido y evitar
Destilación y planificacióntasteforge-videoEvidencia medida, especificaciones de género separadas, manifiestos de simulación y plan de cadencia
Edición y efectosvideo-editing, con el renderizador elegido como Remotion, Manim o FusionMetraje aplicado, pistas reales, efectos y línea de tiempo editables
Activos generados opcionales o vozfal-ai-media o el flujo de trabajo de audio seleccionado, bajo su propia autorizaciónRecibo del proveedor y salida inspeccionada
EntregaFlujo de trabajo de edición, luego content-engine cuando se soliciteCopia exacta de exportación y distribución revisada

Usa solo las etapas que el proyecto necesita. La paleta histórica angelcore/cloud-trance del skill taste y la gramática de ritmo son ejemplos creativos opcionales; no deben anular el resumen actual ni fusionar géneros numerados distintos. Usa las referencias reales de cada género para su dirección, incluyendo 3D Cyber Glitch y Fluid Sketch. TasteForge no reemplaza estos skills ni requiere cada renderizador. Mantén los materiales 3D, la geometría, el comportamiento de la malla alámbrica, el movimiento y la composición explícitos en la firma del género. Un manifiesto de solicitud 3D es un plan para un activo; no es una malla. Un descriptor de anclaje de sujeto nombra un requisito de seguimiento; no es evidencia de que un sujeto fue detectado o rastreado. Inspecciona las pistas reales, el comportamiento de pérdida de pista y los fotogramas de sujeto renderizados antes de afirmar que los efectos CV se han aplicado de manera confiable.

Flujo de Trabajo

  1. Entrevista (interview): recoge respuestas para los ejes de aspecto — paleta, grano, iluminación, distancia focal, movimiento de cámara, encuadre de sujeto, etalonaje, adjetivos de estado de ánimo, lista de evitar — y por separado el resumen de contenido. Mantén el aspecto y el contenido separados; fusionarlos es el fracaso clásico.
  2. Destilar (distill): mapea el perfil en el esquema de especificación offline, incrustando la base medida del paquete (punto negro/blanco, contraste, croma por zona, paleta, ritmo de corte) cuando se proporciona un paquete. El resultado es una especificación de simulación: determinista, proveedor "none".
  3. Validar (validate / inspect): verifica el paquete contra sus esquemas; informa errores vs advertencias (faltan imágenes fijas en un paquete solo de metadatos son una advertencia, no un error).
  4. Aplicar (apply): planifica las duraciones de las tomas a partir de la cadencia medida del paquete (sembrada, determinista) sobre los clips locales del usuario; produce el informe de aplicación y los eventos de línea de tiempo de fotograma exacto.
  5. Exportar (export): escribe EDL CMX3600 + FCPXML 1.9 con tiempos racionales y seguros para NTSC para importar en un NLE real.
  6. Auditar (provenance): informa el linaje — resúmenes de fuente recuperada, historial de generación, procedencia de fixtures, referencias de proveedor como registros de solo puntero.

Aplicar Metraje Real Sin Fuentes Repetidas

Cuando el resumen requiere que no haya clips repetidos, usa un checkout canónico que admita apply --no-repeat --fps y establece la tasa de fotogramas de salida explícitamente. Si esas banderas están ausentes, informa la brecha de implementación en lugar de usar silenciosamente la selección round-robin heredada. El modo estricto usa cada ruta de fuente normalizada como máximo una vez en orden de manifiesto y rechaza fuentes insuficientes o demasiado cortas. Prepara suficientes selecciones revisadas para llenar el plan de cadencia. Esto es unicidad a nivel de fuente, no soporte para rangos de entrada/salida distintos de la misma grabación.

El informe de aplicación es un plan de corte. No realiza clasificación visual de tomas, etalonaje de metraje, aplicación de LUT, renderizado de superposiciones ni importación de un proyecto de Resolve. Mantén la cadencia de referencia medida del paquete separada de la tasa de fotogramas de salida.

La CLI de exportación espera {"clips": [...]}. Envuelve los timeline_events de la aplicación bajo clips antes de exportar y pasa el mismo --fps usado para la aplicación; la tasa de fotogramas predeterminada de exportación no debe reconformar el plan. Verifica el recuento de eventos emitidos, fotogramas totales, fuentes únicas y vinculación de medios antes de entregar la línea de tiempo al flujo de trabajo de edición. Cuando ese flujo de trabajo aplica efectos superpuestos en un NLE, asigna pistas compatibles y lee cada inicio, fin y duración solicitados. Un elemento devuelto o una llamada append exitosa por sí sola no prueba que cada efecto programado se haya colocado; rechaza ubicaciones faltantes, desplazadas o truncadas antes de renderizar.

Contrato Multimodal Basado en Archivos

Usa esta ruta cuando las referencias locales deben impulsar planes de generación de simulación para salidas de imágenes, video y activos 3D mientras se preserva la separación de géneros:

python3 -m tasteforge multimodal --config workflow.json --out-dir out/multimodal

El config nombra géneros numerados y archivos de evidencia locales. Mantén estos géneros candidatos distintos en lugar de fusionarlos en una estética genérica:

  1. Flash Ethereal
  2. 3D Cyber Glitch
  3. Fluid Sketch

El comando mide las referencias locales con ffprobe/ffmpeg y emite una especificación de estilo por género, manifiestos separados de imagen, video y activos 3D, procedencia y una receta de efectos de Resolve. La programación de efectos debe ser sembrada aperiódica. Los efectos CV requieren un ancla de sujeto real cuya política exacta de pérdida de pista sea disable_effect_until_track_recovers; continue_without_anchor y todas las demás políticas fallan de forma cerrada. Cada efecto lleva restricciones de colocación que preservan rostros y texto legible y evitan que las mallas decorativas de esquina reemplacen el trabajo 3D a fotograma completo.

El recibo devuelto es el límite del paquete. Vincula cada artefacto de evidencia emitido por ruta relativa, tamaño en bytes, SHA-256, género, modalidad, provider_execution:false y procedencia exacta de referencia/tiempo. El recibo requiere provider_calls:0 como un entero exacto (el booleano JSON false es inválido), provider_execution:false y dry_run:true. Cada especificación de género también requiere dry_run:true explícito. La receta de efectos de Resolve requiere ese mismo entero exacto provider_calls:0, provider_execution:false y dry_run:true. Cada manifiesto de modalidad y cada solicitud anidada deben contener los cuatro campos exactos de fallo cerrado: entero provider_calls:0, provider_execution:false, dry_run:true y submit:false; cada solicitud también requiere provider_call_mode:"disabled". Un campo faltante es un rechazo, no un valor predeterminado, y dry_run:false debe ser rechazado antes de que se escriba la salida.

Trata los booleanos como números inválidos en todos los datos de línea de tiempo, evidencia, sonda y duración de fuente. Cada valor numérico de este tipo debe ser un real finito: rechaza true, false, NaN, infinitos, inicios de eventos negativos, duraciones no positivas, tiempos de evidencia fuera de rango y eventos que terminan más allá de la línea de tiempo finita positiva declarada. La evidencia de archivo completo usa una base de tiempo de archivo completo explícita y nunca inventa marcas de tiempo.

Las referencias del recibo son la autoridad de duración. Clave cada duración de referencia validada por su SHA-256 citado; las ocurrencias duplicadas de un resumen deben coincidir en la duración o el paquete es inválido. Cada source_duration de evidencia de efecto y cada source_duration de ancla de sujeto debe ser igual a la duración del recibo validado de ese resumen, no solo contener su tiempo citado. La duración de la sonda y todas las mediciones de la sonda deben describir los mismos bytes estables utilizados para el recuento de bytes y SHA-256. Si la fuente muta durante la sonda o se vuelve a hashear de manera diferente mientras todavía está disponible, falla de forma cerrada en lugar de emitir o aceptar un recibo.

Ejecuta siempre la validación del paquete después de la creación. Un manifiesto faltante de imagen, video o activo 3D debe fallar de forma cerrada. Los géneros genéricos o duplicados, las programaciones periódicas, los efectos CV sin anclaje, las restricciones de colocación faltantes, las banderas de ejecución de proveedor, los archivos de salida no vinculados, la deriva de tamaño de bytes o la manipulación de SHA-256 deben fallar de forma cerrada. Rechaza las raíces de salida, los intermedios o los artefactos que sean enlaces simbólicos y rechaza los archivos especiales (incluyendo FIFOs y dispositivos); las salidas deben seguir siendo archivos regulares bajo un árbol de directorios real. Si ffmpeg o ffprobe local no está disponible, la CLI debe devolver su error de procesamiento de medios local acotado no nulo sin un rastreo de Python. No repares un recibo fallido eliminando evidencia o debilitando la validación.

Ejemplo de Sesión

# después de instalar el motor ECC; las rutas a continuación son tus entradas de proyecto
python3 -m tasteforge validate stylepacks/flashethereal
python3 -m tasteforge interview --answers answers.json --genre flashethereal

…

[truncado para la traducción]

Individual skills in this repo

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

accessibility

Design, implement, and audit inclusive digital products using WCAG 2.2 Level AA. Use when building or auditing UI that must meet WCAG 2.2 Level AA, or when reviewing a change for keyboard, contrast, or screen-reader support.

affaan-m/claude-api

Anthropic Claude API patterns for Python and TypeScript. Covers Messages API, streaming, tool use, vision, extended thinking, batches, prompt caching, and Claude Agent SDK. Use when building applications with the Claude API or Anthropic SDKs.

affaan-m/everything-claude-code

End-to-end marketing campaign planning and execution. Covers audience research, positioning, campaign angle definition, landing page copy, email sequences, social posts, ad copy, short-form video scripts, and content calendars. Use as the orchestration layer for multi-channel product launches. Use when planning or executing a multi-channel product launch, or producing landing page, email, social, or ad copy.

affaan-m/everything-claude-code

Development conventions and patterns for everything-claude-code. JavaScript project with conventional commits.

affaan-m/everything-claude-code-conventions

Development conventions and patterns for everything-claude-code. JavaScript project with conventional commits.

affaan-m/frontend-design

Create distinctive, production-grade frontend interfaces with high design quality. Use when the user asks to build web components, pages, or applications and the visual direction matters as much as the code quality.

affaan-m/gget

gget CLI and Python workflow for quick genomic database queries, sequence lookup, BLAST-style searches, enrichment checks, and reproducible bioinformatics evidence logs.

affaan-m/literature-review

Systematic literature-review workflow for academic, biomedical, technical, and scientific topics, including search planning, source screening, synthesis, citation checks, and evidence logging.

affaan-m/motion-ui

Production-ready UI motion system for React/Next.js. Use when implementing animations, transitions, or motion patterns.

affaan-m/project-guidelines-example

Example project-specific skill template based on a real production application.

affaan-m/pubmed-database

Direct PubMed and NCBI E-utilities search workflows for biomedical literature, MeSH queries, PMID lookup, citation retrieval, and API-backed literature monitoring.

affaan-m/scholar-evaluation

Structured scholarly-work evaluation for papers, proposals, literature reviews, methods sections, evidence quality, citation support, and research-writing feedback.

affaan-m/uspto-database

USPTO patent and trademark data workflow for official record lookup, PatentSearch queries, TSDR checks, assignment data, and reproducible IP research logs.

agent-architecture-audit

Full-stack diagnostic for agent and LLM applications. Audits the 12-layer agent stack for wrapper regression, memory pollution, tool discipline failures, hidden repair loops, and rendering corruption. Produces severity-ranked findings with code-first fixes. Essential for developers building agent applications, autonomous loops, or any LLM-powered feature. Use when an agent or LLM feature misbehaves and the failing layer is unknown, or before shipping an agent stack.

agent-eval

Head-to-head comparison of coding agents (Claude Code, Aider, Codex, etc.) on custom tasks with pass rate, cost, time, and consistency metrics. Use when choosing between coding agents, or when a change to an agent setup needs measured pass rate, cost, and time rather than an impression.

agent-harness-construction

Design and optimize AI agent action spaces, tool definitions, and observation formatting for higher completion rates. Use when defining or revising an agent

agentic-engineering

Operate as an agentic engineer using eval-first execution, decomposition, and cost-aware model routing. Use when planning or executing engineering work that agents will carry out end to end.

agentic-os

Build persistent multi-agent operating systems on Claude Code. Covers kernel architecture, specialist agents, slash commands, file-based memory, scheduled automation, and state management without external databases. Use when building a persistent multi-agent system on Claude Code with its own memory, commands, and scheduling.

agent-introspection-debugging

Structured self-debugging workflow for AI agent failures using capture, diagnosis, contained recovery, and introspection reports. Use when an agent run fails and you need a reproducible diagnosis instead of a retry.

agent-payment-x402

Add x402 payment execution to AI agents with per-task budgets, spending controls, and non-custodial wallets. Supports Base through agentwallet-sdk and X Layer through OKX Payments / OKX Agent Payments Protocol. Use when an agent must pay for something itself and needs per-task budgets, spending controls, and a non-custodial wallet.

Skills relacionados