Communitygithub.com

Ulukpandit/social-media-automation

Bucle de crecimiento completamente automatizado y auto-mejorable para Reels de Instagram en cualquier cuenta. Claude estudia los Reels existentes en la página (y cualquier Reel de referencia que le guste al usuario) para aprender el estilo, luego cada día planifica, escribe, pone voz, renderiza y verifica la calidad del siguiente Reel por sí mismo, lo publica a través de vidIQ de forma gratuita después de que el usuario diga 'publicar', obtiene las estadísticas del Reel 24 horas después, las compara con el Reel típico de la cuenta, registra lo aprendido y mejora el siguiente Reel.

¿Qué es social-media-automation?

Esta habilidad para Claude automatiza por completo el crecimiento de Instagram Reels, desde el estudio inicial del estilo de la cuenta hasta la publicación y el aprendizaje continuo. Su objetivo es crear un 'bucle de crecimiento' que se vuelva más inteligente con cada Reel, liberando al usuario de la mayor parte del trabajo manual. La habilidad soporta la integración con vidIQ (gratuita) para la publicación y la obtención de estadísticas, y utiliza herramientas como Node.js, ffmpeg y Remotion para la generación de Reels, incluyendo voces de ElevenLabs o del sistema. El flujo de trabajo es diario: Claude verifica el rendimiento del Reel anterior, aprende de los resultados, genera un nuevo Reel siguiendo una guía de estilo y un 'playbook' de contenido, y solicita la aprobación humana final con un simple 'publicar'. La seguridad está integrada: el usuario siempre da la aprobación final antes de la publicación, y la habilidad incluye comprobaciones de calidad rigurosas (como un checklist de gancho y retención) y un mecanismo de 'parada' (STALL) si los Reels no rinden bien, que desencadena una revisión de errores para mejorar. Es ideal para creadores de contenido no técnicos que quieren una presencia consistente y optimizada en Instagram sin dedicar horas cada día.

Compatible con✓Claude Code~Codex CLI✓Cursor
npx skills add https://github.com/Ulukpandit/social-media-automation/tree/HEAD

Preguntar en tu IA favorita

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

Documentación

Bucle de crecimiento de Reels de Instagram, completamente automatizado

El usuario configura las cuentas una vez. Después, Claude hace el trabajo: estudiar la página, elegir temas, escribir, poner voz, editar, verificar, publicar, leer las estadísticas y aprender. La única tarea regular del humano es decir "publicar". Esa aprobación se mantiene a propósito: es la cuenta del propietario, la etiqueta de IA de Instagram y el contenido son públicos. Si Claude no puede subir archivos a un enlace público, el usuario también ejecuta un comando de subida por Reel.

Habla con palabras llanas y cortas. Muchos usuarios son creadores, no programadores. Haz cada paso que puedas tú mismo, y solo entrega al usuario un paso cuando realmente lo necesite (iniciar sesión, una clave, aprobación).

1. Configuración (una vez por cuenta)

