Codex skills for PDF
PDF work splits into reading, generating, filling, converting, redacting and repairing files, and each skill here owns one of those jobs. Codex classifies a PDF before touching it, picks pdfplumber, pypdf, qpdf, OCRmyPDF, WeasyPrint or ReportLab to suit, and checks the result by re-extracting text, counting pages and inspecting fonts instead of trusting the first output.
Start with these 3
- PDF Processing Get clean text and tables out of any PDF Codex classifies the PDF before touching it (born-digital, scanned, form, encrypted), then picks pdfplumber for text and tables or pypdf and qpdf for lossless page surgery. Table extraction is tuned against a rendered debug overlay instead of guessed, and results are checked against totals printed in the document.
- PDF Generation Data in, print-ready PDF out, every time Codex picks one PDF engine for the job instead of mixing three, builds documents from a typed data model, and handles the parts that usually break: embedded fonts for every script, long tables that break with repeated headers, page X of Y footers, and base_url asset paths. Output is checked with pdffonts, pdftotext and rendered previews using worst-case fixtures.
- PDF Accessibility Tagged PDFs that pass PDF/UA and real readers Codex makes PDFs accessible at the source instead of patching exports: it probes tagging, language, title, fonts and figure alt text with pikepdf, picks the right export settings for Word, LibreOffice, Typst, Chromium or WeasyPrint, validates against the PDF/UA profile in veraPDF, and records the manual checks validators cannot do, such as reading order and alt text quality.
13 more PDF skills
-
PDF Batch Workflows
OCR and stamp thousands of PDFs, resumably -
PDF Forms
Fill any AcroForm so every viewer shows it -
PDF Merge and Split
Right pages, right order, right size -
HTML to PDF
Print CSS and Chromium, no surprise blank pages -
Invoice Generation
Invoices whose totals add up to the cent -
Document AI and OCR
Route each page, keep confidences, review the doubtful -
OCR Documents
Searchable scans with measured, not assumed, accuracy -
Form Data Extraction
Invoice fields as validated JSON, not guesses -
Document Redaction
Remove the text, not just paint over it -
RAG Chunking
Chunks that follow structure and stand alone -
Document Conversion
Format conversions that never drop content silently -
Typst Documents
Typst templates that compile fast and warning-free -
Resume Builder
ATS-proof resumes from one honest source file
General skills with PDF guidance
Not built around PDF, but they include steps or tools for it. Not part of the install-all command.
-
Freelance Operations
Quotes, contracts and invoices that get paid -
R Tidyverse
R analysis that reruns from a clean session -
Structured Extraction
JSON from messy text, with evidence and per-field scores -
Gemini API
Gemini integrations on the current SDK and API -
SSRF Prevention
Check the IP you connect to, not the URL -
Malware Triage
A safe verdict without ever running it -
Mail Merge
Spreadsheet in, proofed letters out, nothing skipped -
Google Docs Automation
Template copies in, finished Docs and Slides out -
Report Generation
Charts, numbers and prose from one source of truth -
Stripe Billing
Subscriptions that never drift from Stripe -
Google Drive API
Upload, export and sync Drive files by ID -
IMAP Email Automation
Process every email exactly once, delete nothing
Every PDF skill in one command
Installs these 16 into ~/.agents/skills/. Add --project after -- to install into the current repository instead.
The installer is a 104-line POSIX shell script. It fetches the skills you name from codexskills.dev and unpacks each into its own folder in your skills directory. No sudo, no telemetry, and every skill page shows the full SKILL.md first. Read install.sh
curl -fsSL codexskills.dev/install.sh | sh -s -- pdf-processing pdf-generation pdf-accessibility pdf-batch-workflows pdf-forms pdf-merge-split html-to-pdf invoice-generation document-ai-ocr ocr-documents form-data-extraction document-redaction rag-chunking document-conversion typst-documents resume-builder PDF FAQ
Is there a Codex skill for extracting tables from PDFs?
PDF Processing classifies the file first (born-digital, scanned, form or encrypted), then pulls tables with pdfplumber extract_tables, tuned against a rendered debug overlay instead of guessed settings. Results are checked against totals printed in the document. Scanned files go to OCR Documents, and invoices or forms with embedded XML or AcroForm values go to Form Data Extraction.
How do I redact a PDF properly with Codex?
Document Redaction removes content from every layer of the file instead of drawing black boxes, applying PyMuPDF redaction annotations, scrubbing metadata and rewriting the file in full. It then re-extracts the output and runs a bundled Luhn and IBAN-aware PII scanner, scripts/scan_pii.py, before handing the file back with a redaction log. The skill is explicit that a black rectangle drawn on top is not a redaction.
Can Codex turn scanned PDFs into searchable files?
OCR Documents first checks whether a PDF needs OCR at all, then runs OCRmyPDF with the right language packs, --rotate-pages, --deskew and --output-type pdfa, using --skip-text for partly digital files and --redo-ocr to replace a bad text layer. For photos it preprocesses with OpenCV, flags low-confidence words with pytesseract, and measures character error rate on a ground-truth sample before scaling up. PDF Batch Workflows runs the same work across an archive with a resumable manifest.
How do I install all 16 PDF skills at once?
Pass every name to the installer in one command: curl -fsSL https://codexskills.dev/install.sh | sh -s -- pdf-processing pdf-generation pdf-accessibility pdf-batch-workflows pdf-forms pdf-merge-split html-to-pdf invoice-generation document-ai-ocr ocr-documents form-data-extraction document-redaction rag-chunking document-conversion typst-documents resume-builder. Add --project right after -- to put them in the current repository's .agents/skills/ so your team gets them too.
Which PDF skill should I try first?
PDF Processing is the closest fit for most PDF work. Mention it with $pdf-processing in a prompt to load it on purpose; after that, Codex picks it up on its own whenever a task matches.