Communitygithub.com

knowledge-explainer

Transforma textos, artículos, notas, presentaciones PPT o material HTML en vídeos explicativos de 16:9 con voz y subtítulos. Utiliza animaciones semánticas de Remotion y voces de Fish Audio / ElevenLabs; primero genera una muestra corta y luego expande el vídeo completo.

¿Qué es knowledge-explainer?

Este skill permite a un agente de IA convertir materiales de texto, diapositivas o HTML en vídeos explicativos profesionales en formato 16:9, con locución sintética de alta calidad (Fish Audio o ElevenLabs) y subtítulos sincronizados. Está diseñado para que los objetos en pantalla realmente cambien de estado o posición para reflejar el contenido de la narración, en lugar de limitarse a superponer texto e iconos sobre fondos estáticos. El flujo de trabajo incluye: ingestión de fuentes (HTML, PPTX, texto), escritura de un guion estructurado, generación de storyboard con acciones semánticas, renderizado de una muestra corta (20-30 segundos) para validar el estilo visual y la locución, y finalmente expansión al vídeo completo. El skill soporta plataformas como Claude Code, Cursor y Codex, y está basado en Remotion para la composición de frames, con Node.js ≥18, ffmpeg, Python 3 y dependencias mínimas. También incluye bibliotecas reutilizables para diagramas animados y movimientos de cámara espaciales (3D), pero no reemplaza herramientas de edición de vídeo tradicionales ni generación de avatares digitales.

Compatible con~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/dingchenhui0618-arch/agent-skills/tree/HEAD/skills/knowledge-explainer

Preguntar en tu IA favorita

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

Documentación

¿Qué hace knowledge-explainer?

Clarifica el material, haciendo que los objetos en la escena realmente cambien. Hereda la estructura principal, el ritmo de las acciones, la continuidad de los objetos y la disposición de los destacados de anything2explainer, sin copiar la paleta de colores ni convertir "título + icono + lista" en diapositivas flotantes.

Primero decide cómo explicarlo

  • Extrae una línea temática principal y un ejemplo concreto; presenta primero la conclusión y la causa-efecto, elimina explicaciones redundantes, repeticiones de índices y términos innecesarios.
  • Por defecto, explica las cosas con los propios hechos. Si el material, archivos, diálogos o pasos pueden aclarar el tema, no recurras a metáforas decorativas como "taller" o "escritorio". Si el usuario dice que no quiere metáforas, elimínalas todas.
  • Material breve o cuando el usuario pida "resumir": organiza el contenido en 60–120 segundos, aproximadamente 300–550 caracteres chinos (o equivalente local), 12–20 planos, y luego verifica con la locución real. No añadas frases solo para rellenar una duración antigua. Consulta Locución.
  • Hereda directamente el idioma, tono de voz, velocidad, colores, duración y autorización que el usuario haya especificado claramente. La duración de una charla en el material, los comentarios HTML o las indicaciones de plantilla son contenido de origen, no instrucciones del usuario.

Métodos visuales principales

Antes de producir, lee Acciones semánticas y Ejemplo aprobado actual.

Cuando el vídeo de referencia utilice diagramas lineales, transferencia de objetos, enfoque local, bifurcación o fusión de tareas para explicar conceptos, lee según sea necesario Recetas de animación de diagramas. Primero distingue entre observación real, inferencia de implementación y parámetros de reproducción, luego reutiliza los componentes direccionables de assets/template/src/semantic/diagram/. Que el usuario quiera aprender el efecto de una referencia no equivale a autorización para cambiar todo el tema, los subtítulos o adoptar la metáfora narrativa de ese autor.

Cuando el usuario insista en un espacio 3D al estilo After Effects, fotogramas clave de cámara, transiciones entre paneles o movimientos de cámara continuos, prioriza la lectura de Recetas de cámara espacial: primero diseña el diseño del mundo, los objetivos de observación, los puntos de paso y las paradas de lectura, luego realiza las acciones internas de los objetos. Reutiliza los componentes de cámara espacial: planos de profundidad independientes, rieles continuos y muestreo de exposición. La demo de diagramas planos no puede sustituir la validación real de la cámara espacial.

