CommunityImagengithub.com

adam-j-ali/research-poster

Convierte un resumen en PDF en un póster científico de conferencia pulido y completamente editable (.pptx + PDF + vista previa) con un estilo institucional uniforme, gráficos veraces, citas verificadas, tipografía grande y legible, y un ciclo de renderizado y control de calidad.

¿Qué es research-poster?

Esta habilidad está diseñada para investigadores y desarrolladores que necesitan crear rápidamente pósteres científicos de alta calidad para conferencias como RSNA, AHA, ASH, ASCO y otras. Acepta un resumen en PDF (o documento) y lo convierte en un póster editable en PowerPoint (.pptx), un PDF para envío y una imagen de vista previa. El proceso se basa en seis archivos de referencia que guían cada fase: integridad de datos, normativas de la conferencia, reglas de diseño (legibilidad, jerarquía visual), construcción de gráficos nativos, renderizado y verificación de citas. El asistente primero extrae y reproduce todos los datos del resumen, verifica cada cita contra PubMed o DOI, luego diseña el póster con la paleta de colores de la institución (extrayéndola de un póster de referencia si se proporciona). Los gráficos son nativos de PowerPoint y editables por defecto, evitando la molesta ventana de reparación de PowerPoint. El sistema incluye un bucle de autoevaluación: renderiza el póster, verifica superposiciones, tamaño de fuente mínimo (22 pt), legibilidad y que los códigos QR se decodifiquen correctamente, iterando hasta que todo esté perfecto. Soporta los asistentes de IA Claude Code, Cursor y Codex, y puede ejecutarse de forma interactiva o totalmente autónoma, preguntando solo cuando necesita confirmación del usuario (dimensiones, autores, logos). Incluye scripts Python listos para usar y ejemplos prácticos. La salida final es un archivo .pptx editable, un PDF y un PNG de vista previa, todo con citas reales y datos verificados, sin fabricaciones.

Compatible con✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/adam-j-ali/research-poster-skill/tree/HEAD/skills/research-poster

Installed? Explore more Imagen skills: steipete/songsee, affaan-m/frontend-design, mattpocock/improve-codebase-architecture · View all 6 →

Preguntar en tu IA favorita

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

Documentación

Investigación y Póster Científico

Convierte un resumen en PDF en un póster científico de conferencia profesional, completamente editable y con estilo institucional.

Referencias obligatorias

Esta habilidad incluye 6 archivos de referencia más dos ejemplos prácticos en references/examples/. Lea la referencia correspondiente ANTES del paso que la necesita, nunca después para verificar su trabajo.

  • references/data-integrity.md: reproducir el resumen a partir de los datos fuente (Fase 1)
  • references/venues.md: encontrar y fechar las reglas de la conferencia; kits de marca institucional (Fases 0 y 2)
  • references/design-rules.md: legibilidad mínima, escala tipográfica, diseño, estilo institucional (Fase 3)
  • references/build-and-charts.md: gráficos nativos, el desencadenante de reparación, errores comunes de python-pptx (Fase 4)
  • references/rendering-qa.md: renderizado, verificación de legibilidad y superposiciones, códigos QR (Fase 5)
  • references/citations.md: verificar, formatear, hipervincular (Fase 2)

Objetivo

Producir un póster científico listo para envío, con la marca institucional, a partir de un resumen en PDF. El entregable es un PowerPoint editable (.pptx) más un PDF y un PNG de vista previa. Todo es nativo y editable por defecto: texto, bandas de sección, mosaicos de estadísticas y gráficos. Los datos, números y citas son siempre reales y verificados; el diseño es legible a distancia, aireado y adaptado al estilo institucional del autor (extraído de un póster de referencia cuando se proporciona).

Esta habilidad codifica un flujo de trabajo perfeccionado en la práctica. Lea la referencia correspondiente ANTES del paso que la necesita, no después para verificar su trabajo (para entonces el error ya está en la salida); no reinvente las partes que ya están resueltas (seguridad de gráficos, renderizado, escala tipográfica). Los scripts residen en ${CLAUDE_SKILL_DIR}/scripts/; los ejemplos prácticos y la guía detallada están en ${CLAUDE_SKILL_DIR}/references/. El renderizado utiliza LibreOffice (multiplataforma) o Microsoft PowerPoint en macOS; consulte references/rendering-qa.md.

