Agent skill · Documentation

docx

Use this skill whenever the user wants to create, read, edit, or manipulate Word documents (.docx files). Triggers include: any mention of \"Word doc\", \"word document\", \".docx\", or requests to produce professional documents with formatting like tables of contents, headings, page numbers, or letterheads. Also use when extracting or reorganizing content from .docx files, inserting or replacing images in documents, performing find-and-replace in Word files, working with tracked changes or comments, or converting content into a polished Word document. If the user asks for a \"report\", \"memo

Eigent AI14,680★ · +57/wk · 1 repos on radarProfile →
claude-codeships scriptsApache-2.0
Install
npx skills add eigent-ai/eigent --skill docx --agent claude-code

Same command for any agent — swap --agent for codex, cursor, copilot.

Facts
Files in the skill folder: 61
SKILL.md size: 17 KB
Bundled scripts: yes
Path: resources/example-skills/docx/SKILL.md
Open the folder on GitHub →
Where it comes from
Stars: 14,733 · +53 this week
Language: TypeScript
Read our review of the source →

Weekly change comes from our own snapshots, not the repository page — it measures attention, not adoption.

From the SKILL.md

# DOCX creation, editing, and analysis ## Overview A .docx file is a ZIP archive containing XML files. ## Quick Reference | Task | Approach | |------|----------| | Read/analyze content | `pandoc` or unpack for raw XML | | Create new document | Use `docx-js` - see Creating New Documents below | | Edit existing document | Unpack → edit XML → repack - see Editing Existing Documents below | ### Converting .doc to .docx Legacy `.doc` files must be converted before editing: ```bash python scripts/office/soffice.py --headless --convert-to docx document.doc ``` ### Reading Content ```bash # Text extraction with tracked changes pandoc --track-changes=all document.docx -o output.md # Raw XML access python scripts/office/unpack.py document.docx unpacked/ ``` ### Converting to Images ```bash python scripts/office/soffice.py --headless --convert-to pdf document.docx pdftoppm -jpeg -r 150 document.pdf page ``` ### Accepting Tracked Changes To produce a clean document with all tracked changes accepted (requires LibreOffice): ```bash python scripts/accept_changes.py input.docx output.docx ``` --- ## Creating New Documents Generate .docx files with JavaScript, then validate. Install: `npm install -

What's inside
Steps it walks through
  1. Overview
  2. Quick Reference
  3. Converting .doc to .docx
  4. Reading Content
  5. Converting to Images
  6. Accepting Tracked Changes
  7. Creating New Documents
  8. Setup
  9. Validation
  10. Page Size
  11. Styles (Override Built-in Headings)
  12. Lists (NEVER use unicode bullets)
  13. Tables
  14. Images
Ships with 24 files
  • LICENSE.txt
  • scripts/__init__.py
  • scripts/accept_changes.py
  • scripts/comment.py
  • scripts/office/helpers/__init__.py
  • scripts/office/helpers/merge_runs.py
  • scripts/office/helpers/simplify_redlines.py
  • scripts/office/pack.py
  • scripts/office/schemas/ISO-IEC29500-4_2016/dml-chart.xsd
  • scripts/office/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd
  • scripts/office/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd
  • scripts/office/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd
  • scripts/office/schemas/ISO-IEC29500-4_2016/dml-main.xsd
  • scripts/office/schemas/ISO-IEC29500-4_2016/dml-picture.xsd
  • scripts/office/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd
  • scripts/office/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd
  • scripts/office/schemas/ISO-IEC29500-4_2016/pml.xsd
  • scripts/office/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd
  • scripts/office/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd
  • scripts/office/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd
  • scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd
  • scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd
  • scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd
  • scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd
first 24 of 61
Commands it runs
python scripts/office/soffice.py --headless --convert-to docx document.doc
Text extraction with tracked changes
pandoc --track-changes=all document.docx -o output.md
Raw XML access
python scripts/office/unpack.py document.docx unpacked/
python scripts/office/soffice.py --headless --convert-to pdf document.docx
pdftoppm -jpeg -r 150 document.pdf page
python scripts/accept_changes.py input.docx output.docx
python scripts/office/validate.py doc.docx
python scripts/comment.py unpacked/ 0 "Comment text with & and ’"
More from eigent
All skills →
About this skill
What does the docx skill do?

Use this skill whenever the user wants to create, read, edit, or manipulate Word documents (.docx files). Triggers include: any mention of \"Word doc\", \"word document\", \".docx\", or requests to produce professional documents with formatting like tables of contents, headings, page numbers, or letterheads. Also use when extracting or reorganizing content from .docx files, inserting or replacing images in documents, performing find-and-replace in Word files, working with tracked changes or comments, or converting content into a polished Word document. If the user asks for a \"report\", \"memo

How do I install it?

Run `npx skills add eigent-ai/eigent --skill docx --agent claude-code` — it drops the skill into your project so the agent can pick it up. Swap the --agent value for codex, cursor or copilot if you use one of those.

Where does this skill come from?

From eigent-ai/eigent, a repository with 14,733 stars. We read it straight from the repository tree rather than a submitted listing, so what you see here is what is actually published.

Is a popular skill a good skill?

Not necessarily. Stars measure attention, not adoption — a repository can trend for a week and be abandoned. That is why we show the weekly change from our own snapshots next to the total, instead of a single flattering number.

Keep going