Install
$ agentstack add skill-juanmarchetto-agent-skills-pdf-presentation ✓ 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.
Verified badge
Passed review? Show it. Paste this badge into your README — it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming — see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps — measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
PDF Presentation Skill
Generate professional PDF reports from structured content using WeasyPrint.
When This Skill Activates
Trigger phrases: "generate PDF", "create report", "export to PDF", "make presentation", "create proposal document", "export evaluation", "PDF report".
Workflow
Step 1: Analyze Content
Identify what type of content needs to be exported:
- Architect Evaluation: Look for Value Matrix, Opportunity Score (1-10), sub-scores, risk assessment, recommendations. Structure as a full evaluation report with title page.
- General Report/Proposal: Any structured document with sections, headings, and body text. Structure with a cover page and sectioned layout.
- Comparison Table: Side-by-side analysis of options. Structure with prominent tables.
- Scored Assessment: Any content with numerical ratings or grades. Include SVG score visualizations.
Step 2: Build the HTML Document
Create a complete HTML file with inline CSS. Use the template structure from assets/templates/report.html as reference. The HTML must be self-contained (no external stylesheets, no external images).
Structure
/* Include all CSS inline - see template for full styles */
/* Use CSS Paged Media for print: @page rules, page counters */
CSS Guidelines
- Use the professional color palette from the template:
#1a365d(primary navy),#2b6cb0(accent blue),#e2e8f0(light gray),#f7fafc(background) - Set
@pagerules with 20mm margins, running headers/footers - Use
page-break-before: alwaysfor major sections - Typography: system font stack, 11pt body, 1.6 line-height
- Tables: alternating row colors, proper padding, header styling
SVG Score Visualizations
For numerical scores (1-10 scale), generate inline SVG elements:
Horizontal bar chart for sub-scores:
7/10
The filled width = (score / maxscore) * totalwidth.
Gauge circle for overall scores:
7.2
out of 10
The stroke-dashoffset = circumference - (score / max_score) * circumference. Circumference for r=50 is ~314.
Color coding for scores:
- 8-10:
#38a169(green) - 5-7:
#d69e2e(amber) - 1-4:
#e53e3e(red)
Architect Evaluation Specifics
When exporting Architect evaluation results, include these sections:
- Cover Page: Idea/project name, evaluation date, mode (New Idea / Existing Project)
- Executive Summary: 2-3 sentence overview with Go/No-Go recommendation
- Opportunity Score: Large gauge SVG with overall score, then bar chart for all 6 sub-scores
- Value Matrix: 3-column table (Commercial / Educational / Social) with scores and notes
- Evaluator Reports: One section per evaluator with their findings
- Risk Assessment: Risk matrix table with severity/likelihood
- Recommendations: Prioritized action items
- Next Steps: Concrete actionable items with timeframes
Step 3: Write the HTML File
Save the generated HTML to a temporary file. Use a descriptive filename:
- For evaluations:
evaluation-.html - For reports:
report-.html - For proposals:
proposal-.html
Place it in the current working directory or a specified output directory.
Step 4: Generate the PDF
Run the generation script:
python3 /scripts/generate_pdf.py -o
Where `` is the directory containing this SKILL.md file.
If the user specified an output path, use that. Otherwise default to the current working directory with a descriptive filename like report-.pdf.
Step 5: Report Results
Tell the user:
- The output PDF path (absolute)
- Page count if available
- Any warnings about content that could not be rendered
Supported Content Types
| Content Type | Key Elements | Template Sections Used | |---|---|---| | Architect Evaluation | Value Matrix, Opportunity Score, Risk Assessment | Cover, Summary, Scores, Matrix, Evaluators, Risk, Recommendations | | Project Proposal | Problem, Solution, Timeline, Budget | Cover, Summary, Sections, Tables, Recommendations | | Comparison Analysis | Options, Criteria, Scores | Cover, Summary, Comparison Tables, Scores | | General Report | Sections, Findings, Conclusions | Cover, Summary, Sections, Recommendations | | Meeting Notes | Agenda, Decisions, Action Items | Cover, Sections, Action Items |
Requirements
- Python 3.8+
- WeasyPrint (
pip install weasyprint) - No other Python dependencies required
Tips for Best Results
- Provide structured content with clear headings and sections
- Include numerical scores when possible for visual impact
- Specify a title if you want a custom cover page heading
- For Architect evaluations, the skill auto-detects the format from standard output
Example Output
PDF generated: ./report-skills-evaluation.pdf
- Pages: 8
- Sections: Cover, Executive Summary, Value Matrix, Risk Assessment, Recommendations
- Score visualizations: Opportunity Score gauge (7.0/10), 6 sub-score bars
- File size: 245 KB
The PDF includes: professional cover page with title and date, table of contents, color-coded score tables, SVG bar charts for sub-scores, risk assessment with severity indicators, and numbered recommendations.
Fallback Without WeasyPrint
If WeasyPrint is not installed, the skill generates a standalone HTML file instead. This HTML file:
- Can be opened in any browser
- Can be printed to PDF via Ctrl+P / Cmd+P
- Contains all the same styling and visualizations
- Is a valid intermediate output, not a degraded experience
Error Handling
- WeasyPrint not installed: Fall back to HTML output (see above). Suggest
pip install weasyprintfor full PDF support. - Missing fonts: WeasyPrint uses system fonts. If text renders incorrectly, specify a font family in the CSS or install the needed font.
- SVG not rendering: Ensure SVG elements use inline styles, not CSS classes. WeasyPrint has limited CSS support for SVG.
- Large content overflows page: The template uses CSS
page-break-inside: avoidfor tables and score blocks. If content still overflows, it splits across pages gracefully.
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: JuanMarchetto
- Source: JuanMarchetto/agent-skills
- License: MIT
- Homepage: https://github.com/JuanMarchetto/agent-skills
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.