docx
Creates, reads and edits Word .docx and .dotx files, including tables of contents, headings and page numbers.
- Kind
- Skill
- Works with
- Claude Code
- Source
- anthropics/skills @ 33375500bcea
- Path
- skills/docx/SKILL.md
- License
- Apache-2.0
- Jobs
- Documentation
InstallCopy it from the source repository, or sign in and let the assistant adapt it for your project.
# DOCX creation, editing, and analysis
A `.docx` is a ZIP archive of XML files. Choose your approach by task:
| Task | Approach |
|---|---|
| **Create** a new document | Write a `docx` (npm) script — see gotchas below |
| **Edit** an existing document | `unzip` → edit `word/document.xml` → `zip` (docx-js cannot open existing files) |
| **Read** content | `pandoc -t markdown file.docx` |
> Script paths below are relative to this skill's directory.
## Creating with docx-js — gotchas
`docx` is preinstalled — do not run `npm install` first; write the script and `require('docx')` directly. Only if that require fails: `npm install docx`. The model knows the API; these are the footguns:
- **Page size defaults to A4.** For US Letter set `page: { size: { width: 12240, height: 15840 } }` (DXA; 1440 = 1″).
- **Landscape:** pass portrait dimensions and `orientation: PageOrientation.LANDSCAPE` — docx-js swaps width/height internally.
- **Tables need dual widths:** set `columnWidths` on the table AND `width` on every cell, both in `WidthType.DXA` (PERCENTAGE breaks in Google Docs). Column widths must sum to the table width.
…