Install
openclaw skills install @space-cadet/pdf-extractExtract text, tables, and structured content from PDF files using pdfplumber or PyMuPDF. More capable than summarize.sh for PDFs — supports page selection, structured layout extraction, and fine-grained control. Use when the user needs to extract, search, or analyze content from PDF files.
openclaw skills install @space-cadet/pdf-extractFast, structured PDF text extraction. Superior to summarize.sh for PDFs because it:
--pages 1,3-5)Use this skill immediately when the user asks any of:
cd ~/.openclaw/workspace/pdf-tools
source bin/activate 2>/dev/null || true
# Extract all text (pdfplumber - best for tables/structure)
./pdf_extract.py /path/to/file.pdf
# Extract specific pages
./pdf_extract.py /path/to/file.pdf --pages 1,3-5
# Fast extraction (PyMuPDF - best for speed/simple text)
./pdf_extract.py /path/to/file.pdf --method pymupdf
# Combine: fast extract of specific pages
./pdf_extract.py /path/to/file.pdf --method pymupdf --pages 1-10
| Method | Best for | Speed | Table support |
|---|---|---|---|
pdfplumber (default) | Structured docs, tables, forms | Medium | Excellent |
pymupdf | Raw text, speed, large files | Fast | Basic |
--pages 1 — page 1 only--pages 1,3,5 — specific pages--pages 1-5 — range (inclusive)--pages 1,3-5,10 — mixedExtract first, then analyze:
# Extract to file for further processing
./pdf_extract.py paper.pdf --pages 1-3 > /tmp/extracted.txt
# Then read the file and ask questions about it
Or pipe directly for quick checks:
./pdf_extract.py paper.pdf --pages 1 | head -50
source ~/.openclaw/workspace/pdf-tools/bin/activateLocated in ~/.openclaw/workspace/pdf-tools/:
pdfplumber — Python PDF parsingpymupdf (fitz) — Fast PDF renderingpdf_extract.py | summarize | |
|---|---|---|
| PDF-specific | Yes — purpose-built | Generic (URL/file) |
| Page selection | ✅ Native --pages | ❌ No |
| Table extraction | ✅ Excellent (pdfplumber) | ❌ Plain text only |
| Structured output | ✅ Page-delimited | ❌ Wall of text |
| LLM summary | ❌ Extraction only | ✅ Built-in |
| Best use case | Precise extraction → then analyze | Quick one-liner summary |
Workflow: Use pdf_extract.py to extract precisely what you need, then use the model directly for analysis/summarization.