Requisitos

  • Python 3 con: python-pptx (>= 1.0), matplotlib, pdfplumber, pypdfium2, pillow, pypdf, pymupdf.
  • Un renderizador: LibreOffice (soffice/libreoffice en PATH, cualquier sistema operativo) O macOS con Microsoft PowerPoint. La verificación de reparación de gráficos (scripts/check_charts.py) solo necesita Python, en cualquier sistema operativo.
  • Instalación: pip install python-pptx matplotlib pdfplumber pypdfium2 pillow pypdf pymupdf (agregue qrcode para códigos QR, o use scripts/qr.swift en macOS). Si pip rechaza con "externally-managed-environment", use un entorno virtual: python3 -m venv ~/.venvs/poster && ~/.venvs/poster/bin/pip install <misma lista>, ejecute la compilación con ese Python y pase PYTHON=~/.venvs/poster/bin/python a render.sh.

Habilidades complementarias

Todo lo que necesita esta habilidad está incluido; la compilación, el renderizado y la verificación se ejecutan solo con los scripts aquí. Estas habilidades opcionales añaden refinamiento. Use las que estén instaladas. Si falta alguna, continúe sin ella y mencione la instalación de una línea al usuario una vez; nunca se detenga por ello.

HabilidadAñadeInstalación (en Claude Code)
Anthropic pptx + pdf (document-skills)Editar un póster existente, PDFs difíciles/plugin marketplace add anthropics/skills, luego /plugin install document-skills@anthropic-agent-skills
frontend-designPaleta, combinación tipográfica, dirección del diseño/plugin install frontend-design@claude-plugins-official
K-Dense citation-management (MIT)Búsqueda PubMed / DOI, referencias formateadasCopiar skills/citation-management de github.com/K-Dense-AI/scientific-agent-skills en ~/.claude/skills/
K-Dense scientific-visualization (MIT)Figuras matplotlib con estilo de revista (ruta de gráfico de imagen)Mismo repositorio, skills/scientific-visualization

Deje fuera K-Dense pptx-posters (una ruta de póster HTML/CSS que compite por las mismas solicitudes) y scientific-writing (prosa de manuscrito que prohíbe las viñetas que necesita un póster). Las verificaciones de citas no necesitan habilidad adicional: la búsqueda web y la consulta a PubMed / Crossref / doi.org hacen el trabajo.

Contexto de ejecución

Ejecutar de forma interactiva O totalmente autónoma. Cada compuerta a continuación es un AskUserQuestion con un valor predeterminado recomendado claramente marcado, para que una ejecución autónoma simplemente tome los valores predeterminados y los declare.

  • 🟢 Automático (sin preguntar): leer entradas, investigar, extraer estilo institucional, compilar, renderizar, autoevaluar e iterar, git-init + commit en el directorio de trabajo del póster, limpiar archivos intermedios.
  • 🟡 Preguntar (con un valor predeterminado recomendado): dimensiones del póster / especificación de la conferencia, confirmación de autor + afiliación + logotipo, nivel de tono, profundidad de citas, motor de gráficos (nativos editables vs imágenes) y si los datos son definitivos.
  • 🔴 Nunca: inventar ningún número, resultado o cita; alterar los hallazgos informados del estudio; sobrescribir un archivo que el usuario ya ha finalizado (siempre escribir una copia separada); enviar un archivo que active el mensaje de reparación de PowerPoint; copiar datos a nivel de paciente del archivo del autor o enviarlos a cualquier servicio web (leerlos en su lugar, guardar solo agregados).

Principios

  • Reiterar el plan y confirmar antes de compilar cuando se trabaja con un usuario; emparejar preguntas con una recomendación para que el flujo de trabajo también pueda ejecutarse de forma autónoma.
  • Explorar y verificar, no asumir. Investigar con búsqueda web y un lector web; consultar la documentación actual de la librería para cualquier API antes de usarla. Verificar cada cita contra PubMed o un DOI.
  • Mantenerlo ligero y SECO. Reutilizar los scripts y ejemplos incluidos; adaptar, no reconstruir. Impulsar cada gráfico y llamada desde un bloque de datos editable para que los números se actualicen en un solo lugar.
  • Diseñar deliberadamente: jerarquía visual fuerte, relleno generoso, alto contraste, tipografía legible a distancia. Evitar neón, degradados intensos, brillo e imágenes generadas por IA. Coincidir con las convenciones de la conferencia del autor.
  • TDD-ligero: afirmar que cada porcentaje del gráfico se recalcula con el número fuente antes de compilar.
  • Autoevaluación con un alto estándar antes de mostrar al usuario: renderizar, mirar, corregir, repetir.
  • Nunca inventar datos o citas, y nunca alterar los hallazgos informados.

Proceso

