Install
$ agentstack add skill-digital-stoic-org-agent-skills-convert-pdf ✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.
Security review
✓ PassedNo 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.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
Convert PDF → Markdown
1. Parse & Validate
Extract from arguments:
| Arg | Required | Default | |-----|----------|---------| | $1 input PDF | ✅ | — | | → path output | No | ./converted/{kebab-basename}.md | | --docling | No | Force docling | | --complex | No | Force docling | | --ocr | No | Force docling + OCR |
Validate: file exists, ends .pdf, is readable. Create ./converted/ if missing.
2. Select Backend
# If --docling, --complex, or --ocr → skip to docling path
# Otherwise, probe with pdftotext:
CHARS=$(pdftotext -layout -l 3 "$INPUT" - | wc -c)
# CHARS = 100 → pdftotext path
3a. pdftotext Path (default — 90% of files)
pdftotext -layout "$INPUT" "${OUTPUT%.md}.txt"
Post-process the .txt → .md using Write tool:
- Split on
\f→---page separators - ALL CAPS lines > 20 chars →
## Header - Collapse 3+ blank lines → 2
- Prepend YAML frontmatter:
source,pages,backend: pdftotext - Write final
.md, delete intermediate.txt
3b. docling Path (complex/OCR)
First: toolsmith:install-dependency docling if not available.
# Find .venv by scanning upward from CWD
source "$(find_venv)/bin/activate"
docling --to md --output ./converted/ "$INPUT"
If --ocr flag: docling --to md --ocr --ocr-engine easyocr --output ./converted/ "$INPUT"
⚠️ Docling rules — violations create 0-byte files:
| ✅ Correct | ❌ Wrong | |-----------|---------| | --to md | --to markdown | | --output DIR | -o DIR | | Writes to filesystem | NEVER > redirect or \| tee |
4. Verify & Report
[ -s "$OUTPUT" ] || { echo "❌ Output empty"; exit 1; }
wc -c "$OUTPUT"
Report: ✅ Converted {file} → {output} ({size}, {backend})
See reference.md for backend comparison, advanced docling options, and troubleshooting.
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: digital-stoic-org
- Source: digital-stoic-org/agent-skills
- License: MIT
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.