docx Skill:让 AI 真正写出可交付的 Word 文档

前言

用 AI 写报告、备忘录、合同模板时,常见结果是 Markdown 或纯文本——排版、页眉页脚、目录、修订批注这些 Word 里才用得上的能力,往往得自己再手工整理一遍。Anthropic 在 GitHub 开源参考仓库 anthropics/skills 里放出了 docx Skill:它正是 Claude 产品里「创建与编辑文件」能力背后、面向 Word 文档(.docx / .dotx)的那套生产级实现。把整份 Skill 目录(SKILL.md 指令 + 辅助脚本 + 模板资源)装进 Cursor、Claude Code 等支持 Agent Skills 的工具后,Agent 不再只会「描述怎么写 Word」,而是按统一流程去创建、读取、编辑和校验真实文档。

这是什么

docx 是 Anthropic 维护的 Agent Skill,官方目录:

https://github.com/anthropics/skills/tree/main/skills/docx

它在 SKILL.md 的 YAML 前言里写清了触发条件:只要用户提到 Word 文档、.docx.dotx,或需要带目录、标题层级、页码、信笺头、修订批注、批注评论、图片替换、查找替换等格式的交付物(报告、备忘录、信件、模板等),Agent 就应启用该 Skill。PDF、电子表格、Google Docs 等不在其范围内。

与仓库里多数 Apache 2.0 示例 Skill 不同,docx 属于 source-available(源码可参考,许可见目录内 LICENSE.txt,为 Proprietary),Anthropic 在 README 中说明:它与 pdf、pptx、xlsx 等 Skill 一起,支撑了 Claude 创建与编辑文件 的产品能力。对开发者而言,它的价值不只是「能写 docx」,更是 复杂 Skill 如何打包脚本与多文件资源 的公开样板。

核心功能与亮点

docx Skill 把 Word 当作「ZIP 包里的 XML」来分工处理,官方 SKILL.md 用一张表概括三种主路径:

任务 推荐方式
新建文档 docx(npm,即 docx-js)写脚本生成
编辑已有文档 unzip → 改 word/document.xml → 再 zip 打包(docx-js 无法打开已有文件)
读取内容 pandoc -t markdown file.docx

在此基础上,Skill 还 bundled 了一整套 Python 辅助脚本(均在 Skill 目录的 scripts/ 下,路径相对该目录解析),覆盖生产环境常见需求:

  1. 版式与结构:目录(TOC)需用内置 HeadingLevel.*;表格列宽、列表编号、分页、图片插入等,SKILL.md 列出了 docx-js 的若干「踩坑点」(如默认 A4、表格需双宽度、不能用字面量 \n 换行等)。
  2. 修订与批注:支持 tracked changes(w:ins / w:del)的编写与校验;accept_changes.py 可生成接受全部修订后的干净副本;comment.py 可写入跨六个 XML 文件关联的评论,并输出需插入 document.xml 的锚点片段。
  3. 编辑已有 docx 的稳健流程merge_runs.py 合并 Word 拆散的文本 run,便于查找替换;scripts/office/validate.py 做 XSD 校验与常见修复;旧版 .doc 可先经 LibreOffice 转成 docx。
  4. 输出验收:生成后可用 LibreOffice 转 PDF,再用 pdftoppm 出图,让 Agent 目视检查排版是否正确。

依赖方面,官方列出的工具有:docx(npm,环境预装,仅 require 失败时再 npm install docx)、pandoc、LibreOffice(soffice)、pdftoppm(Poppler)。

安装与启用

Agent Skills 基于通用 SKILL.md 格式,可在 Cursor、Claude Code、Claude.ai、Claude API 等环境中使用;各工具的安装入口略有不同,以下均来自 Anthropic 官方仓库说明。

Cursor(项目级)

将 docx 整个文件夹放到项目的 .cursor/skills/docx/(或用户级 ~/.cursor/skills/docx/)。Cursor 启动 Agent 时会自动发现;也可在 Agent 对话里用 /docx 手动唤起。一种常见做法是从官方仓库拷贝:

