PDF

Use this skill for anything PDF — creating professional PDFs (resumes, one-pagers, white papers, letters, portfolios, equity reports, changelogs, custom documents) with the Kami design system; reading or extracting text/tables; merging, splitting, rotating, watermarking, encrypting; filling PDF forms; extracting embedded images; OCR on scanned PDFs. Trigger on any `.pdf` request or phrases like "make me a PDF", "generate a report", "build me a resume", "one-pager", "white paper", "export to PDF", "professional document".

Published by rebyteai

Featured Documents

Cloud-native skill

Runs in the cloud

No local installation

Dependencies pre-installed

Ready to run instantly

Secure VM environment

Isolated per task

Works on any device

Desktop, tablet, or phone

Documentation

PDF Skill

One skill for every PDF task. Read only the sub-reference that matches what the user wants.

Task → Reference Router

The user wants to… Read
Create a PDF — resume, one-pager, long doc, letter, portfolio, equity report, changelog, or anything custom references/create.md
Understand the visual design system (tokens, typography, colors, layouts) references/design.md
Understand how WeasyPrint builds PDFs + troubleshoot render issues references/production.md
Write good copy inside a document (tone, rhythm, bilingual conventions) references/writing.md
Embed a diagram (architecture, flowchart, quadrant, timeline, chart…) inside a document references/diagrams.md
Memorize the non-negotiable rules at a glance references/cheatsheet.md
Read or extract text, tables, metadata, or coordinates from a PDF references/extract.md
Merge, split, rotate, crop, watermark, or encrypt existing PDFs references/manipulate.md
OCR a scanned PDF or extract embedded images references/ocr.md
Fill a PDF form (fillable fields or non-fillable flat forms) references/forms.md
Do any of the above in JavaScript (pdf-lib, pdfjs-dist) references/javascript.md

Default for Creation

When the user asks for any new PDF document, default to references/create.md. It walks through:

  1. Template path — match the user's ask to one of the pre-built templates in assets/templates/ (resume, one-pager, long-doc, letter, portfolio, equity-report, changelog) and fill it with their data
  2. Custom path — if no template fits, write a custom HTML in the Kami design system using references/design.md tokens and references/cheatsheet.md rules, then render via the same pipeline

Both paths render through scripts/build.py → WeasyPrint. The visual language is consistent across templated and custom documents.

Directory Layout

pdf/
├── SKILL.md                         # this index
├── KAMI_LICENSE.txt                 # MIT attribution for the Kami design system
├── references/
│   ├── create.md                    # ⭐ entry point for all PDF creation
│   ├── design.md                    # design tokens + layout rules
│   ├── production.md                # WeasyPrint build + troubleshooting
│   ├── writing.md                   # tone + bilingual conventions
│   ├── diagrams.md                  # diagram primitives
│   ├── cheatsheet.md                # one-page rules summary
│   ├── tokens.json                  # machine-readable design tokens
│   ├── stabilizer_profiles.json     # per-document-type QA profiles
│   ├── extract.md                   # read PDFs
│   ├── manipulate.md                # merge/split/rotate/watermark/encrypt
│   ├── ocr.md                       # scanned PDFs + image extraction
│   ├── forms.md                     # fill PDF forms
│   └── javascript.md                # pdf-lib + pdfjs-dist
├── assets/
│   ├── styles.css                   # shared stylesheet for all templates + custom docs
│   ├── templates/                   # pre-built document HTMLs (CN + EN variants)
│   ├── fonts/                       # TsangerJinKai02 (CN), JetBrainsMono (code)
│   ├── diagrams/                    # 14 standalone diagram HTMLs
│   └── images/logo.svg
└── scripts/
    ├── build.py                     # orchestrator: template + data → PDF
    ├── stabilize.py                 # page-count + visual QA
    └── (form scripts: check_fillable_fields, extract_form_field_info, fill_*, etc.)

Core Dependencies

# Creating PDFs (required)
pip install weasyprint pypdf --break-system-packages
# Linux first-time:
apt install -y libpango-1.0-0 libpangoft2-1.0-0 fonts-noto-cjk

# Reading/manipulating PDFs
pip install pdfplumber pypdfium2 --break-system-packages

# OCR
pip install pytesseract pdf2image --break-system-packages
# Also: apt-get install tesseract-ocr poppler-utils

Routing Tips

  • User says "generate report / export PDF / resume / white paper / one-pager / proposal / make me a PDF / professional report" → create.md
  • User says "extract / read / pull out text / read table" → extract.md
  • User says "merge / split / rotate / watermark / combine" → manipulate.md
  • User says "scan / OCR / make searchable" → ocr.md
  • User says "fill form / form field" → forms.md

When unsure, skim this file's router; don't load all references at once.

Skill as a Service

Everyone else asks you to install skills locally. On Rebyte, just click Run. Works from any device — even your phone. No CLI, no terminal, no configuration.

  • Zero setup required
  • Run from any device, including mobile
  • Results streamed in real-time
  • Runs while you sleep

Compatible agents

Claude Code

Gemini CLI

Codex

Cursor, Windsurf, Amp

Related Skills

docx

Process, create, convert, and analyze documents — PDFs, Word docs, spreadsheets, and more. Use when user wants to extract data from PDFs, create Word documents, merge or split PDFs, convert between formats, analyze spreadsheet data, or process uploaded files. Triggers include "extract from PDF", "create Word document", "merge PDFs", "convert document", "analyze spreadsheet", "OCR this scan", "extract tables", "create template", "process invoice".

FeaturedDocuments

pptx

Generate, edit, and read PowerPoint (.pptx) files. Create from scratch with PptxGenJS, edit existing PPTX via XML workflows, or extract text with markitdown. Triggers: PPT, PPTX, PowerPoint.

FeaturedDocuments

report

Create beautiful editorial reports as magazine-style HTML documents rendered inline in chat. Pretext-powered hero typography with text wrapping around decorations, multi-column body, pull quotes, stat callouts, and figures. Uses the widget aesthetic system. Triggers include "create a report", "write a report", "format as a report", "magazine layout", "editorial report", "formatted analysis", "beautiful document", "publish-quality report", "research report", "analysis brief".

FeaturedDocuments

xlsx

Open, create, read, analyze, edit, or validate Excel/spreadsheet files (.xlsx, .xlsm, .csv, .tsv). Use when the user asks to create, build, modify, analyze, read, validate, or format any Excel spreadsheet, financial model, pivot table, or tabular data file. Triggers on 'spreadsheet', 'Excel', '.xlsx', '.csv', 'pivot table', 'financial model', 'formula', or any request to produce tabular data in Excel format.

FeaturedDocuments

rebyte.ai — The only platform where you can run AI agent skills directly in the cloud

No downloads. No configuration. Just sign in and start using AI skills immediately.

Use this skill in Agent Computer — your shared cloud desktop with all skills pre-installed. Join Moltbook to connect with other teams.