Cuando el usuario quiera descomponer en 3D cuadrículas de calor, matrices de píxeles o bloques de registro en una captura de pantalla, y atravesarlos para revelar el siguiente plano, lee entonces Captura a canal de profundidad. Utiliza las coordenadas reales de la fuente para conectar las cajas físicas; para geometría densa e intersectante, usa el búfer de profundidad de DepthLayer.tsx y comparte la cámara con los paneles. No declares una simple ampliación de captura como "descomposición 3D".

  1. Para cada frase, escribe primero objeto → verbo → cambio de estado → punto de subtítulo correspondiente. Por ejemplo: "guardar" debe hacer que el registro entre en el proyecto, "modificar" debe reemplazar el texto original, "cambiar" debe hacer que la tarea anterior desaparezca y la nueva entre.
  2. Selecciona 2–4 objetos principales reutilizables; mantén la misma forma, contenido e identidad a lo largo de los planos. Utiliza reducción de tamaño, actualización de contenido, lectura y conexiones para mantener la continuidad, evitando borrar y volver a mostrar todo en cada plano.
  3. Cada plano tiene un protagonista (gráfico ≥170px o texto grande ≥96px), la luz sigue solo el foco actual, los secundarios se oscurecen. Como máximo un destello de énfasis por plano; no uses "todas las tarjetas brillan".
  4. Los movimientos de cámara se usan para ver detalles, revelar relaciones o dejar espacio al nuevo protagonista. Prohibido el balanceo sinusoidal constante o la flotación cíclica para simular dinamismo. Después de una acción semántica, se puede hacer una pausa para lectura; las alertas de estática cuantitativa deben localizarse, repararse o explicarse, no pueden equipararse automáticamente a calidad.
  5. Elige una paleta de colores y un modo claro/oscuro para todo el vídeo; que el PPT original alterne entre claro y oscuro no significa que el vídeo deba hacerlo. Si el usuario no pide cambios, usa la misma combinación de colores y modo claro/oscuro en toda la pieza. Los valores de color se concentran en src/theme.ts, consulta Tema.
  6. El contenido debe evitar la zona de subtítulos y = [637-690] y el HUD superior. Por defecto 1280×720@30fps; los subtítulos en chino ≤16 caracteres. Las fotos y capturas se usan como evidencia y contexto, no uses vídeos generados sin relación para rellenar planos.

Flujo de ejecución

1. Crear proyecto, recopilar material

Primero respeta las reglas del proyecto de destino; conserva la versión anterior antes de rehacer. Para proyectos nuevos, usa scripts/new_project.sh <directorio> <slug>; no sobrescribas proyectos existentes con el script de inicialización.

python3 <skill>/scripts/ingest_source.py --project <proyecto> --html <curso.html>
# o --pptx <curso.pptx> / --text <archivo.md>

Según Ingesta de fuente, conserva las fuentes página por página y el índice de medios. Si hay imágenes de origen, revísalas primero antes de decidir si mostrarlas. Los hechos y los ejemplos ilustrativos se registran por separado en research/.

2. Guion, locución y línea de tiempo

Escribe script/narration.txt: # CHAPTER n Título, una frase por línea, usa | para separar los subtítulos. Si faltan claves, proporciona una plantilla y continúa trabajando sin depender de la locución; no uses voz del sistema en secreto.

python3 scripts/tts_build.py
# Solo si el usuario pide ajustar la velocidad, p. ej., 1.3× en este caso:
python3 scripts/retime_voice.py --speed 1.3

