Install any skill in seconds. Free to start, no credit card required.
Get Started Free →blackbelttechnology/document-converter
Convert documents bidirectionally via the pi-doc-engine facade: ingest PDF/DOCX/PPTX/XLSX to provenance-stamped Markdown (with OCR), and produce templated DOCX/PDF from Markdown with diagrams, TOC and round-trip merge.
Passed 20 of 21 test cases with the skill, and 3 of 21 without it.
and 30 more in the full report
17 fixed3 passed either way1 still failing0 broke1 errored
Tokens, turns and time describe resource use, not a dollar price.
One of 17 test cases the skill fixed. Same model, same prompt, with and without the skill.
When handling error exceptions caught from document converter operations, what custom error class is thrown, and what three specific properties on that error object contain the failure details that should be inspected?
| Checked | Without skill | With skill |
|---|---|---|
| Identifies DocConverterError as the thrown error class | Missed | Passed |
| Lists code as a property on DocConverterError | Missed | Passed |
| Lists stderr as a property on DocConverterError | Missed | Passed |
The instructions your model reads when the skill loads.
TypeScript facade (@blackbelt-technology/pi-dashboard-document-converter) over
the Dockerized pi-doc-engine Python engine. Always call the facade — never
Python, docling, pandoc, or the nano-banana CLI directly. The engine is
quarantined in Docker; the facade is the only call surface.
Internals reference: packages/document-converter/README.md (facade API),
packages/document-converter/engine/README.md (JSON docker run contract).
Do NOT read the vendored Python under engine/document_converter/.
cd packages/document-converter && npm run build:image.
The pi.tools manifest (package root) declares pi-doc-engine as a
docker-image probe — pi-dashboard-ensure <package-root>/package.json
reports image presence and the first-party build hint (confirm-gated) via
the registry's Settings → Tools row.GEMINI_API_KEY at run time; absent or on
failure, rendering falls back to mmdc (never hard-fails).import { createDocumentConverter } from "@blackbelt-technology/pi-dashboard-document-converter";
const dc = createDocumentConverter({
image: "pi-doc-engine:0.1.0",
stagingDir: "/abs/kb-staging",
mounts: ["/docs"], // files outside cwd need a root (mounts or workspaceRoot), else PATH_NOT_ALLOWED
});
await dc.convertToMarkdown("/docs/report.pdf"); // digital PDF (auto: native-first)
await dc.convertToMarkdown("/docs/scan.pdf", { // scanned HU PDF
ocr: { mode: "force", lang: ["hungarian", "english"], engine: "tesseract" },
});
await dc.convertToMarkdown("/docs/huge.pdf", { tables: "off" }); // escape hatch: skip TableFormer
test cases passed, vs 3 / 21 without
More skills from the same source and nearby in the registry, with their headline benchmark lift.