Use when the task involves reading, creating, or editing `.docx` documents, especially when formatting or layout fidelity matters; prefer `python-docx` plus the bundled `scripts/render_docx.py` for visual checks.
OpenCode mirror: sourced from
~/.config/opencode/skills/docand mirrored for OpenCode CLI usage.
soffice and pdftoppm are available, convert DOCX -> PDF -> PNGs.scripts/render_docx.py (requires pdf2image and Poppler).python-docx for edits and structured creation (headings, styles, tables, lists).python-docx as a fallback and call out layout risk.tmp/docs/ for intermediate files; delete when done.output/doc/ when working in this repo.Prefer uv for dependency management.
Python packages:
uv pip install python-docx pdf2image
If uv is unavailable:
python3 -m pip install python-docx pdf2image
System tools (for rendering):
# macOS (Homebrew)
brew install libreoffice poppler
# Ubuntu/Debian
sudo apt-get install -y libreoffice poppler-utils
If installation isn't possible in this environment, tell the user which dependency is missing and how to install it locally.
No required environment variables.
DOCX -> PDF:
soffice -env:UserInstallation=file:///tmp/lo_profile_$$ --headless --convert-to pdf --outdir $OUTDIR $INPUT_DOCX
PDF -> PNGs:
pdftoppm -png $OUTDIR/$BASENAME.pdf $OUTDIR/$BASENAME
Bundled helper:
python3 scripts/render_docx.py /path/to/file.docx --output_dir /tmp/docx_pages