Skip to content

Guide · Agent skill

How to use the Report to PDF agent skill

Updated · written with AI from the project's own documentation and checked against our catalogue data

Report to PDF is an agent skill, a packaged set of instructions and scripts that an AI agent can load when a task matches it. This guide is for analysts, teams and developers who already have a Data Analytics report, dashboard or chart export and need a shareable PDF of it. By the end you will know what the skill does, how to install it, how to phrase a request that triggers it, and what to check in the result.

Report to PDFXiaomiMiMo/MiMo-Code · MIT

Quick start

  1. 1Download the skill ZIP. Get the report-to-pdf ZIP from the skill's page on this site.
  2. 2Install it. Unzip it into ~/.claude/skills/ for personal use, or into the project's .claude/skills/ folder. In the Claude apps, upload it under Settings → Capabilities → Skills.
  3. 3Confirm the tools. Make sure Google Chrome or Chromium, and the Poppler tools pdfinfo, pdftotext and pdftoppm, are installed locally.
  4. 4Export a static HTML source. Save the Data Analytics report or dashboard as a static HTML file. The skill does not log in to hosted apps.
  5. 5Ask for the conversion. Name the report, give the absolute path to the HTML, and say you want a PDF.
  6. 6Check the result. Review the PDF page count, text selection, charts and any leftover labels before sharing.

What the report-to-pdf skill makes the agent do

The skill is a narrow conversion tool. It runs only when you explicitly ask to convert an existing Data Analytics report, dashboard, or inline chart export into a PDF artifact. It does not create new reports or charts from raw data.

The expected path is a static HTML export of the report, printed to PDF with a headless Chrome browser, followed by checks on the resulting file. The skill is designed to avoid rebuilding the report from memory or drawing a new PDF layout by hand.

  • Looks for a static HTML export or a local source of the report.
  • Prints it to PDF with Chrome CLI headless print-to-PDF, with fallbacks if Chrome is unavailable.
  • Verifies page count, selectable text, blank or clipped charts, and leftover app buttons or internal labels.
  • Stops with a blocker instead of guessing if the source is a sign-in page, blob stub or app shell.

Install the report-to-pdf skill

You can install the skill in one of two ways. Download the ZIP from the skill's page on this site and unzip it into your personal skills folder, ~/.claude/skills/, or into a project's .claude/skills/ folder if you want it available only for that project.

In the Claude apps you can instead upload the skill under Settings → Capabilities → Skills.

  • Personal install: unzip into ~/.claude/skills/.
  • Project install: unzip into the project's .claude/skills/ folder.
  • Claude apps: Settings → Capabilities → Skills, then upload the skill.

Check what the skill needs before you run it

The skill depends on tools installed on your machine and on a source file you already have. It does not log in to hosted apps, and the source says it uses no network access, but it does run scripts.

Required: Google Chrome, Chromium, or a comparable headless browser. Also pdfinfo, pdftotext, and pdftoppm from the Poppler utilities, or equivalent PDF tools. The source must be a static HTML export or local source of the report.

  • Google Chrome, Chromium, or a comparable headless browser installed locally.
  • pdfinfo, pdftotext and pdftoppm (Poppler utilities) or equivalent.
  • A static HTML export or local source of the report. Hosted dashboards that need sign-in are not supported.

Trigger the skill with a clear request

The skill is meant to run only when you explicitly ask for a PDF of existing material. Name the report or dashboard and say you want a PDF. Give the path to the static HTML export if you have one, so the agent does not have to search for it.

Vague requests such as 'make this prettier' do not match the skill's purpose.

  • "Convert the Q3 sales report export at /Users/me/exports/q3-sales.html into a PDF."
  • "Make a PDF of the churn dashboard export in my reports folder."
  • "Export this inline chart export as a PDF artifact and check that the charts are not blank."

What happens during a conversion

The agent first resolves the static source. It then runs headless Chrome with print-to-PDF and writes the output to the path you give. The Chrome command the skill documents looks like this, with the executable name depending on your platform.

