AgentStack
SKILL verified MIT Self-run

Epub To Markdown

skill-jykim-claude-obsidian-skills-epub-to-markdown · by jykim

A Claude skill from jykim/claude-obsidian-skills.

No reviews yet
0 installs
12 views
0.0% view→install

Install

$ agentstack add skill-jykim-claude-obsidian-skills-epub-to-markdown

✓ scanned · ✓ verified — works with Claude Code, Cursor, and more.

Security review

✓ Passed

No issues found. Passed automated security review. · v0.1.0 How review works →

  • Prompt-injection patterns
  • Secret / credential exfiltration
  • Dangerous shell & filesystem operations
  • Untrusted network calls
  • Known-malicious package signatures

What it can access

  • Network access No
  • Filesystem access No
  • Shell / process execution No
  • Environment & secrets No
  • Dynamic code execution No

From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.

Are you the author of Epub To Markdown? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claim

About

EPUB to Markdown Skill

Convert EPUB files to well-formatted single markdown files with images extracted.

Usage

python3 epub_to_markdown.py "" -o ""

Features

  • Metadata extraction: title, author, language, publisher, publication date
  • TOC parsing: Extracts table of contents with hierarchy
  • HTML to Markdown: Converts chapter HTML using html2text
  • Heading preservation: Maintains H1-H6 hierarchy
  • Image extraction: Extracts images to _files_/ folder with book prefix
  • Single file output: All chapters in one markdown file

Output Structure

output_dir/
├── book.epub           # Original file
├── book.md             # Extracted markdown
└── _files_/            # Images folder
    ├── BookTitle_cover.jpg
    ├── BookTitle_figure1.png
    └── ...

Image Prefix

Images are extracted with a book prefix derived from the title:

  • Title: "Die Empty: Unleash Your Best Work Every Day"
  • Prefix: DieEmptyUnleash (first 3 words, special chars removed)
  • Image: _files_/DieEmptyUnleash_cover.jpg

This prevents filename collisions when extracting multiple books to the same folder.

Output Format

---
title: {from metadata}
author: {from metadata}
language: {from metadata}
source_file: original.epub
source_type: epub
extracted: YYYY-MM-DD HH:MM:SS
status: extracted
---

# {Book Title}

## Table of Contents
- Chapter 1
- Chapter 2
...

---

## Chapter 1

{content with  links}

---

## Chapter 2

{content}

Dependencies

pip install ebooklib beautifulsoup4 html2text

Or use requirements.txt:

pip install -r requirements.txt

Options

| Flag | Description | |------|-------------| | -o, --output | Output markdown file path (default: same as epub with .md) | | -q, --quiet | Suppress progress messages |

Limitations

  • DRM-protected EPUBs: Cannot be extracted (will fail with error)
  • Complex formatting: May simplify to plain text
  • Large EPUBs: May take time for books with many chapters/images

Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

Install and usage instructions live in the source repository linked above.

Reviews

No reviews yet — be the first.

Versions

  • v0.1.0 Imported from the upstream source.