ApiliumHub
Back to browse

pdf-toolkit

ApiliumApiliumv1.0.31400
officialplatinum (7/8)Clean scan

PDF toolkit — merge, split, compress, encrypt, extract text from PDFs

Install

mayros skill install pdf-toolkit
mayros skill install [email protected]

README


name: pdf-toolkit description: PDF toolkit — merge, split, compress, encrypt, extract text from PDFs type: semantic user-invocable: true semantic: skillVersion: 1 permissions: graph: [read, write] memory: [recall, remember] assertions: - predicate: "pdf:processed" requireProof: false queries: - predicate: "pdf:processed" scope: agent - predicate: "pdf:context" scope: agent allowedTools: ["*"] metadata: mayros: requires: bins: [qpdf, gs, pdftotext]

pdf-toolkit

PDF manipulation toolkit using qpdf, ghostscript, and poppler-utils. Merge, split, compress, encrypt, decrypt, rotate, extract text, and convert PDFs.

Installation

qpdf (primary tool -- fast, reliable)

# Merge PDFs
qpdf --empty --pages file1.pdf file2.pdf file3.pdf -- merged.pdf

# Split: extract pages 1-5
qpdf input.pdf --pages . 1-5 -- output.pdf

# Split: extract specific pages
qpdf input.pdf --pages . 1,3,5-7 -- output.pdf

# Remove pages (e.g., remove page 3)
qpdf input.pdf --pages . 1-2,4-z -- output.pdf

# Rotate pages (90, 180, 270)
qpdf input.pdf --rotate=90:1-3 -- output.pdf

# Encrypt with password
qpdf --encrypt user-pass owner-pass 256 -- input.pdf encrypted.pdf

# Decrypt
qpdf --decrypt --password=pass input.pdf decrypted.pdf

# Linearize (optimize for web)
qpdf --linearize input.pdf optimized.pdf

# Get PDF info
qpdf --show-npages input.pdf
qpdf --check input.pdf

# Overlay/underlay (watermark)
qpdf input.pdf --overlay watermark.pdf -- output.pdf

ghostscript (compression, rasterization)

# Compress PDF (reduce file size)
gs -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 -dPDFSETTINGS=/ebook \
   -dNOPAUSE -dBATCH -sOutputFile=compressed.pdf input.pdf

# PDFSETTINGS options:
# /screen   -- lowest quality, smallest size (72 dpi)
# /ebook    -- medium quality (150 dpi) -- recommended default
# /printer  -- high quality (300 dpi)
# /prepress -- highest quality (300 dpi, color preserved)

# Convert PDF to images
gs -sDEVICE=png16m -r300 -dNOPAUSE -dBATCH \
   -sOutputFile=page_%03d.png input.pdf

poppler-utils (text extraction)

# Extract text from PDF
pdftotext input.pdf output.txt

# Extract text preserving layout
pdftotext -layout input.pdf output.txt

# Extract specific pages
pdftotext -f 1 -l 5 input.pdf output.txt

# Get PDF info (pages, size, metadata)
pdfinfo input.pdf

# Extract images from PDF
pdfimages -all input.pdf image_prefix

Safety

  • Confirm before encrypting (losing the password means losing access to the file)
  • Show file sizes before and after compression so the user can verify the result
  • Warn before overwriting existing files
  • Always show the page count before split/merge operations

Semantic Integration

  • Use skill_assert with pdf:processed to record each completed operation
  • Use skill_memory_context to recall previous PDF processing history
  • Query pdf:context for metadata about processed PDFs (page counts, sizes)

Versions

v1.0.3Feb 27, 2026
v1.0.2Feb 27, 2026
v1.0.1Feb 27, 2026
v1.0.0Feb 27, 2026

Comments

Sign in to leave a comment.

Loading comments...