Skip to content
Get AI Business OS

processing-pdfs

AI Business OS

The processing-pdfs skill handles PDF work in your workspace. It extracts text and tables, merges and splits files, creates new PDFs, fills forms, adds watermarks or annotations, and reads scanned pages with OCR. It also processes large files and whole folders of PDFs in a way that keeps Claude’s context window from filling up.

Claude loads the skill when you ask it to process a PDF, extract data from one, merge or split pages, or fill in a PDF form. A request such as “Review the PDFs in this folder for competitive analysis” starts the bulk workflow.

Before it reads any PDF, Claude checks the file’s size and page count and places it on the five-level PDF Processing Scale. This step is mandatory, because a large file read in one pass fails and wastes a turn.

Scale Size Pages Approach
1 Trivial Under 1MB Under 10 Read directly
2 Small 1 to 5MB 10 to 50 Read directly and write a summary to disk
3 Medium 5 to 20MB 50 to 200 Read 20 pages at a time, writing findings after each chunk
4 Large 20 to 50MB 200 to 500 Split the file with qpdf first, then read in chunks
5 Massive Over 50MB Over 500 Split with qpdf and hand the chunks to parallel agents, each writing to disk

When size and page count point to different levels, Claude uses the higher one. A 3MB file with 180 pages is Scale 3. At Scale 3 and above, Claude reads the first five pages to find the structure, then reads only the sections it needs. The scale itself is a rule. See PDF Processing Scale.

Task Tool
Extract text pdfplumber
Extract tables pdfplumber
Merge or split pypdf
Create a PDF reportlab
Read scanned pages pytesseract, after converting pages to images
Split large files the qpdf command-line tool

For three or more PDFs, the skill uses a method it calls Extract-Summarise-Release.

  1. Claude asks what you want from the documents, such as competitive analysis, due diligence or proposal preparation.
  2. Claude creates a summary file, in the same folder as the PDFs unless you name another location.
  3. Claude reads one PDF, writes what matters to the summary file, and moves on to the next.
  4. Claude adds a section of insights that run across all the documents.
  5. Claude gives you the finished summary.

Claude writes the findings to disk after each document, so the earlier PDFs can leave Claude’s context and the findings stay safe. Claude also reports any PDF that is unreadable, image-only or damaged.

The skill first checks whether the PDF has fillable form fields.

  • Fillable form. Claude extracts the list of fields and fills them with your data.
  • Form without fields. Claude converts each page to an image, works out where each answer should go, checks those positions with validation images, and adds the answers as text annotations.

The scripts for both routes ship in .claude/skills/processing-pdfs/scripts/. The completed form is saved next to the original.

Output Format
Extracted text Shown in the conversation, or saved as .txt or .md
Extracted tables Markdown tables, or saved as .csv or .xlsx
Merged or split PDFs Saved next to the source, or where you specify
Bulk summaries A markdown summary file in the folder of PDFs
Filled forms A completed PDF next to the original

The workspace .gitignore excludes PDFs and CSV files, so they are not committed to git. Keep source PDFs on your cloud storage and give Claude their path.

Problem Cause What to do
The PDF returns no text It is a scanned image, not text Ask Claude to convert the pages to images and run OCR
Claude runs out of context with several PDFs Large files read one after another Ask for the Extract-Summarise-Release workflow
“File too large” The PDF is over the single-read limit Give Claude the file path so it can check the scale and read in chunks
Tables come out garbled Merged cells or a complex layout Ask Claude to adjust the table settings, or extract the text and rebuild the table

The skill file and its three reference files are customisable engine files, so your edits survive /update through a three-way merge. The reference files are workflows.md for code examples and the large-file workflows, reference.md for further libraries, and forms.md for form filling.