git clone --depth 1 https://github.com/anthropics/skills.git /tmp/anthropics-skills
cp -r /tmp/anthropics-skills/skills/docx .cursor/skills/docx

注意:必须保留 SKILL.md 与同级的 scripts/LICENSE.txt 等完整目录结构,脚本路径在 Skill 内是相对引用。

Claude Code

在 Claude Code 中可将 anthropics/skills 注册为插件市场,并安装文档类 Skill 集合:

/plugin marketplace add anthropics/skills
/plugin install document-skills@anthropic-agent-skills

安装后直接在对话中说明需求即可,例如:「用 docx skill 把这份大纲做成带目录的 Word 报告」。

Claude.ai 与 Claude API

Anthropic 说明:仓库中的示例 Skill 对已付费 Claude.ai 计划大多已内置可用;自定义 Skill 的上传方式见 Using skills in Claude。通过 API 使用预置或自定义 Skill,可参考 Skills API Quickstart

典型用法示例

以下命令与流程均摘自官方 SKILL.md,路径相对于 Skill 目录下的 scripts/

1. 读取现有 Word 内容

pandoc -t markdown contract.docx

2. 编辑已有 docx(解压—改 XML—打包—校验)

unzip -q doc.docx -d unpacked/
find unpacked -type l -delete
python scripts/merge_runs.py unpacked/
# 就地编辑 unpacked/word/document.xml,勿 pretty-print
(cd unpacked && rm -f ../out.docx && zip -Xr ../out.docx .)
python scripts/office/validate.py out.docx --original doc.docx

若涉及修订批注,校验时可加 --author "Your Name",确保改动都包在 tracked change 标记内。

3. 添加评论

python scripts/comment.py unpacked/ "Fees & expenses cap is too low"
python scripts/comment.py contract.docx "This cap is too low" -o annotated.docx

脚本会写好评论相关 XML,并打印需插入 document.xml 的锚点代码;锚点未放置前,评论在文档中不可见。

4. 生成后目视验收

python scripts/office/soffice.py --headless --convert-to pdf output.docx
pdftoppm -jpeg -r 100 output.pdf page

5. 在 Cursor 里向 Agent 提需求(提示词示例)

请使用 docx skill,根据附件大纲生成一份 US Letter 尺寸的 Word 备忘录,
包含一级/二级标题、自动目录、页脚页码;生成后用 PDF 预览检查排版。

Agent 会按 Skill 内指令选择 docx-js 建稿或解压编辑,并调用 bundled 脚本做校验。

适用场景与注意事项

适合谁、什么场景

  • 需要 AI 直接产出 可下载、可协作的 .docx,而非 Markdown 预览。
  • 法务、商务、学术写作中涉及 修订模式、批注、模板(.dotx) 的文档流水线。
  • 团队希望参考 Anthropic 生产级 Skill 目录布局(指令 + 脚本 + 校验 + 许可证),自建企业文档类 Skill。

限制与注意

  1. 许可:docx 为 source-available,非 Apache 2.0;商用或二次分发前请阅读 LICENSE.txt
  2. 环境与依赖:LibreOffice、pandoc、Poppler 等需在 Agent 可执行的沙箱/本机环境中可用;仅拷贝 SKILL.md 而不带 scripts/ 会丢失大半能力。
  3. docx-js 边界:只能 创建 新文档,不能 打开已有 docx 再改;编辑旧文件必须走 unzip/XML 路径。
  4. 官方免责声明:仓库 README 指出,Claude 产品中的实际行为可能与参考 Skill 存在差异,关键任务应在自有环境充分测试。

小结

docx Skill 把「AI 写 Word」从聊天里的文字描述,拉到了可脚本化、可校验、可修订的生产流程。对 Cursor 等工具的开发者来说,它既是即用的文档能力包,也是学习 如何把复杂领域知识封装进 Agent Skill 的公开范本。官方目录与 Claude 文件能力介绍:

  • Skill 源码:https://github.com/anthropics/skills/tree/main/skills/docx
  • Claude 创建文件:https://www.anthropic.com/news/create-files
羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