pdf-utilities

Read, extract, edit, and manipulate PDF documents including table extraction, page manipulation, fillable forms, and comments.

16 stars

Best use case

pdf-utilities is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

Read, extract, edit, and manipulate PDF documents including table extraction, page manipulation, fillable forms, and comments.

Teams using pdf-utilities should expect a more consistent output, faster repeated execution, less prompt rewriting.

When to use this skill

  • You want a reusable workflow that can be run more than once with consistent structure.

When not to use this skill

  • You only need a quick one-off answer and do not need a reusable workflow.
  • You cannot install or maintain the underlying files, dependencies, or repository context.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/pdf-utilities/SKILL.md --create-dirs "https://raw.githubusercontent.com/diegosouzapw/awesome-omni-skill/main/skills/data-ai/pdf-utilities/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/pdf-utilities/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How pdf-utilities Compares

Feature / Agentpdf-utilitiesStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

Read, extract, edit, and manipulate PDF documents including table extraction, page manipulation, fillable forms, and comments.

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

SKILL.md Source

# PDF Utilities Skill

## Overview

This skill provides comprehensive PDF processing capabilities including reading PDFs with multiple library backends (tabula, camelot, PyPDF2), extracting tables to DataFrames, editing/extracting page ranges, handling fillable forms, and managing PDF comments. All operations are driven by YAML configuration.

## Key Components

### ReadPDF Class (read_pdf.py)
Multi-backend PDF reading with table extraction:
- `read_pdf(cfg, file_index)` - Route to appropriate backend based on config
- `from_pdf_tabula(cfg, file_index)` - Extract tables using tabula-py
- `from_pdf_camelot(cfg, file_index)` - Extract tables using camelot
- `from_pdf_PyPDF2(cfg, file_index)` - Read PDF pages using PyPDF2

### EditPDF Class (edit_pdf.py)
PDF page manipulation and extraction:
- `edit_pdf(cfg, file_index)` - Process PDF files based on configuration
- `from_pdf_PyPDF2(cfg, file_index)` - Extract page ranges to new PDF files
- `process_cfg_files(cfg)` - Process multiple PDF files from config

### Additional Modules
- `fillable_pdf.py` - Handle fillable PDF forms (fill fields, extract data)
- `pdf_comments.py` - Add, read, and manipulate PDF annotations
- `pdf_reports.py` - Generate PDF reports from data

## Usage Patterns

### Table Extraction Configuration
```yaml
pdf:
  io: pdf_read
  reader: tabula  # or camelot, PyPDF2
  files:
    - path: "input.pdf"
      pages: [1, 2, 3]
      area: [0, 0, 100, 100]  # Optional: specific region
```

### Page Extraction Configuration
```yaml
pdf:
  io: pdf_edit
  files:
    - path: "source.pdf"
      output: "extracted_pages.pdf"
      page_start: 1
      page_end: 5
```

### Common Workflows
1. **Table Extraction**: PDF → tabula/camelot → DataFrame → CSV/Excel
2. **Page Extraction**: Multi-page PDF → Extract range → New PDF
3. **Form Processing**: Fillable PDF → Fill fields → Save completed form
4. **Report Generation**: DataFrame → Generate styled PDF report

## Module Location
- Read: `src/assetutilities/modules/pdf_utilities/read_pdf.py`
- Edit: `src/assetutilities/modules/pdf_utilities/edit_pdf.py`
- Forms: `src/assetutilities/modules/pdf_utilities/fillable_pdf.py`
- Comments: `src/assetutilities/modules/pdf_utilities/pdf_comments.py`
- Reports: `src/assetutilities/modules/pdf_utilities/pdf_reports.py`

## Dependencies
- PyPDF2 (PDF reading and manipulation)
- tabula-py (table extraction with Java backend)
- camelot-py (table extraction)
- reportlab (PDF generation, optional)

Related Skills

caching-utilities

16
from diegosouzapw/awesome-omni-skill

Guide for using caching utilities in speedy_utils, including memory, disk, and hybrid caching strategies for sync and async functions.

bgo

10
from diegosouzapw/awesome-omni-skill

Automates the complete Blender build-go workflow, from building and packaging your extension/add-on to removing old versions, installing, enabling, and launching Blender for quick testing and iteration.

Coding & Development

interactive-portfolio

16
from diegosouzapw/awesome-omni-skill

Expert in building portfolios that actually land jobs and clients - not just showing work, but creating memorable experiences. Covers developer portfolios, designer portfolios, creative portfolios,...

Inspiration

16
from diegosouzapw/awesome-omni-skill

Find design and AI art inspiration from curated galleries, screenshot libraries, and creative showcases.

influxdb-cloud-automation

16
from diegosouzapw/awesome-omni-skill

Automate Influxdb Cloud tasks via Rube MCP (Composio). Always search tools first for current schemas.

implement_plan

16
from diegosouzapw/awesome-omni-skill

Implement technical plans from thoughts/shared/plans with verification

image-to-3d-pipeline

16
from diegosouzapw/awesome-omni-skill

Transformez une image 2D en modèle 3D animé prêt pour le web ou le jeu en moins de 30 minutes, en utilisant le workflow Dilum Sanjaya (Hunyuan3D + Mixamo). Use when: **Créer un personnage 3D pour un site web** - Mascotte, avatar, illustration interactive; **Prototyper un asset de jeu** - Character design, props, environnements; **Produire du contenu marketing 3D** - Produits rotatifs, personnages animés; **Convertir des illustrations existantes** - Logo, mascotte, character design → 3D; **Tes...

hyperliquid

16
from diegosouzapw/awesome-omni-skill

Trade and monitor Hyperliquid perpetual futures. Check balances, view positions with P&L, place/cancel orders, execute market trades. Use when the user asks about Hyperliquid trading, portfolio status, crypto positions, or wants to execute trades on Hyperliquid.

hig-technologies

16
from diegosouzapw/awesome-omni-skill

Apple HIG guidance for Apple technology integrations: Siri, Apple Pay, HealthKit, HomeKit, ARKit, machine learning, generative AI, iCloud, Sign in with Apple, SharePlay, CarPlay, Game Center,...

hig-project-context

16
from diegosouzapw/awesome-omni-skill

Create or update a shared Apple design context document that other HIG skills use to tailor guidance.

hig-platforms

16
from diegosouzapw/awesome-omni-skill

Apple Human Interface Guidelines for platform-specific design.

hig-patterns

16
from diegosouzapw/awesome-omni-skill

Apple Human Interface Guidelines interaction and UX patterns.