Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add koreyba/Claude-Skill-pdf-to-epub --skill pdf_to_epubgit clone --depth 1 https://github.com/koreyba/Claude-Skill-pdf-to-epubWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/koreyba/claude-skill-pdf-to-epub/pdf_to_epub)<a href="https://agentmods.dev/skills/koreyba/claude-skill-pdf-to-epub/pdf_to_epub"><img src="https://agentmods.dev/badge/skills/koreyba/claude-skill-pdf-to-epub/pdf_to_epub/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/koreyba/claude-skill-pdf-to-epub/pdf_to_epub"><img src="https://agentmods.dev/badge/skills/koreyba/claude-skill-pdf-to-epub/pdf_to_epub.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00083 | $0.02537 |
| Opus 5.5 | $0.00033 | $0.01015 |
| Sonnet 5.5 | $0.00017 | $0.00507 |
| Haiku 4.5 | $0.00008 | $0.00254 |
Grade A, and why
convert-pdf-to-epub scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2mo ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 328 lines — stays where its author put it; the contents beside it link to each section on GitHub.
PDF to EPUB Converter
Convert PDF documents to high-quality EPUB files with automatic chapter detection, image optimization, and footnote hyperlinking.
Quick Start
# Run conversion (from skill directory)
python -m scripts.convert input.pdf output.epub
# Validate result
python -m scripts.validate input.pdf output.epub
Workflow Overview
The conversion follows a 3-phase process with an optional 4th phase for adaptation:
┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐
│ 1. ANALYZE │ ──► │ 2. CONVERT │ ──► │ 3. VALIDATE │
│ - PDF structure│ │ - Apply config │ │ - Check quality│
│ - Generate cfg │ │ - Build EPUB │ │ - Report issues│
└─────────────────┘ └─────────────────┘ └─────────────────┘
│
▼
┌─────────────────┐
│ 4. ADAPT │
│ (if needed) │
│ - Tune config │
│ - Modify code │
└─────────────────┘
Phase 1: Analyze
Before converting, analyze the PDF to determine the best configuration:
# Open PDF and examine structure
import fitz # pymupdf
doc = fitz.open("input.pdf")
# Check for:
# 1. Number of pages
# 2. Presence of images
# 3. Multi-column layout (compare text block x-coordinates)
# 4. Footnotes/endnotes (numbers in margins or at page bottom)
# 5. Font sizes (for heading detection thresholds)
Generate initial config based on analysis:
- Fiction book: Use default
y_sortreading order - Academic paper: Enable
xy_cutfor columns - Magazine: Enable image optimization, use
xy_cut
Ask user to confirm the proposed configuration before proceeding.
What ships with it
48 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
- __init__.py 0 B runs code
- conversion/__init__.py 423 B runs code
- conversion/converter.py 8.3 KB runs code
- conversion/detectors/__init__.py 511 B runs code
- conversion/detectors/endnote_formatter.py 4.6 KB runs code
- conversion/detectors/font_analyzer.py 2.6 KB runs code
- conversion/detectors/footnote_detector.py 6.7 KB runs code
- conversion/detectors/models.py 833 B runs code
- conversion/detectors/reading_order/__init__.py 208 B runs code
- conversion/detectors/reading_order/base.py 324 B runs code
- conversion/detectors/reading_order/xy_cut_sorter.py 4.4 KB runs code
- conversion/detectors/reading_order/y_sorter.py 913 B runs code
- conversion/detectors/structure_builder.py 15 KB runs code
- conversion/detectors/structure_classifier.py 7.8 KB runs code
- conversion/models.py 12 KB runs code
- conversion/pdf_analyzer.py 5.3 KB runs code
- conversion/report.py 11 KB runs code
- conversion/strategies/__init__.py 185 B runs code
- conversion/strategies/base_strategy.py 5.6 KB runs code
- conversion/strategies/simple_strategy.py 25 KB runs code
- core/__init__.py 0 B runs code
- core/epub_builder.py 16 KB runs code
- core/epub_extractor.py 3.8 KB runs code
- core/image_optimizer.py 8.3 KB runs code
- core/pdf_extractor.py 11 KB runs code
- core/text_segmenter.py 2.6 KB runs code
- core/utils.py 1.5 KB runs code
- examples/academic-multicol.json 804 B
- examples/fiction-simple.json 759 B
- examples/magazine-images.json 745 B
- README.md 3.9 KB
- reference/architecture.md 11 KB
- reference/code-adaptation.md 8.9 KB
- reference/config-tuning.md 10 KB
- reference/troubleshooting.md 7.5 KB
- reference/workflow.md 8.6 KB
- requirements.txt 216 B
- scripts/__init__.py 56 B runs code
- scripts/analyze.py 2.3 KB runs code
- scripts/convert.py 3.2 KB runs code
- scripts/validate.py 3.4 KB runs code
- validation/__init__.py 480 B runs code
- validation/completeness_checker.py 6.7 KB runs code
- validation/lis.py 869 B runs code
- validation/models.py 915 B runs code
- validation/order_checker.py 1.9 KB runs code
- validation/text_canonicalizer.py 3.3 KB runs code
- validation/validator.py 6.7 KB runs code
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 2mo ago First seen · 328 lines · 83 tokens per session scan A 5ea7d3c678ce
convert-pdf-to-epub is a skill published in the GitHub repository koreyba/Claude-Skill-pdf-to-epub (39 stars, last pushed 9mo ago), licensed MIT. It adds 83 tokens to every session and 2,537 once invoked, about $0.0003 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
convert-pdf-to-epub compared with skills from other repositories
| Mod | Type | Stars | Last push | Licence | Scan | Tokens | Works with |
|---|---|---|---|---|---|---|---|
| convert-pdf-to-epubkoreyba/Claude-Skill-pdf-to-epub | Skill | 39 | 9mo ago | MIT | A | 83 | Claude Code |
| apify-youtube-transcript-scrapersickn33/agentic-awesome-skills | Skill | 49k | yesterday | MIT | A | 48 | Claude Code |
| foundry-hosted-agent-validationmicrosoft/agent-framework | Skill | 15k | yesterday | MIT | A | 82 | Claude Code, Codex |
| skill-doc-deliverynyldn/claude-octopus | Skill | 4.4k | yesterday | MIT | A | 29 | Claude Code |
| meta-web-to-pdf-briefingopensquilla/opensquilla | Skill | 7.1k | 6d ago | Apache-2.0 | A | 45 | Claude Code, Codex |
| paper-readerhuangkiki/dailypaper-skills | Skill | 1.3k | 4d ago | Apache-2.0 | A | 135 | Claude Code, Codex |
| chat-complex-documentsvellum-ai/vellum-assistant | Skill | 1.5k | 2d ago | MIT | A | 90 | Claude Code, Codex |