docx

docx is a skill for Claude Code, Codex from malob/nix-config. It costs 184 tokens per session (1,762 once invoked), scanned A, a copy of docx, MIT.

A set of instructions for creating, reading, editing, and formatting Microsoft Word files, including `.docx` documents and `.dotx` templates. It explains which tools and methods to use for each kind of document work.

In plain words
What is it for?
Use it to create Word documents, inspect their content, modify existing files, work with templates, or add elements such as tables of contents and headings.
Why use it?
It reduces mistakes caused by treating Word files like ordinary text files, especially when preserving formatting or editing existing documents.

Skill for Claude CodeCodex

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add skills/malob/nix-config/docx
Any agent
npx skills add malob/nix-config --skill docx
Clone the repo
git clone --depth 1 https://github.com/malob/nix-config

Made for: Claude Code, Codex.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for docx

README.md
[![agentmods](https://agentmods.dev/badge/skills/malob/nix-config/docx.svg)](https://agentmods.dev/skills/malob/nix-config/docx)
Your own site
<a href="https://agentmods.dev/skills/malob/nix-config/docx"><img src="https://agentmods.dev/badge/skills/malob/nix-config/docx.svg" alt="Measured on agentmods" height="20"></a>
Per session 184 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,762 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin 95% copy Near-identical to another mod in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.00184 $0.01762
Opus 5 $0.00092 $0.00881
Sonnet 5 $0.00037 $0.00352
Haiku 4.5 $0.00018 $0.00176

Measured 5d ago against content hash 8017469ea95f, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

docx scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 5d ago.

The scan reads SKILL.md. This mod also ships 15 executable files (scripts/__init__.py, scripts/accept_changes.py, scripts/comment.py, …), listed below but not scanned — reading those needs a real analyzer, not pattern matching.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

Origin

This is a copy

95% identical to docx — 8 lines differ, which has more behind it and is treated as the original. This page carries a canonical link to it rather than competing with it.

configs/claude/skills/docx/SKILL.md · 92 lines

How it starts

The opening of the file, as written. The whole thing — 92 lines — stays where its author put it; the contents beside it link to each section on GitHub.

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.xmlzip (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.
  • Table shading: use ShadingType.CLEAR, never SOLID (renders black).
  • Lists: never insert literally; use a numbering config with LevelFormat.BULLET.
  • ImageRun requires type: ("png", "jpg", …).
  • PageBreak must be inside a Paragraph.
  • Never use \n — use separate Paragraph elements.
  • TOC: headings must use built-in HeadingLevel.*; custom heading styles need outlineLevel set or they won't appear.
  • Don't use a table as a horizontal rule — use a paragraph bottom border instead.
  • Dot-leader / right-aligned-on-same-line: use PositionalTab (alignment: PositionalTabAlignment.RIGHT, leader: PositionalTabLeader.DOT) inside a TextRun, not literal . or space padding.

Verify the output

After writing a .docx, render it and look at it:

python scripts/office/soffice.py --headless --convert-to pdf output.docx
pdftoppm -jpeg -r 100 output.pdf page
ls page-*.jpg   # then Read the images

Read the full file on GitHub · 92 lines

Files

What ships with it

60 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 5d ago First seen · 92 lines · 184 tokens per session scan A 8017469ea95f

Subscribe to this mod's changes

docx is a skill published in the GitHub repository malob/nix-config (462 stars, last pushed 5d ago), licensed MIT. It adds 184 tokens to every session and 1,762 once invoked, about $0.0009 per session on Opus 5. A static security scan graded it A with 0 findings. It is 95% identical to docx, differing in 8 lines, and is treated as a copy.

Related

Other skills, from other repositories

restart__pull_request

乱れた (fix-up コミット過多・議論の脱線・大規模な書き直し) プルリクエストを、 ユーザーが "restart" / "やり直し" したいときに起動する。既存 PR を close し、 ブランチを新ブランチ上の単一のクリーンなコミットに squash し、過去の PR 議論 (レビューコメント・スレッド・リアクション) を統合した説明文で新しい PR を作成する。 元のブランチを force-push してはならない。必ず新しいブランチを作成する。.

shunsock/dotfiles · 159 tokens

validate__japanese

日本語の Markdown 文書 (README・ドキュメント・ブログ下書き・.md) を編集した後に起動する。textlint の ja-technical-writing / ja-spacing プリセットで、長すぎる一文・読点過多・文体の混在・全角半角スペースを検出する。さらに文中ハードラップ (文末でない位置で折り返した、意味のない改行) を検出し、段落・箇条書き項目を 1 行に連結して調整する。1 行に文を積み上げた箇所は、箇条書きへの変換候補として検出する。実在のシンボルを指すコードスニペットへ参照リンクも付与する。日本語の .md を変更したときに使用する。.

shunsock/dotfiles · 200 tokens

clean__comment_out

ソースコードを編集・作成した後に起動する。変更したファイルから、共有 whitelist マーカー (TODO/FIXME/SEE/CONSTRAINT/NOTE/HACK/SAFETY) で始まらない非 doc コメントを すべて削除する。What コメント・汎用 Why・コメントアウトされたデッドコード・ legacy XXX・CONSTRAINT に紐付かない単独 REASON: 行などマーカーの無いコメントは削除し、 whitelist マーカーで始まるコメントと CONSTRAINT に続く REASON: 継続行と 公開インターフェースのドキュメンテーションコメント (rustdoc ///…

shunsock/dotfiles · 188 tokens

prepare__issue

あなたは要件定義済みの Issue を実装着手可能な状態へ引き上げるオーケストレーターである。 対象は status:acknowledged の Issue であり、完了時に status:ready へ遷移させる。.

shunsock/dotfiles · 145 tokens

rescue__pull_request_review

GitHub PR にレビュアー (人間または AI) がコメントを残した後に起動する。 レビューコメントを読み取り、要求されたコード変更を適用し、コミットして push する。 レビューフィードバックの各ラウンドごとに繰り返す。ユーザーの確認は不要 — Claude がこのプロセス全体を自律的に起動・実行する。.

shunsock/dotfiles · 104 tokens

submit__pull_request

プルリクエストを作成から完了まで一貫して提出するときに起動する。ナラティブ型の PR 説明文を生成し、PR を作成し、CI チェックを監視し、CI の失敗を自動修正する。 PR ナラティブと CI 修正のワークフローを 1 つの自律フローに統合する。.

shunsock/dotfiles · 100 tokens