Benchmark Report Creator
Overview
End-to-end orchestrator for creating publication-quality benchmark reports. This skill coordinates the full pipeline rather than duplicating individual component skills.
┌─────────────────────────────────────────────────────────────────────────┐ │ BENCHMARK REPORT PIPELINE │ ├─────────────────────────────────────────────────────────────────────────┤ │ │ │ 1. STRUCTURE 2. DIAGRAMS 3. EXPORT │ │ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │ │ │ Markdown │ │ HTML diagram │ │ pandoc + │ │ │ │ template │───►│ with academic│─────►│ weasyprint │ │ │ │ (sections) │ │ styling │ │ (final PDF) │ │ │ └──────────────┘ └──────┬───────┘ └──────────────┘ │ │ │ │ │ ▼ │ │ ┌──────────────┐ │ │ │ Playwright │ ◄── High-res PNG capture │ │ │ script │ (2x deviceScaleFactor) │ │ │ (hi-res PNG) │ │ │ └──────────────┘ │ │ │ └─────────────────────────────────────────────────────────────────────────┘
Key Capabilities:
- •Complete pipeline orchestration (not component duplication)
- •Working hi-res PNG capture script (fixes Playwright CLI limitations)
- •Exact CSS templates from paralleLLM empathy v1.0/v2.0
- •Full command sequences with copy-paste examples
When to Use This Skill
Trigger Phrases:
- •"create a benchmark report"
- •"write up my AI experiment"
- •"publication-quality benchmark documentation"
- •"full report with diagrams and PDF"
- •"empathy experiment style report"
Use Cases:
- •AI/ML benchmark evaluation reports
- •Model comparison studies
- •Empirical experiment writeups
- •Research documentation with figures
NOT for:
- •Single diagram creation (use html-diagram-creator)
- •Simple markdown to PDF (use markdown-to-pdf-converter)
- •ASCII diagrams (use ascii-diagram-creator)
Quick Start
Prerequisites
# Install all dependencies brew install pandoc pip install weasyprint npm install playwright npx playwright install chromium
Complete Pipeline (3 commands)
# 1. Create HTML diagram # [Use html-diagram-creator skill or copy template] # 2. Capture diagram to high-res PNG node scripts/capture-diagram.js diagram.html figures/figure-1.png # 3. Convert markdown report to PDF pandoc report.md --standalone --css=templates/pdf-style.css -t html | weasyprint - report.pdf
Pipeline Phases
Phase 1: Document Structure
Use the report-creator pattern or copy from reference/report-template.md:
| Section | Content |
|---|---|
| Abstract | 150-250 word summary |
| Executive Summary | Key finding + metrics table |
| 1. Background | Research context, hypotheses |
| 2. Methodology | Design, variables, protocol |
| 3. Results | Statistics, observations |
| 4. Discussion | Hypothesis evaluation |
| 5. Limitations | Methodological constraints |
| 6. Future Work | Research directions |
| 7. Conclusion | Synthesis |
| Appendices | Supporting materials |
Phase 2: Create Diagrams
Use the html-diagram-creator pattern for publication-quality HTML diagrams.
Color Palette (Academic Standard):
| Stage | Fill | Border | Usage |
|---|---|---|---|
| Data Preparation | #E3F2FD | #1976D2 | Input processing |
| Execution | #E8F5E9 | #388E3C | API calls, inference |
| Analysis | #FFF3E0 | #F57C00 | Evaluation, scoring |
→ Full templates: reference/html-templates.md
Phase 3: Capture to PNG (CRITICAL)
Important: The Playwright CLI --device-scale-factor flag does NOT exist. Use the provided Node.js script instead:
# Working high-res capture (2x retina quality) node scripts/capture-diagram.js diagram.html output.png # The script handles: # - deviceScaleFactor: 2 (retina quality) # - .diagram-container selector targeting # - Proper file:// protocol handling
Why not CLI? Playwright's CLI screenshot command doesn't support --device-scale-factor. The bundled script uses the Playwright API directly.
Phase 4: Embed in Markdown
<figure style="margin: 2em auto; page-break-inside: avoid; text-align: center;">
<img src="figures/figure-1.png" alt="Description" style="max-width: 100%; height: auto;">
<figcaption style="text-align: center; font-style: italic; margin-top: 1em;">
Figure 1: Caption text.
</figcaption>
</figure>
Phase 5: Export to PDF
# Two-step (for debugging) pandoc report.md -o report.html --standalone --css=templates/pdf-style.css weasyprint report.html report.pdf # One-liner (production) pandoc report.md --standalone --css=templates/pdf-style.css -t html | weasyprint - report.pdf
File Structure
benchmark-report-creator/
├── SKILL.md # This file (orchestrator)
├── templates/
│ └── pdf-style.css # Academic CSS (empathy v1.0/v2.0)
├── scripts/
│ └── capture-diagram.js # Working hi-res PNG capture
├── reference/
│ ├── report-template.md # Full markdown template
│ ├── html-templates.md # Diagram HTML templates
│ └── command-reference.md # All commands in one place
└── examples/
└── sample-report/ # Complete working example
CSS Template Standards
The bundled templates/pdf-style.css follows empathy v1.0/v2.0 conventions:
Tables (Academic Style)
- •Header: 2px solid top/bottom borders
- •Body: 1px solid bottom borders
- •Last row: 2px solid bottom border
- •
page-break-inside: avoid
Figures
- •
max-width: 100%(NOT min-width) - •
margin: 2em autofor centering - •
page-break-inside: avoid - •Italic captions centered below
Page Control
- •2cm margins
- •Headings:
page-break-after: avoid - •Orphans/widows: 3 lines minimum
Troubleshooting
| Issue | Cause | Solution |
|---|---|---|
| Blurry PNG | Using CLI instead of script | Use scripts/capture-diagram.js |
| Image off-center | Missing margin auto | Add margin: 2em auto to figure |
| Table split | Missing page-break rule | CSS has this by default |
| Weasyprint warnings | Unsupported CSS props | Safe to ignore (gap, overflow-x) |
| Empty PNG | Wrong selector | Check .diagram-container exists |
Success Checklist
- • All prerequisites installed (pandoc, weasyprint, playwright)
- • Diagram HTML created with academic styling
- • PNG captured at 2x resolution using script (not CLI)
- • Markdown has proper figure tags with captions
- • PDF renders without errors
- • Tables don't split across pages
- • Figures centered with captions
Related Skills (User Global)
These skills may be installed in user's ~/.claude/skills/:
| Skill | Purpose | When to Use Directly |
|---|---|---|
| report-creator | Document templates | Structure guidance only |
| html-diagram-creator | Diagram HTML | Single diagram creation |
| html-to-png-converter | PNG export reference | CLI-only workflows |
| markdown-to-pdf-converter | PDF pipeline | Non-benchmark documents |
This orchestrator combines all four into a single coherent workflow for benchmark reports.
Based on: paralleLLM empathy-experiment-v1.0.pdf and v2.0.pdf