Versão em inglês:
SKILL.en.md
doc — processamento de documentos (PDF/DOCX/XLSX)
Skill leve, sem código próprio: roteia para CLI local (pdftotext, tesseract, qpdf, pdftk, docling, libreoffice) conforme receitas em references/doc-recipes.md.
Tabela de roteamento por tipo de entrada
Identifica o tipo com file <f> e abre 1 página de teste.
| Entrada + necessidade | Comando principal | Observações |
|---|---|---|
| PDF com camada de texto, extrair texto | pdftotext -layout | §1 |
| PDF escaneado/com imagem, extrair texto | OCR pdftoppm + tesseract | §1 |
| PDF/DOCX complexos (tabelas, layout) → markdown/JSON | skill docling oficial (buscar --skill docling), fallback docling convert --to md | §1 — PDF >5 páginas: --page-range, timeout 180 |
| XLSX → CSV/markdown | libreoffice headless | §1 |
| Mesclar/dividir/inverter/extrair páginas PDF | qpdf/pdftk + pdfinfo/pdftoppm | §2 |
| Arquivo frente e verso/desfocado, probe rápido | skill inspect (mediaskills) | uv run <inspect>/scripts/probe.py |
| Verificar saída extraída | pdfinfo + pdftotext | §4 — páginas devem coincidir, texto não vazio |
Regras
- Idioma da entrada — responda no mesmo idioma do usuário.
- Saída ao lado do arquivo fonte:
<nome_original>.extract.md|.txt|.csv. Não sobrescrever o arquivo original. - Rotular fonte ao extrair de imagem escaneada: marcar com
[ocr]— não misturar com conteúdo observado. - Verificar antes de entregar: PDF deve ter páginas suficientes (
pdfinfo), texto extraído deve corresponder às páginas (pdftotext); faltando/vazio → reextrair. - Local-first: comandos de processamento executam na máquina; capacidade offline depende das CLIs, modelo OCR/Docling e dados necessários estarem instalados ou em cache. Na primeira execução do Docling, pode ser necessário baixar o modelo; buscar skill de terceiro também exige rede. Se faltar modelo/ferramenta, informar claramente ou escolher outra receita local — não afirmar que processou offline.
- Ao finalizar a saída, relatar o arquivo gravado (nome + caminho) — não ficar em silêncio.
Skill de terceiro (buscar por sessão)
- Skill
doclingoficial (docling-project): CLI + Python SDK, PipelineOptions, configuração OCR, DoclingDocument JSON/markdown — mais profundo que o CLIdocling convertda §1. - Buscar por sessão:
./scripts/fetch-session.sh --skill docling→ temporário, não instala permanentemente. - Sem rede / não foi possível buscar: usar receitas CLI disponíveis.
docling convert --to mdsó funciona offline se o modelo necessário já estiver em cache; caso contrário, escolher outra alternativa ou informar explicitamente a dependência.
referências
references/doc-recipes.md— §1 extração (PDF/OCR/docling/DOCX/XLSX), §2 conversão de PDF, §3 gravação de saída, §4 exportação DOCX para skillpaper.