CommunityImagemgithub.com

Pôster de Pesquisa (Research Poster)

Transforma um resumo em PDF em um pôster de conferência científica polido, totalmente editável (.pptx + PDF + preview) em estilo institucional consistente, com gráficos honestos, citações verificadas e tipografia grande e legível.

O que é Pôster de Pesquisa (Research Poster)?

Esta skill automatiza a criação de pôsteres científicos profissionais e prontos para submissão a partir de um resumo em PDF. Ela é ideal para conferências como RSNA, AHA, ASH, ASCO, ARVO, AAO, SNIS ou dias de pesquisa de residência. Seu principal valor está em garantir a integridade dos dados: a skill extrai e reproduz todos os números do resumo a partir da fonte de dados fornecida, cria gráficos nativos e editáveis do PowerPoint (evitando o temido prompt de reparo) e verifica cada citação em bancos como PubMed ou DOI. O resultado é um pôster visualmente hierarquizado, com tipografia grande e legível à distância, espaçamento generoso e estilo institucional consistente, extraído de um pôster de referência ou do kit de marca da instituição. A skill opera com um ciclo de renderização e auto-QA: ela renderiza o pôster, verifica a legibilidade, sobreposições de texto e códigos QR, e itera até que o resultado atinja um alto padrão de qualidade antes de apresentá-lo ao usuário. Suporta execução interativa ou totalmente autônoma.

Funciona com✓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 Imagem skills: steipete/songsee, affaan-m/frontend-design, mattpocock/improve-codebase-architecture · View all 6 →

Perguntar na sua IA favorita

Abre um novo chat com esta habilidade de agente já pré-carregada.

Documentação

Referências são obrigatórias, não opcionais

Esta skill inclui 6 arquivos de referência mais dois exemplos práticos em references/examples/. Leia a referência correspondente ANTES da etapa que a exige, nunca depois para verificar seu trabalho.

  • references/data-integrity.md: reproduza o resumo a partir dos dados de origem (Fase 1)
  • references/venues.md: encontre e date as regras do evento; kits de marca institucionais (Fases 0 e 2)
  • references/design-rules.md: piso de legibilidade, escala tipográfica, layout, estilo institucional (Fase 3)
  • references/build-and-charts.md: gráficos nativos, o gatilho de reparo, armadilhas do python-pptx (Fase 4)
  • references/rendering-qa.md: renderização, verificações de legibilidade e sobreposição, códigos QR (Fase 5)
  • references/citations.md: verificar, formatar, hiperlink (Fase 2)

Objetivo

Produzir um pôster científico pronto para submissão e com a marca institucional a partir de um resumo em PDF. A entrega é um PowerPoint (.pptx) editável, além de um PDF e um PNG de pré-visualização. Tudo é nativo e editável por padrão: texto, faixas de seção, blocos de estatísticas e gráficos. Os dados, números e citações são sempre reais e verificados; o design é legível à distância, respirável e combinado com o estilo institucional do autor (extraído de um pôster de referência quando fornecido).

Esta skill codifica um fluxo de trabalho que foi solidificado na prática. Leia a referência correspondente ANTES da etapa que a exige, não depois para verificar seu trabalho (neste ponto, o erro já estará na saída); não reinvente as partes que já estão resolvidas (segurança de gráficos, renderização, escala tipográfica). Os scripts estão em ${CLAUDE_SKILL_DIR}/scripts/; exemplos práticos e orientação detalhada estão em ${CLAUDE_SKILL_DIR}/references/. A renderização usa LibreOffice (multiplataforma) ou Microsoft PowerPoint no macOS; veja references/rendering-qa.md.

Requisitos

  • python 3 com: python-pptx (>= 1.0), matplotlib, pdfplumber, pypdfium2, pillow, pypdf, pymupdf.
  • Um renderizador: LibreOffice (soffice/libreoffice no PATH, qualquer SO) OU macOS com Microsoft PowerPoint. A verificação de reparo de gráficos (scripts/check_charts.py) precisa apenas de python, em qualquer SO.
  • Instalação: pip install python-pptx matplotlib pdfplumber pypdfium2 pillow pypdf pymupdf (adicione qrcode para códigos QR, ou use scripts/qr.swift no macOS). Se o pip recusar com "externally-managed-environment", use um venv: python3 -m venv ~/.venvs/poster && ~/.venvs/poster/bin/pip install <mesma lista>, execute a construção com esse python e passe PYTHON=~/.venvs/poster/bin/python para o render.sh.

