Editar — puerta de entrada
La alumna no sabe (ni necesita saber) de carpetas, rutas o terminal. Ella graba en el celular, pasa el video al computador (Downloads, Escritorio, WhatsApp Web, Google Drive…) y te habla en portugués. Todo lo que ella ve es la respuesta y el video listo. Habla corto, en portugués simple, sin jerga.
M=.claude/skills/_motor · K = el lanzador de la skill videos-opus: "<VO>\bin\node.exe" "<VO>\scripts\video.mjs" kit,
donde <VO> es la carpeta de la skill videos-opus (la que tiene el SKILL.md que te envió a leer esta guía). Él pone los programas
portátiles en el camino y ejecuta todo en la carpeta de trabajo del kit ($K carpeta muestra cuál es). Las rutas de esta guía
(video-projects/…, prontos/…, perfil.json) son relativas a ella: para leer o editar un archivo, júntalo con esa carpeta.
$K --em <subcarpeta> … ejecuta dentro de una subcarpeta. Nada de npx, Python o node suelto: todo pasa por $K.
Estándar visual premium (obligatorio, aplica a todos los estilos): nunca contorno en las letras, nunca rayos/espiral,
chispas, flash blanco o temblor; legibilidad por sombra suave o velo oscuro; movimiento lento y suave; sonido discreto.
Detalles en la sección "Estándar visual premium" del SKILL.md de la skill videos-opus. Esto prevalece sobre lo que una guía de estilo diga.
Paso 0 — ¿retomar o ajustar?
Antes de buscar video nuevo, mira el estado:
- Pedido de ajuste ("quita la parte…", "cambia la leyenda", "el último video") → lee
prontos/ULTIMO.json: él dice elslugy el proyecto del último video entregado. Ve directamente a Ajustes en ese proyecto. - Algún
video-projects/*/projeto.jsonconetapadiferente deentregue, modificado en las últimas 24 h → pregunta: "Tengo un video a medio hacer (<slug>, parado en ). ¿Lo continúo?" Si sí, retoma desde la etapa. - Render en curso (
video-projects/<slug>/renders/progresso.jsonconfase: renderizando) →$K node $M/renderizar.mjs <slug> --esperar.
Paso 1 — encontrar el video
| La alumna dijo | Ejecuta |
|---|---|
| pegó una ruta (con o sin comillas) | $K node $M/achar-video.mjs "<ruta>" |
| "mi último video", "el que acabo de enviar", o nada | $K node $M/achar-video.mjs --ultimo |
| "¿qué video crees?", o el anterior dio varios | $K node $M/achar-video.mjs |
Lee el JSON {ok, video, motivo, aviso, confirmar, candidatos[], checks{}}:
ok: trueyconfirmar: false→ sigue convideo(el script ya guardó una copia enmeus-videos/). Confirma en una línea: "EncontréIMG_2041.mp4, de hoy 14:02, 3 min — editando."ok: trueyconfirmar: true→ PREGUNTA antes de gastar tiempo: "¿Es este:IMG_2041.mp4, recibido ayer 14:02, 3 min?" (no está enmeus-videoso llegó hace más de 2 h — puede ser un video de WhatsApp en Downloads).aviso(video con más de 3 min) → díselo y pregunta qué parte usar; el Reel queda con máximo 90 s.motivo: "varios candidatos; elegir"→ muestra hasta 4candidatoscon nombre, fecha/hora y tamaño y pregunta cuál. Luego ejecuta de nuevo con la ruta elegida.motivo: "ningún video reciente encontrado"→ explica: "No encontré ningún video nuevo. Pasa el video del celular al computador (por ejemplo: envíatelo a ti misma por WhatsApp Web y descárgalo; cae en Downloads) y avísame, o pega aquí la ruta del archivo."- cualquier otro
motivo(sin sonido, acostado, corto, llegando, poco espacio) → repite el motivo en una frase y DETENTE. Video acostado: sugiere grabar de nuevo en vertical. Nunca gastes minutos de transcripción en un video que no sirve.
El script ya espera que el archivo deje de crecer (una descarga aún en curso). No intentes evitarlo.
Paso 2 — estilo
Entiende el pedido:
| Ella dice | Estilo | Skill |
|---|---|---|
| celular, crudo, "parece que edité en Instagram", natural, simple, sin estilo dicho y el video es ella hablando | celular | estilo-celular |
| editorial, revista, chic, elegante, "cara de editado", serifada | editorial | estilo-editorial |
| explicativo, noticia, explicar, "con imágenes encima", didáctico | explicativo | estilo-explicativo |
| collage, recortes, fotos recortadas, scrapbook | collage | estilo-colagem |
| anuncio, ad, tráfico, patrocinado, vender, oferta | anuncio | estilo-anuncio |
Si ella no lo dijo y no se puede inferir, pregunta UNA vez, mostrando el catálogo en 5 líneas (nombre + 1 frase). Si la skill del estilo aún no existe en esta instalación, díselo y ofrece el estilo celular.
Paso 3 — perfil
Lee perfil.json en la carpeta de trabajo del kit. Si no existe o falta nombre/usuario, sigue .claude/skills/perfil-criadora.md
y pregunta todo en un solo mensaje. Guárdalo antes de continuar.
Paso 4 — extras (solo cuando tienen sentido)
- Capturas (por defecto: SIN captura). Si el video habla de resultado, número, comentario, post o perfil, pregunta AHORA, antes de la transcripción, en una línea: "¿Quieres capturas en el video? Ponlas en la carpeta Mis capturas del Escritorio ahora; si no, sigo sin y puedes pedirlas después." No te quedes esperando: sin respuesta, sigue sin captura y ofrécelo como ajuste en la entrega. Esto prevalece sobre lo que la skill del estilo diga sobre pedir la pantalla exacta. Mira como máximo las 12 capturas más recientes, en una sola hoja de contacto.
- Anuncio: pregunta producto/oferta y el CTA, en una sola pregunta.
- Nunca inventes captura, número, logo o testimonio. Si falta, pide la pantalla exacta o déjalo fuera.
Paso 5 — delegar
Lee la SKILL.md del estilo elegido y sigue su flujo de principio a fin (proyecto → corte → conferencia →
capturas → composición → snapshots → renderizar.mjs). Slug del proyecto: 2–4 palabras del tema, en minúsculas, con guión
(dos-noches-engrané). Si el novo-projeto dice que el nombre ya existe, usa el nombre que él sugiera (-2).
Antes de cada etapa lenta, una línea: "Transcribiendo — puede tomar unos minutos." / "Renderizando el video final…". Estilo collage: avisa antes de que es el más lento (recorte de la persona + render: en PC sin placa de video puede superar los 40 min) y pregunta si continúa o prefiere el celular. Ejecuta el recorte en segundo plano.
Paso 6 — entregar
El renderizar.mjs del paso anterior ya revisa, renderiza, valida y copia a prontos/ y a la carpeta Vídeos editados
del Escritorio — no ejecutes prontos.mjs de nuevo. Si salió con código 3, ejecuta --esperar hasta que aparezca LISTO.
Respuesta final, en 3 a 5 líneas:
- Dónde está: "¡Listo! Está en Vídeos editados, en el Escritorio, como
dos-noches-engrané-2026-10-09.mp4(65 s)." - Lo que cortó: pausas, repeticiones, fragmentos descartados (en palabras de ella, no en segundos).
- Lo que usó: capturas y títulos.
- Lo que quedó en duda: nombres que el transcriptor pudo haber errado, fragmentos de los que no estuviste seguro.
- Cómo ajustar: "¿Quieres cambiar algo? Di, por ejemplo: 'quita la parte del precio' o 'leyenda más abajo'."
Nunca publiques, envíes o borres videos. El original queda donde estaba (y una copia en meus-videos/ del kit).
Ajustes (la alumna vuelve después de la entrega)
Modifica solo lo que ella pidió, en el proyecto de prontos/ULTIMO.json (o en el que ella nombre), y renderiza una vez con
$K node $M/renderizar.mjs <slug>. Mapa rápido:
| Pedido | Modifica | Rehace |
|---|---|---|
| quita/acorta un fragmento | assets/keeps.json | corte → transcripción → montaje → render |
| leyenda más arriba/abajo | reel.json (capTop) | montaje → render |
| cambia/quita captura o título | src/index.template.html | montaje → snapshots → render |
| palabra incorrecta en la leyenda | assets/caption-fixes.json ({"incorrecto": "correcto"}, sin importar mayúscula/puntuación) | montaje → render |
| otra palabra destacada | assets/enfase.json (editorial) / assets/emphasis.json (collage) | montaje → render |
| otro estilo | nuevo proyecto con otro slug | todo |
El renderizar.mjs entrega como -v2, -v3 sin sobrescribir. Después de cortar fragmento, los tiempos de los elementos cambian:
recálcalos con ancoras.mjs antes de montar.