Marp Export Skill

SkillFiles & storage

Turns your agent's Marp slide markdown files into PDF, HTML, PPTX, or PNG presentations.

Available today. Use it from your connected AI after setup.

Connect ahel once, and every AI you use reads what you have installed.

Then ask your AI: use the Marp Export Skill skill

About this capability

Export Marp slide markdown files to PDF (default), HTML, PPTX, or PNG. Handles theme loading, Chrome/Chromium detection for PDF export, and batch conversion. Trigger when user says "export slides", "convert marp to pdf", "marp export", "slides to pdf", "slides to html", "导出slides", "slides转pdf", "导出

What this skill tells your AI

The instructions your AI receives, as published by brycewang-stanford/auto-empirical-research-skills in skills/67-econfin-workflow-toolkit/marp-export/SKILL.md and read by ahel’s review.

Export existing Marp markdown files to PDF (default), HTML, PPTX, or PNG.

Quick Reference

# PDF (default) — requires Chrome/Chromium
npx @marp-team/marp-cli INPUT.md -o OUTPUT.pdf --theme-set ~/.claude/skills/marp-slides-creator/themes/ --allow-local-files --html

# HTML
npx @marp-team/marp-cli INPUT.md -o OUTPUT.html --theme-set ~/.claude/skills/marp-slides-creator/themes/ --html

# PPTX (editable, requires LibreOffice)
npx @marp-team/marp-cli INPUT.md -o OUTPUT.pptx --pptx-editable --theme-set ~/.claude/skills/marp-slides-creator/themes/ --allow-local-files

# PNG sequence
npx @marp-team/marp-cli INPUT.md --images png -o OUTPUT_DIR/ --theme-set ~/.claude/skills/marp-slides-creator/themes/

Workflow

Step 1: Locate Input File

Find the Marp markdown file. It must contain marp: true in YAML frontmatter.

# Verify it's a Marp file
head -5 INPUT.md  # should show "marp: true"

Step 2: Theme Directory

Themes are stored in the marp-slides-creator skill:

THEME_DIR="$HOME/.claude/skills/marp-slides-creator/themes/"

Always use --theme-set "$THEME_DIR/" in all export commands.

Step 3: Detect Chrome/Chromium (for PDF/PPTX)

PDF and PPTX export require a Chrome/Chromium browser. Marp-cli auto-detects, but if it fails:

# macOS Chrome paths (check in order)
/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --version
/Applications/Chromium.app/Contents/MacOS/Chromium --version
/Applications/Microsoft\ Edge.app/Contents/MacOS/Microsoft\ Edge --version

# Set CHROME_PATH if auto-detection fails
export CHROME_PATH="/Applications/Google Chrome.app/Contents/MacOS/Google Chrome"

If no browser found, fall back to HTML export and inform the user.

Step 4: Export

Default format is PDF. User can specify otherwise.

Output naming convention:

  • Same directory as input file
  • Same base name, different extension
  • Example: presentation.mdpresentation.pdf

PDF export:

npx @marp-team/marp-cli INPUT.md \
  -o OUTPUT.pdf \
  --theme-set ~/.claude/skills/marp-slides-creator/themes/ \
  --allow-local-files \
  --html

HTML export:

npx @marp-team/marp-cli INPUT.md \
  -o OUTPUT.html \
  --theme-set ~/.claude/skills/marp-slides-creator/themes/ \
  --html

Both PDF + HTML:

# Run sequentially
npx @marp-team/marp-cli INPUT.md -o OUTPUT.pdf --theme-set ~/.claude/skills/marp-slides-creator/themes/ --allow-local-files --html
npx @marp-team/marp-cli INPUT.md -o OUTPUT.html --theme-set ~/.claude/skills/marp-slides-creator/themes/ --html

Step 5: Verify & Report

# Check output exists and show file size
ls -lh OUTPUT.pdf OUTPUT.html 2>/dev/null

Report to user:

  • Output file path(s)
  • File size(s)
  • Format(s) generated
  • Any warnings from marp-cli

Key Flags Reference

FlagPurposeWhen to use
--theme-set DIR/Load custom themesWhen custom .css themes exist
--allow-local-filesAllow local imagesPDF/PPTX with local assets
--htmlEnable HTML tags in markdownAlways recommended
--pptx-editableEditable PPTX outputPPTX format (needs LibreOffice)
--images pngExport as PNG sequencePNG format
--pdf-notesInclude speaker notes in PDFWhen notes are present
--pdf-outlinesAdd bookmarks to PDFFor long presentations

Error Handling

ErrorCauseFix
Chrome/Chromium not foundNo browser for PDFSet CHROME_PATH or fall back to HTML
theme not foundMissing theme CSSCheck --theme-set path, use built-in theme
Could not find an inputBad file pathVerify path and marp: true frontmatter
Blank/empty PDFHTML tags without --htmlAdd --html flag

Examples

# Export current project's slides to PDF
npx @marp-team/marp-cli slides_project/05_final/presentation.md \
  -o slides_project/05_final/slides.pdf \
  --theme-set ~/.claude/skills/marp-slides-creator/themes/ \
  --allow-local-files --html

# Quick HTML export (no Chrome needed)
npx @marp-team/marp-cli my-talk.md -o my-talk.html --html

# Batch export all .md files in a directory
for f in slides/*.md; do
  npx @marp-team/marp-cli "$f" -o "${f%.md}.pdf" --allow-local-files --html
done

Signals

GitHub stars
4k
Forks
476
Last commit
Sep 2026
Advanced
Catalog kind
skill
Gateway key
marp-export
Source
github.com/brycewang-stanford/auto-empirical-research-skills