Skills complementares

Tudo o que esta skill precisa está incluído; a construção, renderização e verificação são executadas apenas nos scripts aqui. Estas skills opcionais adicionam polimento. Use qualquer uma que esteja instalada. Se uma estiver faltando, prossiga sem ela e mencione a instalação de uma linha ao usuário uma vez; nunca pare por isso.

SkillAdicionaInstalação (no Claude Code)
Anthropic pptx + pdf (document-skills)editar um pôster existente, PDFs difíceis/plugin marketplace add anthropics/skills, depois /plugin install document-skills@anthropic-agent-skills
frontend-designpaleta, combinação de tipos, direção de layout/plugin install frontend-design@claude-plugins-official
K-Dense citation-management (MIT)Pesquisa PubMed/DOI, referências formatadascopie skills/citation-management de github.com/K-Dense-AI/scientific-agent-skills para ~/.claude/skills/
K-Dense scientific-visualization (MIT)figuras matplotlib no estilo de revista (rota de gráfico de imagem)mesmo repositório, skills/scientific-visualization

Deixe de fora K-Dense pptx-posters (uma rota de pôster HTML/CSS que compete pelas mesmas solicitações) e scientific-writing (prosa de manuscrito que proíbe os marcadores que um pôster precisa). As verificações de citação não precisam de skill extra: pesquisa na web e busca em PubMed/Crossref/doi.org resolvem.

Contexto de execução

Execute interativamente OU totalmente autônomo. Cada ponto de verificação abaixo é um AskUserQuestion com um padrão recomendado claramente marcado, para que uma execução autônoma apenas aceite os padrões e os declare.

  • 🟢 Automático (sem perguntar): ler entradas, pesquisar, extrair estilo institucional, construir, renderizar, auto-QA e iterar, git-init + commit no próprio diretório de trabalho do pôster, limpar intermediários.
  • 🟡 Perguntar (com um padrão recomendado): dimensões do pôster / especificação do evento, confirmação de autor + afiliação + logotipo, nível de tom, profundidade de citação, mecanismo de gráfico (editável-nativo vs imagens) e se os dados são finais.
  • 🔴 Nunca: fabricar qualquer número, resultado ou citação; alterar os achados relatados do estudo; sobrescrever um arquivo que o usuário já finalizou (sempre escrever uma cópia separada); enviar um arquivo que acione o prompt de reparo do PowerPoint; copiar dados em nível de paciente para fora do arquivo do autor ou enviá-los para qualquer serviço web (leia-os no local, salve apenas agregados).

Princípios

  • Reiterar o plano e confirmar antes de construir ao trabalhar com um usuário; emparelhar perguntas com uma recomendação para que o fluxo de trabalho também possa ser executado autonomamente.
  • Explorar e verificar, não presumir. Pesquisar com busca na web e um leitor web; consultar a documentação atual da biblioteca para qualquer API antes de usá-la. Verificar cada citação em PubMed ou por DOI.
  • Manter enxuto e DRY. Reutilizar os scripts e exemplos incluídos; adaptar, não reconstruir. Conduzir cada gráfico e destaque a partir de um bloco de dados editável para que os números sejam atualizados em um só lugar.
  • Projetar deliberadamente: hierarquia visual forte, espaçamento generoso, alto contraste, tipo legível à distância. Evitar neon, gradientes pesados, brilho e imagens geradas por IA. Combinar as convenções do evento do autor.
  • TDD-lite: afirmar que cada porcentagem do gráfico é recalculada para o número de origem antes de construir.
  • Auto-QA com alto padrão antes de mostrar ao usuário: renderizar, olhar, corrigir, repetir.
  • Nunca fabricar dados ou citações, e nunca alterar os achados relatados.

Processo

