Versión en inglés:
SKILL.en.md
media — video / audio / imagen / URL
Skill ligero, sin código propio: enruta a CLI local (ffprobe, ffmpeg, yt-dlp) y a skills de terceros descargados por sesión (mediaskills, watch, music-listener) — ver sección fetch más abajo.
Tabla de enrutamiento por tipo de entrada
Se identifica con ffprobe/file; para URLs se examina el nombre del archivo devuelto.
| Entrada + necesidad | Herramienta | Notas |
|---|---|---|
| Metadatos de archivo multimedia | ffprobe (local) | no necesita skill de sesión |
| Video/URL para resumir contenido | skill watch (claude-video) | --engine local |
| Video/URL para extraer texto (SRT/VTT) | skill speech-captions | transcribe.py --model tiny; modelo grande si se requiere más precisión |
| Subtítulos: desplazar/convertir/quemar | skill subtitles | shift.py convert.py extract.py burn.py |
| Cortar/unir/transcodificar, GIF, fotograma/audio | skill video-transformation | trim.py trim_multi.py concat.py … |
| Detección de cortes/transiciones de plano | skill shots | detect.py extract-frames.py |
| Análisis de contenido de fotogramas (texto en pantalla) | skill vision-analysis | el agente ve el fotograma + script que fusiona JSON |
| Imagen/captura de pantalla: OCR/redimensionar/convertir | skill image | ocr.py (tesseract) |
| Audio: recortar/normalizar/silencio | skill audio | |
| Escuchar música desde URL/archivo, obtener letra | skill music-listener | descarga por sesión, ver music-listener/scripts/ |
| Descargar medios desde URL | skill download | url.py (yt-dlp) |
| Timecode SMPTE, subtítulos broadcast | skill timecode, skill captions-compliance | sincronizar subtítulos según TC |
| Falta ffprobe/tesseract/uv… | skill install-media-tools | doctor.sh verifica, install.sh instala |
Skills de terceros por sesión (fetch, no se instalan permanentemente)
Este repositorio no contiene los skills de terceros. Se descargan en la sesión temporal:
scripts/fetch-session.sh --list→ ver nombres;--skill <nombre>o--all— el script clona sparse del repositorio fuente en el commit SHA correcto, y copia en la sesión temporal.- Se usan en
~/.agents/skills/<nombre>/scripts/(o~/.config/opencode/skills/<nombre>/…). - Sin conexión: las operaciones sobre archivos locales funcionan si las CLI y el modelo necesario están listos. La descarga de skills por sesión, la descarga de URLs y los modelos no cacheados requieren conexión;
yt-dlpno descargará URLs sin conexión.
Commit SHA + licencia de cada skill: tabla TABLE en scripts/fetch-session.sh.
Reglas
- Salida junto al origen: resumen
<nombre>.digest.md, subtítulos<nombre>.srt|.vtt, clip<nombre>.clip-<t1>-<t2>.mp4. No sobrescribir el archivo original. - Marcas de tiempo/clips basados en fotogramas reales — verificar con
ffprobe, no estimar. - Verificar antes de entregar: el archivo de salida debe poder abrirse con
ffprobe, duración/códec correctos según lo solicitado. - Respetar idioma de entrada — responder en el mismo idioma que usa el usuario.