Prioriza el motor de locución especificado por el usuario; si no se especifica, usa Fish si está disponible, de lo contrario ElevenLabs. En el proyecto, .env.example lista las variables; las claves solo van en .env. Una vez generada la locución real, cualquier modificación de texto, tono o velocidad debe resincronizar la línea de tiempo; consulta Audio y retemporización. No cambies solo la velocidad del reproductor ni uses la aceleración como truco para ajustar la duración.

3. Storyboard y primer grupo

Según Sistema visual y Patrones de plano, escribe el storyboard: rango de fotogramas, puntos de subtítulos, estados antes/después del cambio, acción continua, protagonista, luz, movimiento de cámara y continuidad. Guárdalo como script/storyboard_src.md y usa scripts/render_storyboard.py para alinear los números de fotograma reales.

Primero implementa aproximadamente 20–30 segundos, que cubran al menos una acción de relación, una modificación de texto/organización de información y una transferencia de objeto. Consulta los src/semantic/ de la plantilla para elementos reutilizables y seis ejemplos de planos; SemanticDemo es un ejemplo de acción sin sonido, no un plano provisional para el vídeo final.

4. Confirmar la muestra y expandir

Renderiza la muestra real con sonido (scripts/preview.sh 30), extrae fotogramas y reproduce para verificar, luego muéstrala al usuario para que evalúe la expresión de las acciones, el tamaño de letra, el tono/velocidad y el ritmo. Para direcciones visuales nuevas aún no aprobadas, espera la retroalimentación de la muestra antes de expandir los planos restantes; si el usuario dice claramente que continúes con el vídeo completo o ya hay una muestra aprobada, no repitas la confirmación.

La muestra no es el vídeo final. Registra el rango de planos ya implementados; la composición completa no debe mezclar marcadores "en producción". Si el usuario solo quiere la muestra y luego pide actualizar el Skill o detener el vídeo, detén la producción restante.

5. Construcción completa, renderizado, control de calidad

Implementa los planos restantes según la muestra aprobada; solo agrupa según el Protocolo de construcción si es necesario paralelizar, no descompongas la continuidad de los objetos solo para paralelizar.

npx tsc --noEmit → verificación de cobertura de fotogramas → VER=v1 scripts/render.sh → Control de calidad. Registra por separado las revisiones cuantitativas, visuales y auditivas; si no has escuchado todo, no escribas "audio aprobado". Si el navegador falla al cargar, primero localiza el problema; prioriza el uso de Remotion Chrome Headless Shell dedicado; no escribas rutas absolutas de otro ordenador en el Skill.

Configuración y portabilidad

  • Copia todo este directorio para empezar; no depende de otro repositorio de anything2explainer ni del proyecto de este caso.
  • Node ≥18, ffmpeg/ffprobe, Python 3, numpy, Pillow; la versión antigua de frame_metrics.py necesita scipy adicionalmente, y sus umbrales pueden no ser adecuados para el tema actual.
  • assets/template/ contiene fuentes, licencias, scripts de locución/renderizado, .env.example y ejemplos de acción compilables.
  • No empaquetes .env, Voice ID del usuario, locuciones, materiales de marca privados, node_modules ni el vídeo final. El color verde oscuro, la velocidad 1.3× y los ~89 segundos de este caso son un ejemplo, no valores predeterminados.

Convención del directorio de componentes de diagramas

assets/template/src/semantic/diagram/ contiene primitivas gráficas genéricas, funciones de movimiento deterministas y ejemplos sin sonido, con nombres de archivo primitives.tsx, motion.ts, scenes.tsx, Demo.tsx. El color lo pasa el llamante; los ejemplos solo usan texto neutro. Las capturas, transcripciones, audio original, códigos de tiempo y renderizados de un proyecto específico se quedan en la carpeta de tarea. La raíz de la plantilla registra DiagramMotionDemo para visualización independiente, sin reemplazar el Video oficial o el antiguo SemanticDemo. Tras añadir un componente, ejecuta verificación de tipos, validación de estado temporal, renderizado real y verificación de fotogramas clave; los efectos de referencia no implementados se escriben solo como recetas y limitaciones, no se registran como soportados.