Fase 0: Recepción y confirmación

  1. Recopilar entradas: el PDF del resumen (obligatorio); un póster de referencia opcional (.pptx) para el estilo institucional; archivos de logotipo opcionales; cualquier dato actualizado.
  2. Reiterar lo que entendió, luego agrupar las compuertas (una o dos llamadas AskUserQuestion, cada opción marcada con el valor predeterminado recomendado). Valores predeterminados recomendados entre corchetes:
    • Dimensiones / conferencia: verificar primero la especificación de ePoster de la conferencia [predeterminado]; de lo contrario, diapositiva única 16:9 (48x27 pulgadas) que coincide con la mayoría de los visores de ePoster en pantalla.
    • Autores, afiliaciones y logotipos: confirmar contra el autor, no el bloque de envío del resumen (a menudo no es definitivo). Múltiples instituciones significan múltiples logotipos [preguntar cuáles].
    • Tono: pulido académico moderado [predeterminado]; los datos y los hallazgos nunca cambian.
    • Citas: 4-6 referencias verificadas con DOI/URLs en los que se puede hacer clic [predeterminado].
    • Motor de gráficos: gráficos nativos editables [predeterminado]; imágenes pulidas a pedido.
    • ¿Los datos son definitivos o vendrán más? Si está en curso, compilar para que los números sean triviales de actualizar (bloque de datos único) y mantener el marco preliminar.
    • ¿Un póster de una sola diapositiva o una presentación? "PowerPoint para una conferencia" puede significar cualquiera de los dos [póster].
    • Cuando el archivo de datos del autor se proporciona y discrepa del resumen: qué números van en el póster [obtener el archivo de análisis del autor; de lo contrario, recalcular y reproducir, consulte data-integrity.md].
    • Enlaces para cualquier código QR (videos, artículo completo). Los enlaces faltantes se convierten en marcadores de posición marcados [predeterminado].
    • La fecha límite de carga: preguntar por el correo electrónico de aceptación; una fecha límite puede estar cerca.
  3. Modo autónomo: tomar los valores predeterminados, declararlos, proceder.

Fase 1: Leer cada entrada completamente

  1. Opcionalmente, usar habilidades complementarias si el entorno las tiene (document/pptx y pdf, dataviz, frontend design, citation management, scientific visualization). Son mejoras; el flujo de trabajo a continuación es autónomo a través de python-pptx, matplotlib y un renderizador.
  2. Leer el resumen completamente: texto a través de pdfplumber (python-docx para un .docx), una representación visual y una verificación de OCR/imagen para que no se pierda ninguna figura. Capturar el título, autores, afiliaciones, cada número y el n/N para cada uno.
  3. Si el autor proporcionó los datos subyacentes, leer su estructura antes de cualquier valor, luego reproducir cada figura del resumen a partir de ellos en un analysis.py que los afirme y escriba agregados en data.json. Verificar SD vs SE, medias pareadas vs grupales, el n de cada figura, etiquetas de categoría contra las notas originales y la primera fila de datos. Consulte references/data-integrity.md.
  4. Si se proporciona un póster de referencia, extraer su estilo institucional: tamaño de diapositiva, paleta (rellenos de banda y acento), fuentes y tamaños, estructura de la barra de sección y el logotipo. Renderizarlo con bash ${CLAUDE_SKILL_DIR}/scripts/render.sh para verlo. Consulte references/design-rules.md.
  5. Confirmar las dependencias de Python: pip install python-pptx matplotlib pdfplumber pypdfium2 pillow pypdf pymupdf.

Fase 2: Investigación

  1. Verificar la especificación de ePoster de la conferencia en las propias páginas de la sociedad para este año (relación de aspecto, fuentes, medios, proveedor de carga, fecha límite, texto de divulgación requerido) y fecharla. Confirmar a qué organización se refiere cada fuente. Consulte references/venues.md, que también cubre tomar la paleta, el tipo de letra y el logotipo del kit de marca publicado de la institución.
  2. Verificar y obtener citas: reales, verificadas con PubMed/DOI, con hipervínculos y fechas de acceso; incluir fuentes de registro y literatura gris que el autor realmente utiliza, no solo revistas. Consulte references/citations.md. Nunca inventar una cita.
  3. Obtener cualquier contexto necesario para la introducción. Consultar la documentación actual de la librería al compilar.

Fase 3: Diseño

  1. Establecer tokens de estilo institucional, una cuadrícula de columnas, jerarquía visual clara, tipografía a escala de póster, relleno aireado y alto contraste. Consulte references/design-rules.md.
  2. Elegir tipos de gráficos honestamente: dona/tarta solo para partes de un todo; un gráfico de barras para proporciones independientes o no mutuamente excluyentes; mosaicos de números grandes para figuras únicas. Etiquetar cada gráfico con su n/N. Consulte references/build-and-charts.md.
  3. Definir un bloque de datos editable que impulse cada gráfico y llamada.