Fase 0: Entrada + confirmação

  1. Coletar entradas: o resumo em PDF (obrigatório); um pôster de referência opcional (.pptx) para estilo institucional; arquivos de logotipo opcionais; quaisquer dados atualizados.
  2. Reiterar o que entendeu e, em seguida, agrupar os pontos de verificação (uma ou duas chamadas AskUserQuestion, cada opção marcada com o padrão recomendado). Padrões recomendados entre colchetes:
    • Dimensões / evento: verificar primeiro a especificação ePoster do evento [padrão]; caso contrário, um único slide 16:9 (48x27 pol) que corresponde à maioria dos visualizadores de ePoster em tela.
    • Autores, afiliações e logotipos: confirmar com o autor, não com o bloco de submissão do resumo (muitas vezes não é final). Múltiplas instituições significam múltiplos logotipos [perguntar quais].
    • Tom: polimento acadêmico moderado [padrão]; dados e achados nunca mudam.
    • Citações: 4-6 referências verificadas com DOIs/URLs clicáveis [padrão].
    • Mecanismo de gráfico: gráficos nativos editáveis [padrão]; imagens polidas sob solicitação.
    • Os dados são finais ou virão mais? Se estiver em andamento, construir para que os números sejam triviais de atualizar (bloco de dados único) e manter o enquadramento preliminar.
    • Um pôster de slide único ou uma apresentação? "PowerPoint para uma conferência" pode significar qualquer um [pôster].
    • Quando o arquivo de dados do autor é fornecido e discorda do resumo: quais números vão para o pôster [obter o arquivo de análise do autor; caso contrário, recalcular e reproduzir, veja data-integrity.md].
    • Links para quaisquer códigos QR (vídeos, artigo completo). Links ausentes tornam-se espaços reservados marcados [padrão].
    • O prazo de submissão: perguntar pelo e-mail de aceitação; um prazo pode já estar próximo.
  3. Modo autônomo: aceitar os padrões, declará-los, prosseguir.

Fase 1: Ler todas as entradas completamente

  1. Opcionalmente, usar skills complementares se o ambiente as tiver (document/pptx e pdf, dataviz, frontend design, citation management, scientific visualization). Elas são aprimoramentos; o fluxo de trabalho abaixo é autocontido via python-pptx, matplotlib e um renderizador.
  2. Ler o resumo completamente: texto via pdfplumber (python-docx para um .docx), uma renderização visual, e uma verificação de OCR/imagem para que nenhuma figura seja perdida. Capturar o título, autores, afiliações, cada número e o n/N para cada um.
  3. Se o autor forneceu os dados subjacentes, ler sua estrutura antes de quaisquer valores, depois reproduzir cada figura no resumo a partir deles em um analysis.py que os afirma e escreve agregados para data.json. Verificar DP vs EP, médias pareadas vs de grupo, cada figura com seu próprio n, rótulos de categoria contra as anotações originais e a primeira linha de dados. Veja references/data-integrity.md.
  4. Se um pôster de referência for fornecido, extrair seu estilo institucional: tamanho do slide, paleta (banda + preenchimentos de destaque), fontes e tamanhos, estrutura da barra de seção e o logotipo. Renderizá-lo com bash ${CLAUDE_SKILL_DIR}/scripts/render.sh para vê-lo. Veja references/design-rules.md.
  5. Confirmar dependências python: pip install python-pptx matplotlib pdfplumber pypdfium2 pillow pypdf pymupdf.

Fase 2: Pesquisa

  1. Verificar a especificação ePoster do evento nas próprias páginas da sociedade para este ano (proporção de aspecto, fontes, mídia, fornecedor de upload, prazo, texto de divulgação obrigatório) e datá-la. Confirmar sobre qual organização cada fonte é. Veja references/venues.md, que também cobre a obtenção da paleta, tipo de letra e logotipo do kit de marca publicado da instituição.
  2. Verificar e buscar citações: reais, verificadas por PubMed/DOI, com hiperlinks e datas de acesso; incluir fontes de registro e literatura cinzenta que o autor realmente usa, não apenas periódicos. Veja references/citations.md. Nunca inventar uma citação.
  3. Obter qualquer contexto necessário para a introdução. Consultar documentações atuais da biblioteca ao construir.

Fase 3: Design

  1. Definir tokens de estilo institucional, uma grade de colunas, hierarquia visual clara, tipografia em escala de pôster, espaçamento respirável e alto contraste. Veja references/design-rules.md.
  2. Escolher tipos de gráfico honestos: rosca/pizza apenas para partes de um todo; um gráfico de barras para proporções independentes ou mutuamente exclusivas; blocos de número grande para figuras únicas. Rotular cada gráfico com seu n/N. Veja references/build-and-charts.md.
  3. Definir um bloco de dados editável que conduz cada gráfico e destaque.

