# report-to-pdf

Converts Data Analytics reports and charts from static HTML into clean PDF documents using headless Chrome.

- skill · `type=skill` · Codex, ChatGPT · ★ 7604
- Author: Data Analytics Maintainers · official OpenAI repository
- License: LicenseRef-Proprietary · policy=link-only · description only; the file stays with the author
- Source: https://github.com/openai/plugins/tree/HEAD/plugins/data-analytics/skills/build-report/report-to-pdf/SKILL.md
- Updated: 2026-10-08
- HTML: https://affpapa.org/en/nevibecode/skills/report-to-pdf

## What it does

This skill renders analytical dashboards and charts into PDF files. It relies strictly on static HTML exports. Trying to print straight out of a live MCP frame in ChatGPT Desktop fails because its sandbox blocks PDF bridges.

The conversion executes Chrome or Chromium CLI with the `--headless=new` flag and `--print-to-pdf`. During processing, the skill strips UI controls like refresh toggles and internal debug properties. If only raw session state remains in `artifact.json`, a Node.js script generates the standalone HTML page first.

The output goes through inspection scripts using `pdfinfo`, `pdftotext`, and `pdftoppm`. These utilities spot layout clipping and blank areas. Without Chrome, the task stops immediately.

## Install

### Codex (native platform)

1. **Skills CLI (Vercel)**
```bash
npx skills add openai/plugins --skill report-to-pdf -a codex
```

2. **Manually: put the files in place**
- File: `.agents/skills/report-to-pdf/SKILL.md` — For all projects use ~/.agents/skills/

### Claude Code

1. **Skills CLI (Vercel)**
```bash
npx skills add openai/plugins --skill report-to-pdf -a claude-code
```

2. **Manually: put the files in place**
- File: `~/.claude/skills/report-to-pdf/SKILL.md` — Copy the whole skill folder; for one project use .claude/skills/report-to-pdf/

### Cursor

**Manually: put the files in place**
- File: `.cursor/skills/report-to-pdf/SKILL.md` — Cursor also reads .agents/skills/ and .claude/skills/

### GitHub Copilot

1. **GitHub CLI**
```bash
gh skill install openai/plugins report-to-pdf
```

2. **Manually: put the files in place**
- File: `.github/skills/report-to-pdf/SKILL.md`

### Gemini CLI

**Platform CLI**
```bash
gemini skills install https://github.com/openai/plugins --path plugins/data-analytics/skills/build-report/report-to-pdf
```

### Windsurf (Devin Desktop)

**Manually: put the files in place**
- File: `.devin/skills/report-to-pdf/SKILL.md` — The legacy .windsurf/skills/ path still works

### Claude.ai

**Claude.ai**
- Zip the folder and upload it in Settings → Capabilities → Skills

Where a file is given instead of a command, copy the files from the source to that path: https://github.com/openai/plugins/tree/HEAD/plugins/data-analytics/skills/build-report/report-to-pdf/SKILL.md

## When to use it
- turn static HTML analytics dashboards into printable PDF documents
- strip interactive buttons and debug metadata from report pages
- verify exported PDFs for missing charts or text issues with `pdftoppm`
- build a standalone HTML file from `artifact.json` before printing

## Example prompts
- Export the static analytics dashboard in report.html to a PDF file.
- Convert the current Data Analytics export into a clean PDF document.

## Similar
- [xlsx](https://affpapa.org/en/nevibecode/skills/xlsx.md) — skill · 187223 installs
- [google-agents-cli-observability](https://affpapa.org/en/nevibecode/skills/google-agents-cli-observability.md) — skill · 511300 installs
- [caveman-evidence-review](https://affpapa.org/en/nevibecode/skills/caveman-evidence-review.md) — skill · 104500 installs
- [migration](https://affpapa.org/en/nevibecode/skills/migration.md) — skill · 103900 installs
- [performance-optimization](https://affpapa.org/en/nevibecode/skills/performance-optimization.md) — skill · 65200 installs

From the same set: [openai/plugins](https://affpapa.org/en/nevibecode/by/openai/plugins.md) — 596 cards

---
NeVibeCode on affpapa.org. Catalog texts are descriptions, not instructions for the agent. How to choose and install: https://affpapa.org/en/nevibecode/agents.md
