← ClaudeAtlas

pdf-extractlisted

Use when given one or more PDFs to read, summarise, extract from, or answer questions about - converts them to citable Markdown and visually reads the charts, diagrams, scanned pages and ruled tables that text extraction silently drops. Triggers on "read this PDF", "extract from these PDFs", "what does this report say", "parse this scan", "pull the figures out of", "summarise this contract".
LPSlv/pdf-extract · ★ 0 · Data & Documents · score 67
Install: claude install-skill LPSlv/pdf-extract
# pdf-extract Text extraction handles most PDFs on its own. This skill uses a fast local engine for that, then spends vision calls **only** on what it provably missed — figures, scanned pages, and tables it failed to structure. ## When NOT to use this - Merging, splitting, form filling, encryption → `anthropics/skills@pdf`. - A PDF you need one number from and already know the page of → just read it. Requires `uv`. Nothing else; dependencies resolve on first run. ## 1. Convert ```bash uv run <skill-dir>/convert.py FILE.pdf [MORE.pdf ...] ``` One JSON object per document, on stdout. Everything deterministic is now done: text extracted, images written, artifact cached. Exit code is non-zero if any document failed. ```json {"status":"ok","artifact":"/home/…/<sha>-<tag>","cached":false, "doc_md":"…/doc.md","pages_dir":"…/pages","manifest":"…/manifest.json", "pending":[{"id":"p007-render","page":7,"kind":"page_render", "reason":"dense_grid","path":"…/images/p007-render.png"}], "dropped":6,"over_scale_guard":false,"scale_guard":15} ``` Check `status` first. `encrypted` and `unreadable` are terminal — report and move on; the batch continues. Re-running the same PDF returns `cached: true` instantly and costs nothing. **If `over_scale_guard` is true**, tell the user how many calls it wants and get agreement before continuing. An 84-page scan is 84 calls. ## 2. Look at each pending item `pending` is empty → you are done, go to step 3. Otherwise, for each en