hs:document-skills

Create, edit, and analyze Word, PDF, PowerPoint, and Excel files with validated OOXML workflows.

Updated Jul 19, 2026
One-click install
npx skills add https://github.com/Dozyboy/VSF --skill hs-document-skills-dozyboy
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: hs:document-skills
Source: https://github.com/Dozyboy/VSF/tree/main/Day2_VSF/Demo1/harness/plugins/hs/disabled-skills/document-skills
Command: npx skills add https://github.com/Dozyboy/VSF --skill hs-document-skills-dozyboy

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires playwright, sharp, pptxgenjs, lxml, defusedxml, and includes scripts (resource) and references (resource) components.

What problem does it solve? Working with Office documents programmatically is error-prone: malformed XML corrupts files, formulas never recalculate, and tracked-changes edits break legal documents. This Skill provides verified, tool-backed workflows for creating, editing, extracting, and analyzing .docx, .pdf, .pptx, and .xlsx files without inventing APIs or producing corrupt output. ## Core Features & Use Cases - Four format drawers: Dedicated reference guides for DOCX (python-docx, redline tracked-changes workflow), PDF (pypdf, pdfplumber, reportlab, form filling, OCR), PPTX (python-pptx, templates, HTML-to-slide conversion), and XLSX (pandas, openpyxl, formula recalculation, financial model standards). - HTML to PowerPoint tool: The bundled html2pptx.js script converts HTML layouts into positioned pptxgenjs slides with placeholder extraction, overflow detection, and layout validation. - OOXML validation safety net: unpack.py, validate.py, and pack.py scripts validate edited Office files against XSD schemas before repacking, reporting only new errors versus the original so files never open as corrupt. - Use Case: Redline a counterparty's contract by converting it to markdown, batching edits as tracked changes with a consistent RSID in the raw XML, validating against schemas, and repacking a clean reviewed.docx. ## Quick Start Use the document-skills skill to extract all text and tables from the attached quarterly-report.pdf and save them into a new Excel workbook.

Frequently Asked Questions about hs:document-skills

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I add tracked changes to a Word document programmatically?▼

Unpack the .docx with zipfile, edit word/document.xml with lxml, and wrap changed text in <w:ins> and <w:del> elements using a consistent 8-hex-digit RSID. Only mark the parts that actually changed, then validate and repack the file.

How do I fill a PDF form that has no fillable fields?▼

Render the page to an image to find coordinates, create an overlay PDF with reportlab drawing text at those positions, then merge it onto the original page with pypdf. Verify by rendering the output back to an image.

Why do openpyxl formulas show empty values after saving?▼

openpyxl writes formula strings but never recalculates them, so cached values stay empty. Round-trip the file through LibreOffice headless with soffice --convert-to xlsx to force recalculation, then read cached values with data_only=True.

python-pptx vs html2pptx for creating PowerPoint slides?▼

Use python-pptx when building slides directly through layout and shape APIs. Use the bundled html2pptx.js script when you already have an HTML layout with text, images, and shapes, since it converts positioning automatically and validates overflow.

How do I prevent an edited Office file from opening as corrupt?▼

Run the bundled validate.py script on the unpacked directory against the original file before repacking. It checks XML well-formedness, XSD schemas, relationship references, and content types, reporting only new errors introduced by your edits.