Fase 4: Compilación (python-pptx, TDD-ligero)

  1. Adaptar references/examples/build_poster_example.py (gráficos nativos editables) o references/examples/make_charts_example.py (imágenes matplotlib) al contenido y estilo institucional.
  2. Compilar gráficos nativos editables SOLO con estilo seguro para PowerPoint. La única regla estricta: nunca establecer una POSICIÓN de etiqueta de datos de dona/tarta, esa es la configuración que hace que PowerPoint repare y elimine el gráfico. Los rellenos por segmento, leyendas, etiquetas de porcentaje, formatos de número y fuentes de eje son seguros. Colocar el porcentaje de la dona en la leyenda más un número grande en el agujero. Receta completa en references/build-and-charts.md.
  3. TDD-ligero: afirmar que cada porcentaje mostrado se recalcula con el número fuente antes de guardar.
  4. Obtener autores, afiliaciones y logotipos correctos según la Fase 0.
  5. Compuerta de legibilidad: establecer cada tamaño a partir de una tabla de escala tipográfica con un mínimo (22 pt en una diapositiva de 48 pulgadas), establecer chart.font.size en cada gráfico y finalizar la compilación fallando si algún tamaño en el archivo guardado está por debajo del mínimo (scripts/check_fonts.py). Consulte references/design-rules.md.
  6. Compuerta de preparación: mantener los elementos no confirmados (lista de autores, afiliación, divulgaciones, enlaces) en una lista de verificación CONFIRMADO en la compilación. Hasta que todos sean Verdaderos, nombrar la salida ..._DRAFT.pptx, marcar cada brecha visiblemente en el póster e imprimir lo que aún está abierto.

Fase 5: Bucle de renderizado y autoevaluación

  1. Renderizar con bash ${CLAUDE_SKILL_DIR}/scripts/render.sh <pptx> <out.pdf> <out.png> 1.7 (LibreOffice, o PowerPoint en macOS), luego ver el PNG.
  2. Para gráficos nativos, ejecutar python3 ${CLAUDE_SKILL_DIR}/scripts/check_charts.py <pptx>: falla si alguna dona/tarta lleva una posición de etiqueta de datos, la configuración que hace que PowerPoint elimine el gráfico al abrirlo.
  3. Ejecutar scripts/check_fonts.py <pptx> y scripts/check_overlap.py <rendered.pdf>, luego reducir la resolución del renderizado a 1920x1080 y ver las regiones más densas como recortes 1:1. Decodificar cada código QR del renderizado. Consulte references/rendering-qa.md.
  4. Corregir contra la lista de verificación de references/rendering-qa.md: sin desbordamiento ni recorte, tipo suficientemente grande, relleno aireado, alto contraste, columnas alineadas, números correctos. Iterar hasta que sea genuinamente bueno antes de mostrar al usuario.

Fase 6: Entrega, git y limpieza

  1. Escribir una copia SEPARADA y claramente nombrada; nunca sobrescribir un archivo que el usuario ha finalizado.
  2. Entregar el .pptx, un PDF para envío y un PNG de vista previa.
  3. Inicializar git en el directorio de trabajo del póster si es necesario y hacer commit con un mensaje claro (primero la línea base cuando se itera sobre un póster existente, para que la versión anterior se preserve).
  4. Eliminar renderizados intermedios y archivos temporales; mantener los scripts de compilación reproducibles.

Criterios de éxito

  • El entregable es un .pptx editable más un PDF coincidente (tamaño de página verificado) y un PNG de vista previa
  • Los gráficos son nativos y editables (predeterminado) y sobreviven a la apertura de PowerPoint sin mensaje de reparación
  • Cada porcentaje se recalcula con el número fuente; se muestra n/N; se mantiene el marco preliminar si está en curso
  • Las citas son todas reales y verificadas, con hipervínculos DOI/URL
  • Autores, afiliaciones y logotipos confirmados con el usuario
  • Cada figura que el resumen afirma se reproduce a partir de los datos fuente (cuando se proporcionaron datos)
  • Sin texto por debajo del mínimo (check_fonts.py), sin texto superpuesto (check_overlap.py), legible en recortes 1:1 de la vista 1080p; el relleno es aireado, el contraste es fuerte, las columnas se alinean
  • Cada código QR se decodifica del renderizado exactamente a su enlace; los marcadores de posición mantienen el archivo como BORRADOR
  • El estilo institucional coincide con el póster de referencia cuando se proporcionó uno
  • Se escribió una copia separada; el archivo finalizado del usuario no se sobrescribe

...

[truncado para traducción]

Skills relacionados