Skip to main content

docx

Unified DOCX skill — create, template-apply, edit/fill, read, repair, and compare Word documents. Use for formal Word deliverables and DOCX diagnosis. Not for PDF/PPT or casual plain-text drafting.

설치로 이동

소스 정보

저장소
MiniMax-AI/minimax-code
최근 소스 활동
2026년 9월 18일 11:25
감지된 SKILL.md 언어
영어
스타
589
포크
67

설치 방법

기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.

소스 파일 검토

설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.

파일 탐색기
100 개 파일

SKILL.md 표시 중

SKILL.md
소스 지침 · 읽기 전용 미리보기
name
docx
metadata
{"version":"4.0.0","category":"document-processing","status":"stable","author":"MiniMaxAI","sources":["ECMA-376 Office Open XML File Formats","GB/T 9704-2012 Layout Standard for Official Documents","IEEE / ACM / APA / MLA / Chicago / Turabian Style Guides","Springer LNCS / Nature / HBR Document Templates"]}
description
Unified DOCX skill — create, template-apply, edit/fill, read, repair, and compare Word documents. Use for formal Word deliverables and DOCX diagnosis. Not for PDF/PPT or casual plain-text drafting.
descriptions
{"zh-Hans":"创建、套模板、编辑、读取、修复和比较 Word DOCX 文档,适用于正式文档交付。"}
triggers
["Word","docx","document","文档","Word文档","报告","合同","公文","套模板","排版","修目录","修页眉页脚"]
# docx Replace `<skill_dir>` with the actual skill path shown by the loader. Unified DOCX skill. `SKILL.md` is the dispatch layer. Pick the route that matches the user’s intent, read that route guide, then go straight into execution. Do not front-load every task with the full evidence/backend/acceptance waterfall. ## Environment gates The env gate ships in two equivalent dialects so the skill works on macOS, Linux/WSL, and Windows without any cygwin/git-bash hack: | Platform | Setup | Env check | |---|---|---| | macOS / Linux / WSL | `bash <skill_dir>/scripts/setup.sh` | `bash <skill_dir>/scripts/env_check.sh --level <lvl>` | | Windows (PowerShell 5.1+) | `powershell -ExecutionPolicy Bypass -File <skill_dir>\scripts\setup.ps1` | `powershell -ExecutionPolicy Bypass -File <skill_dir>\scripts\env_check.ps1 -Level <lvl>` | Both dialects accept the same three levels (`read | render | full`, default `full`) and produce the same `[OK] / [FAIL] / Status: READY|NOT READY` lines, so a route may be gated on either one. The skill loader runs **only the read gate** at load time, so missing dotnet/soffice does not block read-only routes. ### Read gate Checked at skill load time (automatic). Applies to: `READ_CONTENT`, `READ_STRUCTURE`, `COMPARE_TWO_DOCX`. ```bash # macOS / Linux / WSL bash <skill_dir>/scripts/env_check.sh --level read # Windows powershell -ExecutionPolicy Bypass -File <skill_dir>\scripts\env_check.ps1 -Level Read ``` Requires: `python3` (or `python` launcher on Windows), `unzip` (or `tar.exe` on Windows 10+), UTF-8 console. If the read gate fails, the skill cannot load at all. ### Render gate Run before `READ_RENDERED` routes. Includes all read-level checks plus: ```bash bash <skill_dir>/scripts/env_check.sh --level render # *nix powershell -ExecutionPolicy Bypass -File <skill_dir>\scripts\env_check.ps1 -Level Render # Windows ``` Requires (in addition to read): `soffice` / `soffice.exe`, `pdftoppm` (or `pdftocairo`). If the render gate fails, stop and report. Do not silently fall back to structure-only reads. ### Full gate Run before `CREATE_DOCX`, `APPLY_TEMPLATE`, `EDIT_FILL_DOCX`, `REPAIR_LAYOUT` routes. ```bash bash <skill_dir>/scripts/env_check.sh --level full # *nix powershell -ExecutionPolicy Bypass -File <skill_dir>\scripts\env_check.ps1 -Level Full # Windows ``` Requires (in addition to render): `dotnet` >= 9, `pandoc`, `zip` (or `Compress-Archive` on Windows), dotnet project built. If the full gate fails, stop and report. Do not attempt generation with missing dependencies. ### Cross-platform path & temp-dir convention Examples in `docs/` and `references/` are written for *nix shells. When you execute on Windows, do these substitutions consistently: | In the example | Windows substitute | |---|---| | `<skill_dir>/scripts/foo.sh` | `<skill_dir>\scripts\foo.ps1` (every `.sh` has a `.ps1` peer) | | `python3 <skill_dir>/scripts/foo.py` | `python <skill_dir>\scripts\foo.py` (the `.py` files are cross-platform) | | `/tmp/docx-<thing>` | `$env:TEMP\docx-<thing>` | | `bash <skill_dir>/scripts/setup.sh` | `powershell -ExecutionPolicy Bypass -File <skill_dir>\scripts\setup.ps1` | | `forward slashes in paths` | backslashes; quote any path containing spaces | Never invoke a `.sh` script through git-bash on Windows — `setup.sh` will refuse to install anything on `MINGW*/MSYS*/CYGWIN*` and tell you to switch to `powershell.exe` / `pwsh.exe`. ## Operational rules — read before doing anything > **1. Dispatch by user intent, not by backend.** > > Start with the shortest route choice: > > - creating a new formal Word deliverable -> `CREATE_DOCX` > - preserving content but changing template / institutional style -> `APPLY_TEMPLATE` > - editing an existing DOCX in place -> `EDIT_FILL_DOCX` > - reading text / structure / rendered pages -> matching read route > - fixing visible defects -> `REPAIR_LAYOUT` > - comparing two DOCX files -> `COMPARE_TWO_DOCX` > > Read `docs/router.md` only to settle the route. Do not read `docs/evidence.md`, `docs/backends.md`, > and `docs/acceptance.md` before route selection. > **2. For generation routes, choose style family / recipe before backend.** > > The old benchmarked generation core stays in this skill. For `CREATE_DOCX` and `APPLY_TEMPLATE`, > the first substantive decision is the visual system, not the backend. Reuse these files as the > generation core: > > - `references/typography_guide.md` > - `references/design_principles.md` > - `references/cjk_typography.md` > - `scripts/dotnet/MiniMaxAIDocx.Core/Samples/AestheticRecipeSamples*.cs` > > These are not optional decoration. They are the quality-preserving recipe layer. > **3. Backend comes after route + recipe.** > > - `D` is the default write backend for formal DOCX creation, template application, and most edits. > - `S` is only for OpenXML graph work beyond the builtin CLI surface. > - `X` is only for deterministic local XML patch / inspection work. > - Formal `CREATE_DOCX` is never routed to pandoc as a generation backend. > - If a chosen backend gate fails, stop and report it. Do not silently switch. > **4. Rendered acceptance is a post-write gate, not a pre-dispatch hop.** > > For template, layout, TOC, multi-section, header/footer, and page-number work, finish the write > first, then run rendered acceptance from `docs/acceptance.md` / `docs/rendered-delivery.md`. > **5. Keep DOCX execution inside this skill.** > > Do not bounce rendered diagnosis to another skill. Do not treat raw XML string replace as a valid > editing strategy. Do not use `readlink`, `$0`, or shell path tricks in skill docs; use `<skill_dir>` only. > **6. DOCX→PDF is native to this skill.** > If the user asks to convert an existing Word/DOCX document to PDF while > preserving layout, do it here via `python3 <skill_dir>/scripts/docx_to_pdf.py` > (or `soffice --headless --convert-to pdf` as fallback), then verify the PDF. > Do not route DOCX→Markdown/HTML→PDF for a preservation task: DOCX already > carries page geometry, sections, headers/footers, fields, numbering, and table > layout. HTML/PDF belongs to redesign/recomposition after native render fails > or when explicitly requested. ## Routes — pick one, then read that guide ### WRITE / GENERATE a DOCX | Intent | Guide | What happens next | |---|---|---| | **CREATE_DOCX** — author a new report / proposal / contract / memo / thesis / 公文 | `docs/task-create.md` | normalize source -> choose recipe family -> choose `D`/`S` -> write -> acceptance | | **APPLY_TEMPLATE** — preserve content but move into a template / institutional visual system | `docs/task-apply-template.md` | choose template mode -> align recipe family -> read only the needed structure -> choose `D`/`S` -> write -> strict rendered acceptance | | **EDIT_FILL_DOCX** — mutate content in an existing DOCX while keeping it the same document | `docs/task-edit-fill.md` | choose edit mode -> choose `X`/`D`/`S` -> mutate -> acceptance | ### READ / DIAGNOSE / REPAIR a DOCX | Intent | Guide | Primary truth | |---|---|---| | **READ_CONTENT** — summarize / quote / retrieve text | `docs/task-read-content.md` | content | | **READ_STRUCTURE** — inspect styles / sections / numbering / TOC / comments / revisions | `docs/task-read-structure.md` | structure | | **READ_RENDERED** — inspect what the pages actually look like | `docs/task-read-rendered.md` | rendered + structure | | **REPAIR_LAYOUT** — fix page-level defects | `docs/task-repair-layout.md` | rendered -> structure -> rendered | | **COMPARE_TWO_DOCX** — explain before/after or source/template differences | `docs/task-compare-two-docx.md` | content + structure + rendered | ## Deep docs — only after the route is clear | File | Use when | |---|---| | `docs/router.md` | settle route choice | | `docs/evidence.md` | the selected route needs truth-source clarification | | `docs/backends.md` | the selected route needs backend arbitration | | `docs/acceptance.md` | you are ready to validate deliverables | | `docs/rendered-delivery.md` | rendered issue report shape is required | ## Generation core references Use these after `CREATE_DOCX` / `APPLY_TEMPLATE` is selected: | File | Role | |---|---| | `references/scenario_a_create.md` | create-from-scratch mechanics | | `references/scenario_c_apply_template.md` | template transfer and multi-section rules | | `references/typography_guide.md` | font pairings, sizes, spacing, page layout, table rules | | `references/design_principles.md` | visual judgment rules when exact specs are missing | | `references/cjk_typography.md` | CJK fonts, 字号, mixed-script rules, 公文 defaults | | `scripts/dotnet/MiniMaxAIDocx.Core/Samples/AestheticRecipeSamples*.cs` | benchmarked recipe families; choose one instead of inventing values | ## Runtime shorthands ```bash # macOS / Linux / WSL CLI="dotnet run --project <skill_dir>/scripts/dotnet/MiniMaxAIDocx.Cli --" TMPDIR_DOCX="${TMPDIR:-/tmp}" ``` ```powershell # Windows PowerShell $CLI = "dotnet run --project <skill_dir>\scripts\dotnet\MiniMaxAIDocx.Cli --" $TmpDocx = $env:TEMP ``` Common commands (substitute `$TMPDIR_DOCX` / `$TmpDocx` for the literal `/tmp` examples elsewhere in `docs/`): ```bash $CLI analyze --input in.docx --json $CLI diff --before before.docx --after after.docx $CLI merge-runs --input out.docx $CLI validate --input out.docx --xsd <skill_dir>/assets/xsd/wml-subset.xsd $CLI validate --input out.docx --business $CLI validate --input out.docx --gate-check <skill_dir>/assets/xsd/business-rules.xsd python3 <skill_dir>/scripts/docx_to_pdf.py --input in.docx --output "$TMPDIR_DOCX/docx-render.pdf" python3 <skill_dir>/scripts/render_docx_pages.py in.docx --output-dir "$TMPDIR_DOCX/docx-pages" ``` On Windows substitute `python3` -> `python`, `/` -> `\`, and `$TMPDIR_DOCX` -> `$env:TEMP`. The underlying `.py` scripts use `tempfile.TemporaryDirectory` and `Path(...).expanduser().resolve()` so they do not care which slash style you pass in. ## Structural non-negotiables - `w:p` = `pPr` -> runs - `w:r` = `rPr` -> text-like children - `w:tbl` = `tblPr` -> `tblGrid` -> rows - `w:body` ends with `sectPr` - heading styles need `OutlineLevel` - direct formatting contamination must be stripped unless explicitly preserved - template and multi-section work must preserve section graph, `titlePg`, and per-section headers/footers ## Out of scope - PDF / PPT deliverables -> use `pdf` / `pptx` - casual plain-text drafting with no DOCX output - pretending a Word-authored DOCX can be safely round-tripped through pandoc for formal output
GitHub에서 보기