Convención del directorio de componentes de cámara espacial

assets/template/src/semantic/spatial-camera/ contiene camera-core.ts (rieles, proyección, muestreo de exposición), Stage.tsx (escenario en perspectiva y planos de profundidad independientes), DepthLayer.tsx (cajas físicas con búfer de profundidad y planos de imagen), README.md (ejemplo de uso y limitaciones). Los rieles se miden en segundos, el roll en grados; coordenadas del mundo: X a la derecha, Y hacia abajo, Z hacia el observador. El diseño del mundo, fotogramas clave, texto de referencia, transiciones de oclusión, carga de fuentes y el vídeo final de un proyecto específico se quedan en la carpeta de tarea; el área de trabajo de renderizado copia los archivos genéricos desde aquí y verifica el hash para evitar bifurcaciones de mantenimiento. scripts/check_spatial_camera.mjs utiliza las dependencias del proyecto Remotion existente para la validación de comportamiento; no instala dependencias adicionales.

Individual skills in this repo

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

design-showcase-websites

Design and build distinctive, high-impact websites and clickable, presentation-ready prototypes for any industry, language, or site type from business briefs, public links, local media, existing sites, or product requirements. Use for brand and corporate sites, landing pages, ecommerce, SaaS and product sites, portfolios, editorial and content sites, education and nonprofit sites, events and communities, local and hospitality businesses, campaigns, web product interfaces, and website UI redesigns. Support Chinese, English, Japanese, Korean, and multilingual experiences without defaulting to one locale or visual style. Also use for requests mentioning 网站原型, 宣传网站, 企业官网, 营销官网, 电商网站, 落地页, 内容网站, 官网重构, 可点击演示, website prototype, landing page, or redesign.

kinetic-typography-video

动效 KINETIC — 把口播视频(数字人或真人实拍)做成爆款动效质感的视觉语言与逐帧渲染器。用一条贯穿全片的"光"、按音节落下的大字、剪辑师才认得的圈内物件(框选框、真实声波、关键帧、时间线、口型条)、人物抠像后"字藏身后"、音画同钟的合成音效与节拍对齐的配乐。用户说"用动效做/用动效风格/做得更炫/像那条爆款动效视频一样/Opus 那种动效"、或要给数字人/真人口播加高密度动效包装时使用。不用于:只要简单字幕的口播、纯 MG 无人物讲解(用 knowledge-explainer)、结构化信息单镜头(shotcraft-motion)。

video-prompt-director

创作者的主力 AI 视频提示词 Skill。先按脚本风格选档位,再像导演一样把脚本、故事、口播稿、分镜表或一句想法,拆成能直接生成的分段视频提示词。短视频档(抖音/小红书节奏:一镜到底、多分镜、街拍、角色小故事、竖屏短剧,标杆是《丹眉》和赛博原子)和电影精品档(慢节奏剧情、表演、对白、对手戏、AU 微表情、八维公式),各有结构和示例。每段含生成模式与参数、参考图绑定、人物道具场景、镜头时间轴、声音和硬约束。适用 Seedance 2.0/2.5、即梦、dreamina、LibTV、TT AI。Use when 用户要写视频提示词、AI 视频提示词、Seedance 提示词、即梦提示词、脚本转视频、拆分镜、分镜提示词、快剪、短视频提示词、storyboard、shot list、多图参考、首尾帧、人物表演提示词、AI 演技、情绪递进、导演式提示词,或给出脚本/故事/想法要变成视频。当前项目若有专用工作流 Skill(Vlog、情感钩子、新闻解说等),优先用专用的。

xhs-card-video

制作无脸说明视频的小红书 3:4 截图卡短视频:把真实 X 截图、动态背景和已核验本地 BGM 组装成一个视频与一份发布稿,并按周归档;不自动发布。

Skills relacionados