| name | pdf |
| description | Comprehensive PDF manipulation toolkit. For batch/bulk extraction (1K+ PDFs), use pdftotext (poppler) via subprocess — fastest and most reliable at scale. For single-document understanding, OpenAI Codex PDF-to-Markdown gives best results. Also supports text/table extraction, PDF creation, merging/splitting, and forms. |
| type | reference |
| version | 1.2.2 |
| last_updated | "2026-01-04T00:00:00.000Z" |
| category | data |
| related_skills | ["pdf-text-extractor","document-rag-pipeline","knowledge-base-builder"] |
| capabilities | [] |
| requires | [] |
| see_also | ["pdf-pdftotext-poppler"] |
| tags | [] |
| freedom | medium |
Pdf
Overview
This skill enables comprehensive PDF operations through Python libraries and command-line tools. Use it for reading, creating, modifying, and analyzing PDF documents.
Quick Start
from pypdf import PdfReader
reader = PdfReader("document.pdf")
for page in reader.pages:
text = page.extract_text()
print(text)
Tool Selection (WRK-1277 + WRK-1302 + WRK-1303 Learnings)
Scenario → Tool Mapping
| Scenario | Tool | Why |
|---|
| Batch extraction (1K+ PDFs) | pdftotext (poppler) via subprocess | Proven at 297K scale; reliable timeout via SIGTERM; subprocess isolation |
| Single-doc understanding | OpenAI Codex PDF→Markdown | Best quality; too expensive for bulk |
| Single-doc text extraction | PyMuPDF (fitz) | Fast, good API, in-process |
| Readability classification | pypdfium2 | Replaces pdfplumber for page sampling; no D-state hangs; Apache-2.0 license |
| Table extraction | pdfplumber (single doc only) | Best table detection; DO NOT use in multiprocessing pools |
| Structured markdown (tables+equations) | Docling (targeted use only) | MIT license; 1731 table rows from 6 docs; ~310s/doc on CPU |
| LLM/RAG markdown | pymupdf4llm (monitor only) | 0.12s/doc, good markdown; AGPL license blocks adoption |
Quality & Completeness Index (measured on dev-primary)
Scores: text completeness (% of content captured vs best-in-class), structure
preservation, and batch viability. Based on WRK-1302 (243 PDFs) and WRK-1303 (6 PDFs).
| Tool | Text Completeness | Structure | Tables | Equations | Speed |
|---|