Build a real, formatted Word (.docx) document — headings, styles, tables, TOC-ready. Use when asked to produce a Word doc, a .docx, a formatted report/contract/proposal/letter as an actual file (not markdown). Produces an actual .docx via a generated python-docx script with proper heading styles, body text, tables, and page structure. Requires a code-execution environment (Claude Code, the API code tool, or Claude.ai).
Scanned 9/3/2026
Install to Claude Code
npx -y skills add mohitagw15856/pm-claude-skills --skill word-document --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Word Document?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/mohitagw15856-word-document-3e9a74e7)More formats (shields.io, HTML) on the badges page.
---
name: word-document
description: "Build a real, formatted Word (.docx) document — headings, styles, tables, TOC-ready. Use when asked to produce a Word doc, a .docx, a formatted report/contract/proposal/letter as an actual file (not markdown). Produces an actual .docx via a generated python-docx script with proper heading styles, body text, tables, and page structure. Requires a code-execution environment (Claude Code, the API code tool, or Claude.ai)."
---
# Word Document Skill
When someone needs an actual `.docx` — a report, proposal, contract, or formal letter they'll edit in
Word — markdown won't do. This skill produces a real Word file by **writing and running a `python-docx`
script**: proper heading styles (so the navigation pane and a TOC work), clean body text, tables, and
page structure — a document that looks authored, not exported.
> **Environment:** produces a binary file, so it needs code execution — **Claude Code**, the
> **API code-execution tool**, or **Claude.ai**. In the browser playground, the existing Word/PDF export
> turns any skill's markdown into a document; this skill is for a built-to-spec `.docx`.
## Required Inputs
Ask for these only if they aren't already provided:
- **Document type** — report, proposal, contract, SOP, letter, whitepaper — and its purpose/audience.
- **The content** — the material (or a brief to expand), and the required sections/structure.
- **Formatting needs** — headings/TOC, tables, numbered clauses (contracts), a cover page, letterhead/brand.
- **Length & tone**.
## Process
1. **Outline the structure** — the section hierarchy (H1/H2/H3), and where tables or numbered clauses go. Confirm structure for formal docs (contracts, proposals).
2. **Write a `python-docx` script** that:
- Uses **real heading styles** (`Heading 1/2/3`) — not bold body text — so the nav pane, cross-refs, and a generated TOC work.
- Sets clean body styling (font, size, spacing), adds **tables** with proper headers where needed, and page elements (title/cover, page numbers, sections) as required.
- For contracts/formal docs: numbered headings/clauses and consistent defined-term formatting.
- Saves to a clearly named `.docx`.
3. **Run it**, then summarise the document and note anything the user must fill (signatures, figures, brand assets).
## Output Format
- The **generated `.docx` file**.
- A short **contents summary** (the section structure) and a list of placeholders/fields the user needs to complete.
## Quality Checks
- [ ] Headings use real Word heading **styles** (not bold paragraphs) — TOC/nav pane work
- [ ] Body text, spacing, and tables are consistently formatted
- [ ] Structure matches the document type (e.g. numbered clauses for a contract)
- [ ] The script runs and the file opens cleanly in Word/Pages/Docs
- [ ] Placeholders the user must complete are clearly flagged
## Anti-Patterns
- [ ] Do not fake headings with bold text — use heading styles, or the document's structure breaks
- [ ] Do not dump unstructured text — apply the section hierarchy the doc type needs
- [ ] Do not hand-format what a style should do — consistent styles beat per-paragraph fiddling
- [ ] Do not invent contract/legal terms silently — mark drafted clauses and recommend review for anything legal
- [ ] Do not claim a file was produced without code execution — fall back to the markdown export instead
## Based On
Document-production practice (style-based formatting, structured headings, TOC-ready) implemented with python-docx.
## Programmatic Helper
This skill ships `scripts/docx_tool.py` — **zero-dependency** (stdlib zip+XML) production of real `.docx` files:
```bash
# Markdown-lite → Word (#/##/### headings, - bullets, 1. numbered, **bold**, *italic*)
python3 scripts/docx_tool.py create out.docx --text-file doc.md
# Fill {{placeholders}} through an existing .docx (body, headers, footers) —
# handles Word splitting a placeholder across formatting runs
python3 scripts/docx_tool.py fill template.docx out.docx --values '{"client":"Acme","date":"2026-07-03"}'
# Verify what a .docx actually says (plain-text extraction)
python3 scripts/docx_tool.py extract out.docx
```
Write the document first (per this skill), then `create` it as a real file. Honest limits: the markdown subset above with default styling; complex templates keep their formatting except in paragraphs where a placeholder spanned runs.
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!