alterlab-pptx-posters — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited alterlab-pptx-posters (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
⚠️ USE THIS SKILL ONLY WHEN USER EXPLICITLY REQUESTS PPTX/POWERPOINT POSTER FORMAT.
For standard research posters, use the latex-posters skill instead, which provides better typographic control and is the default for academic conferences.
This skill creates research posters using HTML/CSS, which can then be exported to PDF or converted to PowerPoint format. The web-based approach offers:
ONLY use this skill when:
DO NOT use this skill when:
If a diagram or figure would aid comprehension, invoke the alterlab-scientific-schematics skill (diagrams/schematics) or the alterlab-generate-image skill (images). Figures are optional — add them only where they improve clarity.
A practical workflow for a visual poster:
Posters generally read best when visuals carry much of the message and text stays concise.
Text within poster visualizations needs to be poster-readable. Poster graphics are viewed from 4-6 feet away, so text must be large. When generating a figure, describe these readability constraints in the prompt:
POSTER FORMAT GUIDELINES:
- Keep to 3-4 elements per graphic (3 is ideal)
- Around 10 words total in the entire graphic
- Avoid complex workflows with 5+ steps (split into 2-3 simple graphics instead)
- Avoid multi-level nested diagrams (flatten to a single level)
- One key point per case study (not multiple sub-sections)
- Large bold text (80pt+ for labels, 120pt+ for key numbers)
- High contrast (dark on white OR white on dark; avoid gradients behind text)
- Generous white space (around 50%)
- Thick lines (5px+), large icons (200px+)
- One single message per graphicBefore generating, review the prompt and count elements:
Example — too dense (7-stage workflow): "Drug discovery workflow: Target ID, Synthesis, Screening, Lead Opt, Validation, Clinical Trial, FDA Approval with metrics" — this crams in too many stages and renders as tiny, unreadable text.
Example — readable (3 mega-stages): "POSTER FORMAT for A0. Ultra-simple 3-box workflow: 'DISCOVER' → 'VALIDATE' → 'APPROVE'. Each word in giant bold (120pt+). Thick arrows (10px). 60% white space. Only these 3 words, no substeps. Readable from 12 feet." — same content, simplified to a readable poster format.
⚠️ POSTERS MUST NOT HAVE TEXT OR CONTENT CUT OFF AT EDGES.
Prevention Rules:
1. Limit Content Sections (MAXIMUM 5-6 sections):
✅ GOOD - 5 sections with room to breathe:
- Title/Header
- Introduction/Problem
- Methods
- Results (1-2 key findings)
- Conclusions
❌ BAD - 8+ sections crammed together2. Word Count Limits:
The HTML template (assets/poster_html_template.html) provides:
Standard Layout:
┌─────────────────────────────────────────┐
│ HEADER: Title, Authors, Hero Image │
├─────────────┬─────────────┬─────────────┤
│ Introduction│ Results │ Discussion │
│ │ │ │
│ Methods │ (charts) │ Conclusions │
│ │ │ │
│ (diagram) │ (data) │ (summary) │
├─────────────┴─────────────┴─────────────┤
│ FOOTER: References & Contact Info │
└─────────────────────────────────────────┘Each section should prominently feature AI-generated visuals:
Hero Image (Header):
<img src="figures/hero.png" class="hero-image">Section Graphics:
<div class="block">
<h2 class="block-title">Methods</h2>
<div class="block-content">
<img src="figures/workflow.png" class="block-image">
<ul>
<li>Brief methodology point</li>
</ul>
</div>
</div>Generate figures via alterlab-scientific-schematics (diagrams) or alterlab-generate-image (images), as noted above. Example prompts that keep poster graphics simple and readable (save into a figures/ directory):
CRITICAL: Generate SIMPLE figures with MINIMAL content.
mkdir -p figures
# Generate each element with POSTER FORMAT specifications
# (See examples in Section 4 above)assets/ directory: cp assets/poster_html_template.html poster.html open poster.html # macOS
# or
xdg-open poster.html # LinuxThe template's @page rule (added in the template <style>) fixes the PDF page to the poster size, so exports come out at full dimensions instead of being cropped to Letter/A4.
Browser Print Method:
@page rule sets, or pick a custom size matching the posterCommand Line (Chrome headless):
# Use the new headless mode (Chrome 132+ ships old --headless only as the
# separate chrome-headless-shell binary). On macOS the binary lives at:
# /Applications/Google Chrome.app/Contents/MacOS/Google Chrome
"/Applications/Google Chrome.app/Contents/MacOS/Google Chrome" \
--headless=new \
--no-pdf-header-footer \
--print-to-pdf=poster.pdf \
"file://$PWD/poster.html"--no-pdf-header-footer replaces the older --print-to-pdf-no-header; on Chrome versions before ~118 fall back to the old flag name. Page size and zero margin come from the template's @page rule, not a CLI flag.
Pick the path based on what "PPTX" needs to be:
Option 1 — Single-image slide (fast, NOT editable). Convert the exported PDF page (or a rasterized PNG of it) into one full-bleed picture on a poster-sized slide. This is the right choice when the user just wants a .pptx container to project or submit. LibreOffice's PDF import treats the PDF as a drawing, so the slide content is effectively a flattened image — text is not editable in PowerPoint.
# Rasterize the PDF to a PNG, then place it as one slide (see python-pptx below).
# A direct `libreoffice --convert-to pptx poster.pdf` produces a non-editable,
# image-like slide and often misplaces content — prefer the python-pptx path.
magick -density 150 poster.pdf poster.pngOption 2 — Native PPTX with python-pptx (editable). Use this when the user actually wants to edit the poster in PowerPoint. Build the slide from the same figures/ and text so each element is a real, movable PowerPoint object. Match the slide size to the poster orientation — the template is portrait 36in wide × 48in tall:
from pptx import Presentation
from pptx.util import Inches, Pt
prs = Presentation()
prs.slide_width = Inches(36) # portrait: width < height (match the template)
prs.slide_height = Inches(48)
slide = prs.slides.add_slide(prs.slide_layouts[6]) # Blank
# Add images from figures/ (positions in inches from top-left)
slide.shapes.add_picture("figures/hero.png", Inches(0), Inches(0), width=Inches(36))
# ... add text boxes and other images for each section
prs.save("poster.pptx")Install with uv pip install python-pptx (or uvx); magick is ImageMagick.
The provided template (assets/poster_html_template.html) includes:
/* Poster dimensions */
body {
width: 2592pt; /* 36 inches */
height: 3456pt; /* 48 inches */
}
/* Color scheme - customize these */
.header {
background: linear-gradient(135deg, #1a365d 0%, #2b6cb0 50%, #3182ce 100%);
}
/* Typography */
.poster-title { font-size: 108pt; }
.authors { font-size: 48pt; }
.block-title { font-size: 52pt; }
.block-content { font-size: 34pt; }| Class | Purpose | Font Size |
|---|---|---|
.poster-title | Main title | 108pt |
.authors | Author names | 48pt |
.affiliations | Institutions | 38pt |
.block-title | Section headers | 52pt |
.block-content | Body text | 34pt |
.key-finding | Highlight box | 36pt |
For EACH planned graphic, verify:
Reject these patterns:
For EACH generated figure at 25% zoom:
✅ PASS criteria (ALL must be true):
❌ FAIL criteria (regenerate if ANY true):
AI-Generated Graphics Mistakes:
HTML/Export Mistakes:
Content Mistakes:
This skill works with:
Available in assets/ directory:
poster_html_template.html: Main HTML poster template (36×48 inches)poster_quality_checklist.md: Pre-submission validation checklistAvailable in references/ directory:
poster_content_guide.md: Content organization and writing guidelinesposter_design_principles.md: Typography, color theory, and visual hierarchyposter_layout_design.md: Layout principles and grid systems~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.