Fase 4: Construção (python-pptx, TDD-lite)

  1. Adaptar references/examples/build_poster_example.py (gráficos nativos editáveis) ou references/examples/make_charts_example.py (imagens matplotlib) ao conteúdo e estilo institucional.
  2. Construir gráficos nativos editáveis com estilo SEGURO para PowerPoint APENAS. A única regra rígida: nunca definir uma POSIÇÃO de rótulo de dado de rosca/pizza, essa é a configuração que faz o PowerPoint reparar e remover o gráfico. Preenchimentos por fatia, legendas, rótulos de porcentagem, formatos de número e fontes de eixo são todos seguros. Colocar a porcentagem da rosca na legenda mais um número grande no furo. Receita completa em references/build-and-charts.md.
  3. TDD-lite: afirmar que cada porcentagem exibida é recalculada para o número de origem antes de salvar.
  4. Obter autores, afiliações e logotipos corretos de acordo com a Fase 0.
  5. Portão de legibilidade: definir cada tamanho a partir de uma tabela de escala de tipo única com um piso (22 pt em um slide de 48 pol), definir chart.font.size em cada gráfico e terminar a construção falhando se algum tamanho no arquivo salvo estiver abaixo do piso (scripts/check_fonts.py). Veja references/design-rules.md.
  6. Portão de prontidão: manter os itens não confirmados (lista de autores, afiliação, divulgações, links) em uma lista de verificação CONFIRMADA na construção. Até que todos sejam Verdadeiros, nomear a saída ..._DRAFT.pptx, marcar cada lacuna visivelmente no pôster e imprimir o que ainda está aberto.

Fase 5: Renderização + ciclo de auto-QA

  1. Renderizar com bash ${CLAUDE_SKILL_DIR}/scripts/render.sh <pptx> <out.pdf> <out.png> 1.7 (LibreOffice, ou PowerPoint no macOS) e, em seguida, visualizar o PNG.
  2. Para gráficos nativos, executar python3 ${CLAUDE_SKILL_DIR}/scripts/check_charts.py <pptx>: ele falha se qualquer rosca/pizza carregar uma posição de rótulo de dado, a configuração que faz o PowerPoint deletar o gráfico ao abrir.
  3. Executar scripts/check_fonts.py <pptx> e scripts/check_overlap.py <rendered.pdf>, em seguida, reduzir a renderização para 1920x1080 e visualizar as regiões mais densas como recortes 1:1. Decodificar cada código QR da renderização. Veja references/rendering-qa.md.
  4. Corrigir de acordo com a lista de verificação de references/rendering-qa.md: sem overflow ou corte, tipo grande o suficiente, espaçamento respirável, alto contraste, colunas alinhadas, números corretos. Iterar até que esteja genuinamente bom antes de mostrar ao usuário.

Fase 6: Entrega + git + limpeza

  1. Escrever uma cópia SEPARADA e claramente nomeada; nunca sobrescrever um arquivo que o usuário finalizou.
  2. Entregar o .pptx, um PDF de submissão e um PNG de pré-visualização.
  3. git-init o diretório de trabalho do pôster, se necessário, e commitar com uma mensagem clara (primeiro a linha de base quando iterando em um pôster existente, para que a versão anterior seja preservada).
  4. Remover renderizações intermediárias e arquivos temporários; manter os scripts de construção reproduzíveis.

Critérios de sucesso

  • A entrega é um .pptx editável mais um PDF correspondente (tamanho de página verificado) e PNG de pré-visualização
  • Os gráficos são nativos e editáveis (padrão) e sobrevivem à abertura no PowerPoint sem prompt de reparo
  • Cada porcentagem é recalculada para o número de origem; n/N mostrado; enquadramento preliminar mantido se em andamento
  • As citações são todas reais e verificadas, com hiperlinks DOI/URL
  • Autores, afiliações e logotipos confirmados com o usuário
  • Cada figura que o resumo afirma é reproduzida a partir dos dados de origem (quando os dados foram fornecidos)
  • Nenhum texto abaixo do piso (check_fonts.py), nenhum texto sobreposto (check_overlap.py), legível em recortes 1:1 da visualização 1080p; espaçamento é respirável, contraste é forte, colunas alinhadas
  • Cada código QR decodifica da renderização exatamente para seu link; espaços reservados mantêm o arquivo como RASCUNHO
  • O estilo institucional corresponde ao pôster de referência quando um foi fornecido
  • Uma cópia separada foi escrita; o arquivo finalizado do usuário não foi sobrescrito

Habilidades Relacionadas