documents
Documents
Read, convert, combine, and protect documents on your own machine.
what you can say
- $inspect report.pdf
- $find alpha in notes.txt
- $make report.pdf smaller
- $make scan.pdf searchable
Phrasing does not have to match. These are real utterances from the skill's own corpus — the model maps what you mean onto one of the tools below.
what it can do
| Tool | Does | Asks first |
|---|---|---|
| add_page_numbers | Add page numbers to a PDF. | yes |
| compress_pdf | Compress a PDF using a deterministic inspect-compress-verify workflow. | yes |
| convert_document | Convert or save a document as a different format (e.g. txt→md, docx→pdf). | yes |
| extract_text | Read out the text content of a document as per-page records plus joined text. Creates no new file. Use only when the user wants the words/text itself — to copy pages into a new PDF (e.g. "extract the last page into a new pdf"), use split_pdf. | read-only |
| find_in_document | Find a keyword or regex within one document and return page snippets. | read-only |
| inspect_document | Inspect a document's format, page count, size, encryption, and text-layer status. | read-only |
| merge_pdfs | Merge multiple PDFs into one output PDF. | yes |
| ocr_document | Make a scanned PDF or image searchable with local Tesseract OCR. | yes |
| protect_pdf | Password-protect a PDF. | yes |
| remove_pages | Delete specific pages and save a copy without them. Use only when the user wants to remove, delete, drop, or get rid of pages — name the pages they do NOT want. If they instead name the pages to keep, use split_pdf. | yes |
| reorder_pages | Reorder PDF pages into a new order within one PDF (not into separate files). | yes |
| rotate_pages | Rotate selected PDF pages. | yes |
| split_pdf | Copy a subset of pages into a new PDF, leaving the original intact. Use whenever the user wants to keep, extract, pull out, split off, or save specific pages — name the pages they WANT. Do not convert this into a removal of the other pages. | yes |
| unlock_pdf | Remove PDF password protection when the password is supplied. | yes |
| watermark | Apply a text or image watermark to a PDF. | yes |
12 of these ask before writing anything, and show you the exact command first. That gate is enforced in code, not left to the model's judgement.
what it needs
Optional: ghostscript, libreoffice, tesseract. Without these, only the operations that use them are unavailable — the rest of the skill works.
Run knaif skills deps to see what is missing on your machine.