All skills
openai avatar

/pdf

@33a75a7 official
by openaiopenai/skills28k stars
1,891

Use when tasks involve reading, creating, or reviewing PDF files where rendering and layout matter; prefer visual checks by rendering pages (Poppler) and use Python tools such as `reportlab`, `pdfplumber`, and `pypdf` for generation and extraction.

Use this Skill: https://skilld.dev/gh/openai/skills/pdf

This session only. Nothing lands on disk.

SKILL.md

≈63 tokens always: the name and description. ≈558 when used: this file. ≈55 more on demand in 1 file.

PDF Skill

When to use

  • Read or review PDF content where layout and visuals matter.
  • Create PDFs programmatically with reliable formatting.
  • Validate final rendering before delivery.

Workflow

  1. Prefer visual review: render PDF pages to PNGs and inspect them.
    • Use pdftoppm if available.
    • If unavailable, install Poppler or ask the user to review the output locally.
  2. Use reportlab to generate PDFs when creating new documents.
  3. Use pdfplumber (or pypdf) for text extraction and quick checks; do not rely on it for layout fidelity.
  4. After each meaningful update, re-render pages and verify alignment, spacing, and legibility.

Temp and output conventions

  • Use tmp/pdfs/ for intermediate files; delete when done.
  • Write final artifacts under output/pdf/ when working in this repo.
  • Keep filenames stable and descriptive.

Dependencies (install if missing)

Prefer uv for dependency management.

Python packages:

uv pip install reportlab pdfplumber pypdf

If uv is unavailable:

python3 -m pip install reportlab pdfplumber pypdf

System tools (for rendering):

# macOS (Homebrew)
brew install poppler

# Ubuntu/Debian
sudo apt-get install -y poppler-utils

If installation isn't possible in this environment, tell the user which dependency is missing and how to install it locally.

Environment

No required environment variables.

Rendering command

pdftoppm -png $INPUT_PDF $OUTPUT_PREFIX

Quality expectations

  • Maintain polished visual design: consistent typography, spacing, margins, and section hierarchy.
  • Avoid rendering issues: clipped text, overlapping elements, broken tables, black squares, or unreadable glyphs.
  • Charts, tables, and images must be sharp, aligned, and clearly labeled.
  • Use ASCII hyphens only. Avoid U+2011 (non-breaking hyphen) and other Unicode dashes.
  • Citations and references must be human-readable; never leave tool tokens or placeholder strings.

Final checks

  • Do not deliver until the latest PNG inspection shows zero visual or formatting defects.
  • Confirm headers/footers, page numbering, and section transitions look polished.
  • Keep intermediate files organized or remove them after final approval.

Source: SKILL.md on GitHub

2 warnings16d5 checks · Risk SAFE
  • Gen Agent Trust Hub16d

    This skill provides a standard blueprint for managing PDF creation, extraction, and rendering tasks using common ecosystem tools. It contains normal instructions for environment setup and document quality checking, posing no special risks.

  • Socket16d

    No alerts

  • Snyk16d

    Risk: MEDIUM · 1 issue

  • Runlayer7mo

    3/3 files flagged

  • ZeroLeaks5mo

    Score: 93/100 · 2 sections analyzed

Signed by skilld at 33a75a7. This ties the file your Agent reads to that commit on GitHub. It does not review the instructions.

Last checked against GitHub 2 months ago.

Activeupdated 8 months ago
  • Python
  • pdf
  • reportlab
  • pdfplumber
  • pypdf
  • poppler
  • document-generation
  • extraction

README badge

README badge for openai/skills/pdf

Renders PDF pages to images for visual inspection and generates or extracts PDFs using reportlab, pdfplumber, and pypdf. Use this skill when layout, typography, spacing, and visual fidelity matter — such as creating branded reports, validating multi-page documents before delivery, or reading PDFs where text extraction alone is insufficient.

Generated from the current SKILL.md.

What Python libraries does this skill use?
The skill uses reportlab for PDF generation, pdfplumber and pypdf for text extraction, and pdftoppm (from Poppler) for rendering pages to PNG for visual inspection.
How does this skill verify PDF quality?
It renders PDF pages to PNG images using Poppler's pdftoppm and visually inspects them for layout, spacing, typography, alignment, and rendering defects before delivery.
What if Poppler is not available in my environment?
The skill will ask you to install Poppler locally (via Homebrew on macOS or apt-get on Ubuntu/Debian) or review the PDF output manually.
Which tool should I use for text extraction versus PDF generation?
Use reportlab for creating new PDFs, and pdfplumber or pypdf for extracting text or quick validation—but not for verifying layout fidelity, which requires visual rendering.

Generated from the current SKILL.md. These answers refresh after source changes.