zhuzhaoyun/molio/docling
Claude Code and agent skill by zhuzhaoyun/molio
- community
Checking that the SKILL.md file is still in the repository.
PRIMARY skill for converting .pdf, .docx, .pptx, .xlsx, .doc, .ppt, .xls, images, and audio/video files (.mp3, .wav, .m4a, .mp4, .mov, etc.) to Markdown. Always prefer this over the docx/pdf/pptx/xlsx/paddleocr skills — docling uses GPU-accelerated OCR + layout detection + table structure extraction for documents, and Whisper ASR for speech-to-text on audio/video. Also supports LaTeX and VTT subtitle files.
Install
npx vskill@latest install zhuzhaoyun/molio/doclingSKILL.md
Docling — Local Document → Markdown Converter
CLI tool that uses AI models (layout detection, OCR, table extraction) to convert documents into clean, structured Markdown.
Supported Formats
Office: PDF, DOCX, PPTX, XLSX Images: PNG, JPG, TIFF (with OCR) Web: HTML, Markdown Data: CSV Academic: LaTeX, XML (USPTO, JATS, METS) Media: Audio/video transcripts (VTT) Other: JSON (docling format), ASCIIDoc
When to Use
| Scenario | Tool | |
|---|---|---|
| 📄 PDF / DOCX / PPTX / XLSX on disk | ✅ docling | |
| 🖼️ Images with text (OCR) | ✅ docling | |
| 📊 CSV / Markdown / HTML on disk | ✅ docling | |
| 🎤 Audio/video transcripts | ✅ docling | |
| 🌐 Public web page → markdown | ❌ Use WebFetch (no install needed) | |
| 🔒 Web page requiring login (WeChat, Zhihu, etc.) | ❌ Use kimi-webbridge or Chrome extension | |
| 🔍 Search for web pages | ❌ Use WebSearch |
Scope boundary: docling handles files on disk. Web content is out of scope — use the right tool for the job.
Prerequisites
Molio 用户无需手动装 Python:Molio 预下载 docling 时,若本机没有 Python ≥3.10,会自动准备一份独立的 Python 运行环境(国内源优先,约 22MB),全程零操作。下面的手动pip步骤仅作为回退方案(例如你在 Molio 之外单独使用 docling,或自动供给因特殊平台/网络失败时)。
Install docling
Verify:
⚠️ First-time PDF usage
The first time you convert a PDF, docling downloads ~500MB of AI models (layout + table structure) to ~/.cache/huggingface/. Subsequent runs reuse cached models and are much faster.
For users in China: set the HuggingFace mirror environment variable before first run, otherwise model download will timeout:
Tip: If you see connection timeout errors while downloading models, this is almost always the cause.
⚠️ First-time audio/video usage
ASR (Whisper) models are downloaded on demand — only when you actually convert an audio/video file. Processing PDFs/images does not trigger a Whisper download, and vice versa.
- Location: same cache as document models,
~/.cache/huggingface/ - Size by model:
whisper_tiny~75MB (default),whisper_small/base~250-400MB,whisper_medium~1GB,whisper_large/turbo~1.5-3GB - Reusable: downloaded once, reused on subsequent runs (no re-download)
- China users: the same
HF_ENDPOINT=https://hf-mirror.commirror applies — set it before the first audio run, otherwise the download will time out
First run is slow (downloading the model); subsequent runs are pure local inference, speed depends on CPU/GPU.
Quick Commands
Document → Markdown (most common)
Output: creates a .md file in the specified output directory. 统一用 `.molio/docling` 作为输出目录(Molio 工作区,文件树扫描会跳过,不污染 vault 根)。
PDF with specific options
OCR on images
Audio / Video → Markdown (speech-to-text)
Uses Whisper ASR models to transcribe audio/video files into Markdown.
Model size guide:
| Model | Speed | Accuracy | Size | Use case | |
|---|---|---|---|---|---|
whisper_tiny (default) | ⚡ fastest | low | ~75MB | quick drafts, English-heavy | |
whisper_small / whisper_base | fast | medium | ~250-400MB | general use | |
whisper_medium | medium | good | ~1GB | Chinese / noisy audio | |
whisper_large / whisper_turbo | slow | best | ~1.5-3GB | high-accuracy transcripts |
Use _mlx suffix on Apple Silicon, _native for CPU fallback across platforms.
GPU acceleration
Key Options
| Option | Values | Description | |
|---|---|---|---|
--from | pdf, docx, pptx, xlsx, image, html, md, csv, audio, vtt, latex, asciidoc, xml_uspto, xml_jats, mets_gbs, json_docling | Input format (default: auto-detect) | |
--to | md, text, json, html | Output format (default: md) | |
--device | auto, cpu, cuda, mps | Accelerator (default: auto) | |
--pipeline | legacy, standard, vlm, asr | Processing pipeline (default: standard; use asr for audio/video) | |
--asr-model | whisper_tiny, whisper_small, whisper_medium, whisper_base, whisper_large, whisper_turbo (+ _mlx/_native variants) | ASR model for audio/video (default: whisper_tiny) | |
--output | path | Output directory | |
--ocr / --no-ocr | flag | Enable/disable OCR (default: on) | |
--pdf-backend | dlparse_v4, pypdfium2, dlparse_v1, dlparse_v2 | PDF parser (default: dlparse_v4) | |
--tables / --no-tables | flag | Extract table structure (default: on) | |
--table-mode | fast, accurate | Table extraction quality |
Troubleshooting
❌ Error: Inconsistent number of pages: N!=-1
Cause: docling's default PDF parser (docling-parse) cannot handle certain PDFs (especially scanned documents or those with unusual structure).
Fix: Switch to the pypdfium2 backend:
pypdfium2 is more tolerant and will usually succeed.
❌ Error: ConnectTimeout / huggingface_hub.errors.LocalEntryNotFoundError
Cause: Cannot reach HuggingFace Hub to download models (common in mainland China).
Fix: Set the mirror endpoint before running:
Permanent fix (recommended for Chinese users): add to shell profile (~/.bashrc, ~/.zshrc, or system env):
❌ Error: ModuleNotFoundError: No module named 'docling'
Cause: docling not installed, or not in PATH.
Fix:
Common install locations:
- Windows:
C:\Users\<user>\AppData\Roaming\Python\Python3X\Scripts\docling.exe - Linux/macOS:
~/.local/bin/docling
If installed but not in PATH, use full path or add to PATH.
❌ Slow performance
Cause: Running on CPU without GPU, or processing many pages.
Tips:
- Use
--device cuda(NVIDIA) or--device mps(Apple Silicon) if available - Reduce
--page-batch-sizefor lower memory usage on large PDFs - For simple text-only PDFs, skip OCR:
--no-ocr
❌ Poor Chinese text extraction
Tips:
- Ensure OCR is enabled:
--ocr - Specify OCR language:
--ocr-lang ch_sim,en(Simplified Chinese + English) - For scanned Chinese PDFs, use
--force-ocrto override any (possibly wrong) text layer
Workflow Example
Security Notes
⚠️ Avoid these flags unless you trust the source:
--enable-remote-services— can send data to remote endpoints--allow-external-plugins— loads third-party code- Custom
--headerswith untrusted values — can redirect requests
Full CLI Reference
See references/cli-reference.md for complete option list (PDF options, VLM models, enrichment features, debug flags, etc.).
Security
- Security scanPassed, 90 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingapps/daemon/src/tools/skills/docling/SKILL.md
Popularity
- 7-day trend score
- 0
Not refreshed yet.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/zhuzhaoyun/molio/docling)