dull-bird/deeporbit · Archived

do.pdf-to-markdown

Convert PDF documents to high-fidelity Markdown with checkpointed page and section coverage verification. Use when the user asks to convert, transcribe, extract, or preserve a PDF as Markdown, especially for papers containing formulas, tables, figures, or multi-column layouts.

First seen Apr 26, 2026

Installation

$ npx skills add dull-bird/deeporbit --skill do.pdf-to-markdown

Stronger alternatives

This repository is archived — consider an actively maintained alternative.

Similar popular skills

Related neighbors and high-traction skills in the same topics — useful to compare before installing.

Also in this package

Other skills from dull-bird/deeporbit · top by installs.

npx skills add dull-bird/deeporbit

Browse all from dull-bird/deeporbit

More details

Agent compatibility

Declared targets from SKILL.md / docs. Unmarked agents are not listed — the skill may still install via the CLI.

Claude Code Not declared
Cursor Not declared
Codex Not declared
GitHub Copilot Not declared
Windsurf Not declared
Gemini CLI Not declared
Cline Not declared
OpenCode Not declared

Repository health

Stars 5
License LICENSE
Default branch master
Open issues 0
Status Archived

Package contents

Files included with this skill beyond the listing page.

  • skill md SKILL.md 2,972 B
  • docs SUMMARY.md 303 B

History

  1. First seen on skills.sh
  2. First recorded snapshot · 6 installs

SKILL.md

PDF to Markdown

Preserve the source language and document structure. Use visual PDF reading for formulas, tables, and reading order; do not trust blind text extraction for complex layouts.

1. Build the manifest

Inspect the full PDF and write <name>_manifest.md beside it:

---
deeporbit_workflow: 1
workflow_id: pdf-<date>-<slug>
status: active
source: <name>.pdf
output: <name>.md
---

# Conversion Manifest
- Total pages: N
- [ ] Cover and metadata (p.1)
- [ ] Abstract (p.1-2)
- [ ] Section 1 (p.2-5)
- [ ] References (p.N-2-N)
- Tables: T
- Figures: F

Every page must belong to a checklist item. If bundled image extraction is available, run:

python <skill-dir>/scripts/extract_images.py <input.pdf>

PyMuPDF is optional and is used only for embedded images, never as the sole text source.

2. Convert with checkpoints

For each unchecked section:

  1. Visually read its page range.
  2. Append it to <name>.md in reading order.
  3. Preserve headings, paragraph breaks, lists, fenced code, footnotes, tables, and emphasis.
  4. Transcribe math as $...$ or $$...$$.
  5. Reference extracted images with relative paths and source captions.
  6. Compare paragraph, table, figure, and page coverage.
  7. Mark that section checked only after its verification succeeds.

Continue in the same turn when feasible. If interrupted or context-limited, reread the manifest and resume at the first unchecked item. A runtime Goal or Tracker may mirror the overall objective, but the manifest remains authoritative. Do not use an external self-invoking loop.

3. Verify the whole document

  • All manifest entries are checked.
  • Every page is covered exactly once or its overlap is explained.
  • Output headings match the source section list.
  • Table and figure counts match.
  • Code, math, links, and footnotes are intact.
  • No source paragraphs were silently omitted.

Add a final conversion report with page, section, table, figure, image, and word counts. Keep the manifest when an audit trail is useful; otherwise ask before deleting it.

4. Final output

Write frontmatter at line 1:

---
type: note
title: "<Document Title>"
source: "[[<name>.pdf]]"
created: YYYY-MM-DD
tags: [pdf-conversion]
---
  • Set author: ai in frontmatter for every note you create; switch to author: mixed when substantially rewriting a human-authored note. Authorship lives in frontmatter only — never add visible badges.

Save beside the PDF, link relevant existing Wiki concepts when appropriate, and use do.obsidian-open to present the result. Failure to open the desktop app does not invalidate the conversion.