This is your go-to when Claude needs to do anything with PDFs programmatically. It covers the Python essentials like pypdf for merging and splitting, pdfplumber for pulling out tables with their structure intact, and reportlab for generating new PDFs from scratch. The form filling capability is handled separately in a dedicated guide, which is smart since PDF forms are their own special nightmare. Command-line tools like qpdf are included for when you just need something quick. The table extraction examples that output to pandas DataFrames are especially handy since that's usually what you want anyway. It won't help with scanned PDFs unless you add OCR yourself, but for text-based documents it's comprehensive.

GitHub stars
6K
last updated
Jun 11, 2026

Install

$ npx -y skills add thinkinaixyz/deepchat --skill pdf --agent claude-code

Installs into .claude/skills of the current project.

Files

PDF Processing Guide

Overview

This guide covers essential PDF processing operations using Python libraries and command-line tools. For advanced features, JavaScript libraries, and detailed examples, see reference.md. If you need to fill out a PDF form, read forms.md and follow its instructions.

Quick Start

from pypdf import PdfReader, PdfWriter

# Read a PDF
reader = PdfReader("document.pdf")
print(f"Pages: {len(reader.pages)}")

# Extract text
text = ""
for page in reader.pages:
    text += page.extract_text()

Python Libraries

pypdf - Basic Operations

Merge PDFs
from pypdf import PdfWriter, PdfReader

writer = PdfWriter()
for pdf_file in ["doc1.pdf", "doc2.pdf", "doc3.pdf"]:
    reader = PdfReader(pdf_file)
    for page in reader.pages:
        writer.add_page(page)

with open("merged.pdf", "wb") as output:
    writer.write(output)
Split PDF
reader = PdfReader("input.pdf")
for i, page in enumerate(reader.pages):
    writer = PdfWriter()
    writer.add_page(page)
    with open(f"page_{i+1}.pdf", "wb") as output:
        writer.write(output)

Sponsors

Details

Repository
github.com/thinkinaixyz/deepchat
Category
Office & Documents
License
Apache-2.0
First seen
Jun 11, 2026

More from thinkinaixyz/deepchat

All 19
1mattpocock avatarobsidian-vaultmattpocock/skillsSearch, create, and manage notes in the Obsidian vault with wikilinks and index notes. Use when user wants to find, create, or organize notes in Obsidian.195.5Kskills.sh installs
2intellectronica avatarnotion-apiintellectronica/agent-skillsThis skill provides comprehensive instructions for interacting with the Notion API via REST calls. This skill should be used whenever the user asks to interact 102.5Kskills.sh installs
3kepano avatarobsidian-markdownkepano/obsidian-skillsCreate and edit Obsidian Flavored Markdown with wikilinks, embeds, callouts, properties, and other Obsidian-specific syntax. Use when working with .md files in 95.7Kskills.sh installs
4kepano avatarobsidian-clikepano/obsidian-skillsInteract with Obsidian vaults using the Obsidian CLI to read, create, search, and manage notes, tasks, properties, and more. Also supports plugin and theme deve84.1Kskills.sh installs
5obsidianmd avatarobsidian-basesobsidianmd/obsidian-skillsCreate and edit Obsidian Bases (.base files) with views, filters, formulas, and summaries. Use when working with .base files, creating database-like views of no82.7Kskills.sh installs
6kepano avatarobsidian-baseskepano/obsidian-skillsCreate and edit Obsidian Bases (.base files) with views, filters, formulas, and summaries. Use when working with .base files, creating database-like views of no82.3Kskills.sh installs