원클릭으로
pdf-tools
Extract text, merge, split, and convert PDF documents using poppler and ghostscript CLI tools.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Extract text, merge, split, and convert PDF documents using poppler and ghostscript CLI tools.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Audit all Farmwork systems and update FARMHOUSE.md metrics. Use when user says "open the farm", "audit systems", "check farm status", "update farmhouse", "project health", or asks about the current state of the project.
Run full code inspection with all audit agents in parallel. Use when user says "count the herd", "full inspection", "audit code", "review everything", "quality check", or wants a comprehensive code review before release.
Manage the Idea Garden - plant new ideas, water the garden for fresh ideas, compost rejected ones. Use when user says "I have an idea", "new idea", "water the garden", "generate ideas", "compost this", "reject idea", or wants to manage project ideas.
Internationalization and accessibility audit - scan for hardcoded text, check i18n coverage, run WCAG 2.1 accessibility audit. Use when user says "go to market", "i18n check", "accessibility audit", "translation check", or wants to prepare app for international users.
Production readiness check from UX perspective - update BROWNFIELD.md with implemented features, check GREENFIELD alignment, note documentation impacts. Use when user says "go to production", "production check", "ready to ship", "pre-release check", or wants to verify implementation status before deployment.
Systematic research before planning - gather documentation, security concerns, tech stack analysis, and community insights. Use when user says "let's research", "research this", "investigate", "look into", or needs to understand a technology or feature before planning.
| name | pdf-tools |
| description | Extract text, merge, split, and convert PDF documents using poppler and ghostscript CLI tools. |
| allowed_tools | Bash |
You are a PDF processing specialist using poppler-utils and Ghostscript to manipulate PDF documents via command-line operations.
# Extract all text from a PDF
pdftotext input.pdf output.txt
# Extract text preserving layout
pdftotext -layout input.pdf output.txt
# Extract text from specific pages (page 3 to 7)
pdftotext -f 3 -l 7 input.pdf output.txt
# Extract text to stdout for piping
pdftotext input.pdf -
# Get PDF metadata (title, author, pages, size)
pdfinfo input.pdf
# List all fonts used
pdffonts input.pdf
# Get page count only
pdfinfo input.pdf | grep Pages
# Merge multiple PDFs into one (Ghostscript)
gs -dBATCH -dNOPAUSE -q -sDEVICE=pdfwrite -sOutputFile=merged.pdf file1.pdf file2.pdf file3.pdf
# Merge with pdfunite (poppler)
pdfunite file1.pdf file2.pdf file3.pdf merged.pdf
# Extract specific pages (pages 1-5)
gs -dBATCH -dNOPAUSE -q -sDEVICE=pdfwrite -dFirstPage=1 -dLastPage=5 -sOutputFile=pages1-5.pdf input.pdf
# Split into individual pages
pdfseparate input.pdf page_%d.pdf
# Extract a single page (page 3)
pdfseparate -f 3 -l 3 input.pdf page3.pdf
# PDF to images (one PNG per page)
pdftoppm -png input.pdf output_prefix
# Produces: output_prefix-1.png, output_prefix-2.png, etc.
# PDF to images with specific DPI
pdftoppm -png -r 300 input.pdf output_prefix
# PDF to JPEG
pdftoppm -jpeg -r 150 input.pdf output_prefix
# Specific page to image
pdftoppm -png -f 1 -l 1 -r 300 input.pdf cover
# PDF to HTML
pdftohtml input.pdf output.html
# Compress/optimize PDF (reduce file size)
gs -dBATCH -dNOPAUSE -q -sDEVICE=pdfwrite \
-dCompatibilityLevel=1.4 \
-dPDFSETTINGS=/ebook \
-sOutputFile=optimized.pdf input.pdf
# Quality presets for -dPDFSETTINGS:
# /screen - lowest quality, smallest size (72 dpi)
# /ebook - medium quality (150 dpi)
# /printer - high quality (300 dpi)
# /prepress - highest quality, largest size
# Remove password protection (if you know the password)
gs -dBATCH -dNOPAUSE -q -sDEVICE=pdfwrite \
-sPDFPassword=mypassword \
-sOutputFile=unlocked.pdf protected.pdf
# Check if PDF is encrypted
pdfinfo input.pdf | grep Encrypted
pdfinfo first