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.
npx agentmods add skills/malob/nix-config/docxnpx skills add malob/nix-config --skill docxgit clone --depth 1 https://github.com/malob/nix-configWrote 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.
[](https://agentmods.dev/skills/malob/nix-config/docx)<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>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.
| Model | Per session | Once 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 |
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.
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.
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.
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.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
columnWidthson the table ANDwidthon every cell, both inWidthType.DXA(PERCENTAGE breaks in Google Docs). Column widths must sum to the table width. - Table shading: use
ShadingType.CLEAR, neverSOLID(renders black). - Lists: never insert
•literally; use anumberingconfig withLevelFormat.BULLET. ImageRunrequirestype:("png","jpg", …).PageBreakmust be inside aParagraph.- Never use
\n— use separateParagraphelements. - TOC: headings must use built-in
HeadingLevel.*; custom heading styles needoutlineLevelset 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 aTextRun, 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
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.
- LICENSE.txt 1.4 KB
- scripts/__init__.py 1 B runs code
- scripts/accept_changes.py 4.0 KB runs code
- scripts/comment.py 14 KB runs code
- scripts/merge_runs.py 9.2 KB runs code
- scripts/office/helpers/__init__.py 3.3 KB runs code
- scripts/office/helpers/pptx_chart.py 5.7 KB runs code
- scripts/office/helpers/pptx_slide.py 1.6 KB runs code
- scripts/office/helpers/pptx_theme.py 3.4 KB runs code
- scripts/office/schemas/ecma/fouth-edition/opc-contentTypes.xsd 1.9 KB
- scripts/office/schemas/ecma/fouth-edition/opc-coreProperties.xsd 2.5 KB
- scripts/office/schemas/ecma/fouth-edition/opc-digSig.xsd 2.8 KB
- scripts/office/schemas/ecma/fouth-edition/opc-relationships.xsd 1.3 KB
- scripts/office/schemas/ISO-IEC29500-4_2016/dml-chart.xsd 73 KB
- scripts/office/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd 6.8 KB
- scripts/office/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd 50 KB
- scripts/office/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd 624 B
- scripts/office/schemas/ISO-IEC29500-4_2016/dml-main.xsd 148 KB
- scripts/office/schemas/ISO-IEC29500-4_2016/dml-picture.xsd 1.2 KB
- scripts/office/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd 8.7 KB
- scripts/office/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd 14 KB
- scripts/office/schemas/ISO-IEC29500-4_2016/pml.xsd 82 KB
- scripts/office/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd 1.2 KB
- scripts/office/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd 7.2 KB
- scripts/office/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd 6.2 KB
- scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd 1.2 KB
- scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd 880 B
- scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd 2.5 KB
- scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd 3.4 KB
- scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd 7.3 KB
- scripts/office/schemas/ISO-IEC29500-4_2016/shared-math.xsd 23 KB
- scripts/office/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd 1.3 KB
- scripts/office/schemas/ISO-IEC29500-4_2016/sml.xsd 237 KB
- scripts/office/schemas/ISO-IEC29500-4_2016/vml-main.xsd 26 KB
- scripts/office/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd 25 KB
- scripts/office/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd 535 B
- scripts/office/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd 5.6 KB
- scripts/office/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd 3.9 KB
- scripts/office/schemas/ISO-IEC29500-4_2016/wml.xsd 167 KB
- scripts/office/schemas/ISO-IEC29500-4_2016/xml.xsd 4.5 KB
- scripts/office/schemas/mce/mc.xsd 3.1 KB
- scripts/office/schemas/microsoft/wml-2010.xsd 26 KB
- scripts/office/schemas/microsoft/wml-2012.xsd 3.7 KB
- scripts/office/schemas/microsoft/wml-2018.xsd 901 B
- scripts/office/schemas/microsoft/wml-cex-2018.xsd 1.7 KB
- scripts/office/schemas/microsoft/wml-cid-2016.xsd 1002 B
- scripts/office/schemas/microsoft/wml-sdtdatahash-2020.xsd 600 B
- scripts/office/schemas/microsoft/wml-symex-2015.xsd 745 B
- scripts/office/soffice.py 5.8 KB runs code
- scripts/office/validate.py 6.0 KB runs code
- scripts/office/validators/__init__.py 336 B runs code
- scripts/office/validators/base.py 33 KB runs code
- scripts/office/validators/docx.py 17 KB runs code
- scripts/office/validators/pptx.py 16 KB runs code
- scripts/office/validators/redlining.py 11 KB runs code
- scripts/templates/comments.xml 2.5 KB
- scripts/templates/commentsExtended.xml 2.5 KB
- scripts/templates/commentsExtensible.xml 2.6 KB
- scripts/templates/commentsIds.xml 2.6 KB
- scripts/templates/people.xml 115 B
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.
- 5d ago First seen · 92 lines · 184 tokens per session scan A 8017469ea95f
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.
Other skills, from other repositories
restart__pull_request
乱れた (fix-up コミット過多・議論の脱線・大規模な書き直し) プルリクエストを、 ユーザーが "restart" / "やり直し" したいときに起動する。既存 PR を close し、 ブランチを新ブランチ上の単一のクリーンなコミットに squash し、過去の PR 議論 (レビューコメント・スレッド・リアクション) を統合した説明文で新しい PR を作成する。 元のブランチを force-push してはならない。必ず新しいブランチを作成する。.
validate__japanese
日本語の Markdown 文書 (README・ドキュメント・ブログ下書き・.md) を編集した後に起動する。textlint の ja-technical-writing / ja-spacing プリセットで、長すぎる一文・読点過多・文体の混在・全角半角スペースを検出する。さらに文中ハードラップ (文末でない位置で折り返した、意味のない改行) を検出し、段落・箇条書き項目を 1 行に連結して調整する。1 行に文を積み上げた箇所は、箇条書きへの変換候補として検出する。実在のシンボルを指すコードスニペットへ参照リンクも付与する。日本語の .md を変更したときに使用する。.
clean__comment_out
ソースコードを編集・作成した後に起動する。変更したファイルから、共有 whitelist マーカー (TODO/FIXME/SEE/CONSTRAINT/NOTE/HACK/SAFETY) で始まらない非 doc コメントを すべて削除する。What コメント・汎用 Why・コメントアウトされたデッドコード・ legacy XXX・CONSTRAINT に紐付かない単独 REASON: 行などマーカーの無いコメントは削除し、 whitelist マーカーで始まるコメントと CONSTRAINT に続く REASON: 継続行と 公開インターフェースのドキュメンテーションコメント (rustdoc ///…
prepare__issue
あなたは要件定義済みの Issue を実装着手可能な状態へ引き上げるオーケストレーターである。 対象は status:acknowledged の Issue であり、完了時に status:ready へ遷移させる。.
rescue__pull_request_review
GitHub PR にレビュアー (人間または AI) がコメントを残した後に起動する。 レビューコメントを読み取り、要求されたコード変更を適用し、コミットして push する。 レビューフィードバックの各ラウンドごとに繰り返す。ユーザーの確認は不要 — Claude がこのプロセス全体を自律的に起動・実行する。.
submit__pull_request
プルリクエストを作成から完了まで一貫して提出するときに起動する。ナラティブ型の PR 説明文を生成し、PR を作成し、CI チェックを監視し、CI の失敗を自動修正する。 PR ナラティブと CI 修正のワークフローを 1 つの自律フローに統合する。.