Install
$ agentstack add skill-victorperez22-marketing-claude-code-marketing-informe-pdf ✓ scanned · ✓ verified — works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
About
Generador de Informe de Marketing en PDF
Proposito de la skill
Generar un informe de marketing profesional y visualmente cuidado en PDF usando el script Python scripts/generar_informe_pdf.py. La skill recoge toda la data disponible de auditorias, la estructura en el JSON esperado, invoca el script y produce un PDF con marca, medidores de score, barras, tablas comparativas, hallazgos y plan de accion priorizado.
Cuando usarla
- El usuario quiere version PDF del informe (no solo Markdown)
- El usuario prepara un entregable para presentacion a cliente
- El usuario pide un informe "pulido", "listo para cliente" o en PDF
- Se activa con
/marketing informe-pdfo/marketing informe-pdf
Cuando usar PDF vs Markdown
| Formato | Mejor para | Pros | Contras | | ------------ | ------------------------------------------------------------ | ------------------------------------------------------------- | -------------------------------------- | | PDF | Presentaciones a cliente, adjunto en email, sales collateral | Aspecto profesional, formato consistente, graficos, printable | Mas dificil de editar, requiere script | | Markdown | Uso interno, referencia rapida, edicion iterativa, git | Facil de editar, legible en cualquier editor, git-friendly | Menos pulido visual, sin graficos |
Regla: si el informe va a cliente o prospecto, usa PDF. Para interno o edicion posterior, Markdown.
Como ejecutarla
Paso 1: Recoger toda la data disponible
Revisa archivos de skills previas en el directorio del proyecto:
Fuentes primarias:
AUDITORIA-MARKETING.md— auditoria globalLANDING-CRO.md— analisis CROAUDITORIA-SEO.md— hallazgos SEOVOZ-MARCA.md— analisis de voz de marcaINFORME-COMPETIDORES.md— comparativa competitivaANALISIS-FUNNEL.md— analisis de funnelCALENDARIO-REDES.md— auditoria de redesSECUENCIAS-EMAIL.md— auditoria de emailCAMPANAS-ADS.md— auditoria de ads
Si no hay data previa:
- Recomienda ejecutar antes
/marketing auditoria - Si el usuario insiste, analiza la URL directamente y construye la data desde cero
- Usa
scripts/analizar_pagina.pypara recoger datos automaticos:python3 scripts/analizar_pagina.py
Paso 2: Construir la estructura JSON
El script scripts/generar_informe_pdf.py espera un JSON con esta estructura exacta:
{
"url": "https://ejemplo.com",
"date": "1 de marzo de 2026",
"brand_name": "Ejemplo S.L.",
"overall_score": 62,
"executive_summary": "Resumen de 2-4 frases sobre salud de marketing, oportunidades clave e impacto estimado de implementar las recomendaciones.",
"categories": {
"Contenido y Mensaje": {
"score": 68,
"weight": "25%"
},
"Optimizacion de Conversion": {
"score": 52,
"weight": "25%"
},
"SEO y Descubrimiento": {
"score": 74,
"weight": "15%"
},
"Posicionamiento Competitivo": {
"score": 48,
"weight": "15%"
},
"Marca y Confianza": {
"score": 70,
"weight": "10%"
},
"Crecimiento y Estrategia": {
"score": 55,
"weight": "10%"
}
},
"findings": [
{
"severity": "Critico",
"finding": "Descripcion del hallazgo mas importante"
},
{
"severity": "Alto",
"finding": "Descripcion de hallazgo de alta prioridad"
},
{
"severity": "Medio",
"finding": "Descripcion de hallazgo de prioridad media"
},
{
"severity": "Bajo",
"finding": "Descripcion de hallazgo menor"
}
],
"quick_wins": ["Primer quick win", "Segundo quick win", "Tercer quick win"],
"medium_term": [
"Primera accion medio plazo",
"Segunda accion medio plazo",
"Tercera accion medio plazo"
],
"strategic": [
"Primera accion estrategica",
"Segunda accion estrategica",
"Tercera accion estrategica"
],
"competitors": [
{
"name": "Competidor A",
"positioning": "Posicion en el mercado",
"pricing": "Modelo de pricing",
"social_proof": "Senales de confianza",
"content": "Enfoque de contenido"
},
{
"name": "Competidor B",
"positioning": "Posicion en el mercado",
"pricing": "Modelo de pricing",
"social_proof": "Senales de confianza",
"content": "Enfoque de contenido"
}
]
}
Paso 3: Guia campo a campo
url (string, obligatorio)
URL completa con protocolo.
date (string, obligatorio)
Fecha de generacion. Formato: "DD de Mes de AAAA" (ej. "1 de marzo de 2026").
brand_name (string, obligatorio)
Nombre de la empresa/marca. Aparece en headers de la tabla competitiva.
overall_score (entero, 0-100, obligatorio)
Media ponderada de las 6 categorias. Calculo:
overall_score = (contenido * 0,25) + (conversion * 0,25) + (seo * 0,15) + (competitivo * 0,15) + (marca * 0,10) + (crecimiento * 0,10)
Justificacion de pesos: priorizamos conversion sobre SEO porque la mayoria de webs B2B en Espana viven de trafico de pago + outbound, no de SEO organico.
executive_summary (string, obligatorio)
2-4 frases cubriendo:
- Estado actual del marketing
- Top 1-2 hallazgos de mayor impacto
- Impacto estimado en ingresos de implementar
- Primer paso recomendado
Breve y potente. Aparece en portada debajo del gauge.
categories (object, obligatorio)
Exactamente 6 categorias:
| Categoria | Que mide | Guia de scoring | | --------------------------- | ---------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | | Contenido y Mensaje | Calidad de copy, value prop, claridad de headline, texto de CTAs, consistencia de voz de marca | 80+: claro, orientado a beneficio, especifico. 60-79: correcto pero generico. /tmp/datos_informe.json /dev/null || pip3 install reportlab
**Generar el informe:**
```bash
python3 scripts/generar_informe_pdf.py /tmp/datos_informe.json "INFORME-MARKETING-.pdf"
Sustituye `` por el dominio del cliente (sin protocolo ni www), usando guiones en vez de puntos. Ejemplos:
ejemplo.com->INFORME-MARKETING-ejemplo-com.pdfmiapp.io->INFORME-MARKETING-miapp-io.pdf
Modo demo (sin argumentos): Ejecutar el script sin argumentos genera un informe de ejemplo con placeholders:
python3 scripts/generar_informe_pdf.py
# Genera: INFORME-MARKETING-ejemplo.pdf
Paso 6: Verificar el output
Comprueba que el PDF se genero:
ls -la "INFORME-MARKETING-.pdf"
Reporta la ruta y el tamano al usuario.
Paso 7: Limpieza
Borra el JSON temporal:
rm /tmp/datos_informe.json
Contenido del PDF
El PDF generado incluye:
Pagina 1: Portada
- Titulo: "Informe de Auditoria de Marketing"
- URL objetivo
- Fecha de generacion
- Gauge con score global (visualizacion circular con color)
- Letra de calificacion (A+ hasta F)
- Parrafo de resumen ejecutivo
Pagina 2: Desglose de scores
- Barra horizontal con las 6 categorias y color
- Tabla con nombre, score, peso y estado
- Colores: verde (80+), azul (60-79), amarillo (40-59), rojo (` — data de auditoria completa
/marketing competidores— data comparativa/marketing seo— hallazgos SEO detallados/marketing landing— analisis CRO/marketing informe-pdf— compila todo en PDF
La skill del PDF busca automaticamente los outputs de estas skills e incorpora la data al JSON.
Output
- Archivo:
INFORME-MARKETING-.pdf - Ubicacion: raiz del proyecto
- Tamano tipico: 200-500 KB segun contenido
- Paginas: 5-7 segun datos de competidores y extras
Principios clave
- El PDF es el entregable mas orientado a cliente del toolkit. La calidad importa.
- Verifica que el JSON esta completo y correcto antes de generar. Basura dentro, basura fuera.
- Usa el PDF para primeras impresiones y conversaciones de venta. El Markdown va despues para detalles.
- Todo score debe ser justificable. Si el cliente pregunta "por que saco 52 en Conversion", los hallazgos tienen que explicarlo.
- Redondea a enteros. Los decimales fingen precision.
- Resumen ejecutivo ajustado: 2-4 frases maximo. Los decisores solo escanean.
- Si es para prospecto, el informe es herramienta de venta. Oportunidades compelling, plan alcanzable.
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: victorperez22
- Source: victorperez22/marketing-claude-code
- License: MIT
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet — be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.