After conversion the agent checks the PDF. It confirms page count and metadata, extracts text to confirm the PDF is selectable, and renders pages to images to look for blank charts, clipped content, and unwanted controls or internal labels. For short reports it checks every page. If something fails, the skill repairs the source or the renderer invocation and regenerates the PDF before handing it back.

  • Chrome is the primary method. Its executable is named differently by platform, for example google-chrome, chromium, or chromium-browser on Linux.
  • If Chrome is missing or cannot produce a valid PDF, a renderer-backed fallback is used. Manually redrawn charts or a report rebuilt from memory are not allowed.
chrome \ --headless=new \ --disable-gpu \ --no-first-run \ --no-default-browser-check \ --no-pdf-header-footer \ --print-to-pdf=/absolute/path/to/report.pdf \ /absolute/path/to/report.html

Safety notes: scripts and local processing

The skill runs scripts and command-line tools on your machine, and it sends the report HTML through a local browser. The source states it uses no network access, but a report with sensitive data should not be processed this way without review.

The skill also omits app-only controls and internal runtime metadata from the visible PDF. Keep audit details in support files, not in the report body.

  • Runs scripts: yes. Uses network: no, according to the skill listing.
  • Do not use it on sensitive reports unless you have reviewed the HTML source and the local tools.
  • Check the final PDF yourself before sharing, especially for leftover labels or missing caveats.

Tips for better results

Start from a static HTML export whenever you can. A hosted URL that only exposes an app shell will cause the skill to stop. Use absolute paths in your request so the output is predictable.

If the PDF is blank, clipped or missing charts, the skill is designed to repair and retry, but you can save time by fixing the export first. Keep the static export and the PDF together so you can rerun the conversion.

  • Export to static HTML first, then ask for the PDF.
  • Use absolute paths for the source and output.
  • Keep the HTML source, PDF, extracted text and page previews together as support files.
  • If a hosted report needs sign-in, export it to static HTML from the app and convert that file.

What people use it for

  • Sending a shareable PDF copy of a monthly analytics report to stakeholders who do not use the BI tool.
  • Producing consistent PDF output from dashboards that your team already exports to static HTML.
  • Building a repeatable HTML-to-PDF step in a report pipeline, with checks on each output file.

Frequently asked questions

Is the report-to-pdf skill free?

The skill is published under the MIT licence, as listed on its page. The tools it depends on, such as Chrome and Poppler, are separate software with their own licences that you install yourself.

What do I need to install before using report-to-pdf?

You need Google Chrome, Chromium, or a comparable headless browser, plus pdfinfo, pdftotext and pdftoppm or equivalent PDF tools. You also need a static HTML export or local source of the report.

How do I install the report-to-pdf skill?

Download the ZIP from the skill's page and unzip it into ~/.claude/skills/ or a project's .claude/skills/ folder. In the Claude apps, upload it under Settings → Capabilities → Skills.

Can report-to-pdf convert a hosted dashboard that requires login?

Not directly. The skill does not log in to hosted apps, and it will stop rather than guess the content if it only finds an app shell. Export the dashboard to static HTML first and convert that file.

Why does the agent stop with a blocker?

The skill stops when no static export exists, the source is a sign-in page or app shell, or no renderer can print the HTML faithfully. This is intended, so the PDF never contains content it could not verify.

How is this different from printing a page to PDF myself?

Manual printing does not run the page-level checks. This skill also verifies page count, selectable text, blank or clipped charts, and leftover app controls, and it removes internal labels from the visible output.

New agent skills, repos and AI tools — every week

The best new skills and open-source projects, the fastest-growing repos, and one free prompt. Five minutes to read. Unsubscribe anytime.

Our verdict

Use report-to-pdf if you already have a static HTML export of a Data Analytics report or dashboard and need a checked, repeatable PDF of it. Pick something else if you need to create reports from raw data, convert hosted dashboards that require sign-in, or process sensitive reports through local browsers and command-line tools without review.

Download the skill