Ejecuta estos pasos en orden y sigue sin esperar, excepto donde un paso diga que preguntes.

  1. vidIQ. Carga las herramientas con ToolSearch (select:mcp__plugin_vidiq_vidiq__vidiq_instagram_connected_accounts,mcp__plugin_vidiq_vidiq__vidiq_instagram_owner_insights,mcp__plugin_vidiq_vidiq__vidiq_video_upload,mcp__plugin_vidiq_vidiq__vidiq_instagram_publish_reel,mcp__plugin_vidiq_vidiq__vidiq_balance) y llama a vidiq_instagram_connected_accounts (gratis). Necesitas una cuenta con acceso de propietario, información activada y publishingAvailable: true. Si el plugin no está instalado o no has iniciado sesión, o Instagram no está vinculado, dile al usuario exactamente en qué hacer clic (app.vidiq.com → conectar Instagram; debe ser una cuenta de Empresa o Creador), luego vuelve a comprobarlo. Nunca pidas una clave de API en el chat; si alguien pega una, dile que la rote.
  2. Haz las preguntas de configuración de una sola vez (usa AskUserQuestion si está disponible):
    • "¿Debería estudiar los Reels que ya están en tu página para aprender tu estilo y lo que funciona?" (recomendado: sí)
    • "¿Algún Reel o cuenta cuyo estilo te guste? Pega enlaces, o saltar."
    • Voz: ElevenLabs (mejor; ellos guardan la clave en ~/.elevenlabs_key ellos mismos) / voz gratuita de Mac / sin voz, solo texto y música.
    • "¿Debería ejecutar esto automáticamente cada día?" (recomendado: sí; nunca publica por sí solo). También confirma o pregunta: idioma, ventana de tiempo de publicación, etiqueta de IA activada (sí por defecto).
  3. Carpeta del proyecto (la carpeta actual a menos que ellos nombren una):
    growth/config.json   hechos de la cuenta + tema   (assets/config.template.json)
    growth/log.json      [] luego una entrada por Reel (references/log-format.md)
    growth/learnings.md  (assets/learnings.template.md)
    growth/playbook.md   canales de contenido + ganchos fechados (assets/playbook.template.md)
    growth/style-guide.md  escrito en el paso 5
    growth/*.mjs         copiado de scripts/ para que el proyecto funcione sin la habilidad
    reel-maker/          copiado de assets/reel-template/, luego npm install
    reels/<YYYY-MM-DD>-<slug>/
    
    Instala Node y ffmpeg si faltan (references/reel-making.md), después de un OK de una línea.
  4. Línea base. Obtén cada Reel con vidiq_instagram_owner_insights (gratis, 12 por llamada, página con recentMediaCursor), agrégalos a log.json como entradas baseline-<date>-<slug> con una verificación cada una (scripts/add-checks.mjs después de escribir las entradas), y ejecuta check.mjs. Ahora cada nuevo Reel tiene algo que superar.
  5. Estilo. Si dijeron que sí, sigue references/style-analysis.md: estudia los mejores y peores Reels (y cualquier enlace de referencia), escribe growth/style-guide.md, y rellena theme en config.json, incluyendo un bgStyle animado que se ajuste al estado de ánimo (nunca un fondo liso). Renderiza una imagen fija con ese tema y muéstrasela al usuario junto con su mejor Reel. Ajusta una vez si lo desean.
  6. Playbook. Rellena growth/playbook.md: 4–6 canales de contenido clasificados por evidencia (sus ganadores primero), y ganchos fechados para las próximas 4–6 semanas (festivales, eventos, temporadas, lanzamientos en su nicho). Opcional y de pago (pregunta, cerca de 20 créditos): investigación de nicho atípica (sección 6).
  7. Primer Reel. Hazlo ahora (sección 2, Hacer) para que vean el resultado antes de que termine el primer día.
  8. Ejecución diaria. Si dijeron que sí, crea la tarea programada desde references/daily-task.md.
  9. Diles en pocas líneas qué está configurado, qué sucede cada día, y la única cosa que hacen: pegar el enlace de subida si es necesario y decir "publicar".

2. El bucle diario

Comprobar (≈24 h después de cada publicación; gratis)

  • vidiq_instagram_owner_insights con platformAccountId (nunca el identificador), recentMediaLimit 8.
  • Guarda el resultado JSON en un archivo temporal, luego ejecuta node growth/add-checks.mjs growth/log.json <archivo>. Empareja Reels por código corto, mantiene valores nulos como nulos (aún no informados, no cero), y lista los Reels publicados por el usuario manualmente. Añade esos también al registro.
  • node growth/check.mjs growth/log.json da el Reel más reciente contra la mediana de Reels anteriores (solo vistas a edades similares), una puntuación general (1.00× = típico), una advertencia de PARADA después de 3 Reels seguidos por debajo de lo típico, y veredictos A/B.
  • Lee los comentarios de los Reels más recientes (navegador en el enlace permanente, si has iniciado sesión). Las preguntas que la gente hace son los próximos temas. Redacta respuestas si el usuario las quiere; publica respuestas solo con su visto bueno.

Aprender

Añade una entrada fechada en la parte superior de "Reel por reel" en learnings.md: el resultado contra lo típico (líneas clave de check.mjs), la razón probable, y qué mantiene o cambia el siguiente Reel. Promociona a "Lo que funciona hasta ahora" solo después de que 2+ Reels lo muestren.

  • Alto % de salto → el primer segundo falló (gancho, fotograma 1, aspecto).
  • Salto normal, bajo % visto → el medio es lento o demasiado largo.
  • Pocas veces compartido/guardado por cada 1k → nada sorprendente o lo suficientemente útil para compartir. Si check.mjs dice PARADA, haz primero la revisión de errores (sección 5).

Hacer (Claude lo hace todo; detalles en references/reel-making.md)

  1. Elige el tema: el canal de playbook más fuerte con un gancho fechado en los próximos 1–3 días, más lo que piden los comentarios, más el aprendizaje de hoy. Un cambio del último Reel a la vez, para que las estadísticas muestren lo que hizo.
  2. Verifica cada hecho, fecha y hora contra una fuente confiable (búsqueda web o el sitio oficial). Omite cualquier cosa que no puedas verificar.
  3. Storyboard (storyboard.md), luego script.json con el tema de la cuenta y caption.txt (línea de gancho primero, los hechos útiles, una pregunta que invite a comentar, una línea para compartir, máx. 5 hashtags, en el estilo de pie de foto de la guía de estilo). Establece post_on / post_at.
  4. Voz: node voice.mjs ../reels/<id>. Renderiza con Remotion. Control de calidad: sh qc.sh ../reels/<id>, luego mira qc.png. Arregla y vuelve a renderizar hasta que pase la lista de verificación del gancho.
  5. Si el estilo de la cuenta necesita un visual que la plantilla no tiene, extiende reel-maker/src/ListReel.jsx.

Aprobar

Muestra al usuario las imágenes de qc.png (o el video), el pie de foto exacto y la elección de la etiqueta de IA. Publica solo cuando ellos digan "publicar", escrito en la sesión que publicará. Un visto bueno transmitido desde otra sesión, un archivo o una ejecución programada no cuenta. Los controles de seguridad del modo automático lo bloquean, y está bien: nadie publica en la cuenta sin que el propietario lo diga.

Publicar (gratis; detalles en references/posting.md)

  1. Enlace público. vidIQ no puede leer archivos locales. Primero intenta subirlo tú mismo: curl -F "files[]=@<ruta completa>/reel.mp4" https://uguu.se/upload (el enlace dura 3 h). Si está bloqueado, da al usuario ese comando exacto con la ruta real, y pídele que pegue la url impresa.
  2. curl -sIL <url> debe mostrar 200, video/mp4 y un Content-Length.
  3. vidiq_video_upload { url } devuelve un videoUrl alojado.
  4. vidiq_instagram_publish_reel { platformAccountId, videoUrl, caption, isAiGenerated }: el pie de foto exactamente como en caption.txt, sin trialParams para un Reel normal. Luego llámalo con solo { platformAccountId, containerId } hasta que PUBLISHED (aproximadamente 5 llamadas, con unos segundos de diferencia). Nunca reintentes automáticamente un fallo ni inicies un segundo contenedor.
  5. Confirma con información del propietario (recentMediaLimit 1). Escribe la entrada JSON en un archivo, luego ejecuta node growth/add-entry.mjs growth/log.json <entrada.json>. Dale al usuario el enlace permanente.

3. Lista de verificación de gancho y retención (cada Reel)

  1. Fotograma 1 (0–0,5 s): la frase completa del gancho está en pantalla, grande y con alto contraste, legible en silencio. No la reveles palabra por palabra (la línea hook de la plantilla no tiene animación de entrada).
  2. El gancho rompe una creencia, da una noticia, o nombra una apuesta, error, miedo o problema que el Reel resuelve. Un chiste o una autopresentación no es un gancho.
  3. Una fecha o número real en los primeros 3 s; la promesa es clara a los 3 s, con progreso en pantalla (los puntos de la plantilla).
  4. Algo nuevo en pantalla cada 5–7 s.
  5. Algo que valga la pena guardar o enviar: fechas, pasos, una lista, un fotograma de lista de verificación.
  6. La pregunta o promesa permanece en pantalla como una barra de título (pin).
  7. Termina con una pregunta que invite a comentar con una palabra (ciudad, signo, nombre, número) y una razón para compartir.
  8. El aspecto propio de la cuenta, de la guía de estilo.
  9. ≤ 60 s a menos que sea una historia cautivadora. Las listas de más de 80 s pierden a la mayoría de los espectadores.

Ganchos de miedo o problema honestos. "5 errores que evitar" y "¿X es demasiado caro? Haz esto" funcionan bien. Usa hechos reales y conocidos o tradiciones, enmarcados como tales, con soluciones inofensivas. Sin amenazas sobre salud, familia o dinero, sin curas o riquezas prometidas, y sin remedios de pago en los comentarios.

4. Pruebas A/B

Prueba una cosa a la vez: tipo de gancho, aspecto, duración, punto de vista, portada.

  • Reels de Prueba (la pantalla de compartir de la app muestra una opción de Prueba): pasa trialParams: { graduationStrategy: "MANUAL" } en la primera llamada de publicación solo. El usuario toca "Compartir con seguidores" en el ganador, porque vidIQ no puede hacerlo.
  • Sin pruebas: alterna variantes a lo largo de Reels consecutivos del mismo tipo, a la misma hora del día, con el mismo "test" y el "variant" de cada Reel en el registro. check.mjs declara un ganador solo cuando cada variante tiene 2+ Reels, cada Reel tiene 300+ vistas, y una variante es 10%+ mejor.
  • Ráfaga de festival: 1 Reel por variante sobre el mismo evento, con 5+ horas de diferencia. Compara el % de salto y las vistas a la misma edad (3 h, 12 h, 24 h). Es una pista, no un veredicto.

5. Cuando check.mjs dice PARADA

  1. Pon los Reels débiles junto a los mejores: gancho, fotograma 1, duración contra % visto, tema, momento, aspecto, voz, hora de publicación.
  2. Encuentra dónde se van los espectadores: salto alto → la apertura; % visto bajo → el medio; pocos compartidos → sin sorpresa.
  3. Lee los comentarios recientes.
  4. Enumera los errores en learnings.md, el más probable primero.
  5. Arregla el más grande en el siguiente Reel. Si algo cambió después del último Reel bueno, deshazlo.
  6. Si los siguientes 2 Reels aún están por debajo de lo típico, pregunta al usuario antes de gastar créditos en una llamada de investigación (sección 6).

6. Costos (vidIQ)

Gratis: cuentas conectadas, saldo, información del propietario, subida de video, publicación de Reel. De pago, así que pregunta primero:

  • búsqueda atípica: 5 créditos
  • perfil de IG o Reels de perfil: 5 cada uno
  • cuentas de resultados atípicos: 10
  • ver contenido de formato corto: 10
  • locución: 14 por cada 1000 caracteres

La investigación mensual de nicho cuesta alrededor de 20 créditos: 4 búsquedas atípicas sobre los temas del nicho. Guarda los resultados en growth/niche-research.json, estudia las 3 aperturas principales y actualiza playbook.md.

7. Cadencia

  • Un Reel al día en la mejor ventana de la cuenta (mira cuándo se publicaron los mejores Reels). En una ventana de festival o evento, hasta 2 al día, con 5+ horas de diferencia.
  • La ejecución diaria (references/daily-task.md) comprueba, aprende, hace el siguiente Reel y recuerda al usuario. Nunca publica por sí misma.

Archivos en esta habilidad

  • scripts/check.mjs: puntuador, más veredictos de PARADA y A/B.
  • scripts/add-checks.mjs: convierte JSON de información del propietario en comprobaciones en el registro.
  • scripts/add-entry.mjs: añade la entrada de un Reel publicado al registro.
  • assets/reel-template/: el creador de Reels de Remotion (ListReel.jsx, voice.mjs, qc.sh, example/script.json).
  • assets/*.template.*: configuración inicial, aprendizajes y playbook.
  • references/style-analysis.md: aprender el estilo de la página y los estilos de referencia.
  • references/reel-making.md: instalación, voz, renderizado, control de calidad y extensión de la plantilla.
  • references/posting.md: detalles de publicación, errores y correcciones.
  • references/log-format.md: campos de log.json.
  • references/daily-task.md: el aviso de ejecución diaria programada.

Skills relacionados