This is your Swiss Army knife for PDF work. You get text extraction with pdfplumber (including tables), basic operations like merging and splitting with pypdf, and PDF creation from scratch using reportlab. The guide covers both Python libraries and command-line tools like qpdf, plus it includes OCR for scanned documents and form filling instructions in a separate doc. The table extraction to pandas DataFrames is especially handy. It's comprehensive enough that you won't need to hunt down other references for most PDF tasks, whether you're processing invoices at scale or just need to split a document.

skills.sh installs
924
GitHub stars
849
last updated
Aug 21, 2026

Install

$ npx -y skills add tfriedel/claude-office-skills --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/tfriedel/claude-office-skills
Category
Office & Documents
First seen
Jun 3, 2026

More from tfriedel/claude-office-skills

All 4
1vm0-ai avatargoogle-sheetsvm0-ai/vm0-skillsGoogle Sheets API for spreadsheets. Use when user mentions "Google Sheets", "sheets.google.com", shares a spreadsheet link, "update sheet", or asks about Excel/849skills.sh installs
2practicalswan avatarword-documentpracticalswan/agent-skillsWord (.docx) manipulation via MCP server. Use for reading, creating, editing, formatting Word documents including tables, footnotes, comments, images, headers, 795skills.sh installs
3daymade avatarslides-creatordaymade/claude-code-skillsNarrative-first slide deck creation. Guides users through structured narrative design (ABCDEFG model), then delegates visual generation to baoyu-slide-deck. Tri686skills.sh installs
4skyworkai avatarSkywork-pptskyworkai/skywork-skillsUse this skill when the user wants to work with PowerPoint presentations. Triggers include: - Generating a new PPT from a topic: 'generate a PPT' / '帮我做个PPT' / 665skills.sh installs
5openai avatarslidesopenai/skillsCreate and edit presentation slide decks (`.pptx`) with PptxGenJS, bundled layout helpers, and render/validation utilities. Use when tasks involve building a ne589skills.sh installs
6marswaveai avatarslidesmarswaveai/skillsCreate slide decks from topics, URLs, or text. Triggers on: "幻灯片", "PPT", "slides", "slide deck", "做幻灯片", "create slides", "presentation".579skills.sh installs