4.1 文档三件套:docx / xlsx / pptx
三个技能,一个模式
Anthropic 官方技能仓库 anthropics/skills 当前共有 19 个技能,全部遵循 SKILL.md 规范,与 dsh 兼容,可以原样使用。其中 docx、xlsx、pptx 三个覆盖 Word、Excel、PowerPoint,是办公场景的核心组合。
三个技能的触发条件写得都很直接:
| 技能 | 官方描述(要义) |
|---|---|
docx |
用户想创建、读取、编辑或操作 Word 文档时 |
xlsx |
电子表格文件是主要输入或输出时 |
pptx |
任何环节涉及 .pptx / .potx 文件时 |
注意 pptx 的描述是“任何环节涉及”——这比前两个更宽,只要碰演示文稿就该考虑它。
三个都是目录包形态(<name>/SKILL.md 加自带参考资料),体积比扁平技能大,这也是它们能覆盖完整工作流的原因:单格式的读取、创建、编辑、操作被写进了指令,模型加载后知道完整流程,而不是只会一个动作。
官方触发条件逐字对照
把三个技能的官方描述摊开逐字对照,能看出 Anthropic 划分边界的思路:
| 技能 | 官方描述(要义) | 覆盖格式 | 典型命中场景 |
|---|---|---|---|
docx |
用户想创建、读取、编辑或操作 Word 文档时 | .docx |
写报告、改合同、批量提取文档内容 |
xlsx |
电子表格文件是主要输入或输出时 | .xlsx |
读台账、生成报表、改公式 |
pptx |
任何环节涉及 .pptx / .potx 文件时 |
.pptx / .potx |
做汇报、改模板、抽取幻灯片文字 |
三条描述有两个共同点:全部用“用户想做什么”起句,而不是“本技能提供什么功能”;全部点名具体文件格式。这正是技能 description 的正确写法——模型选技能时读的就是这段话,写清楚触发条件比写清楚功能更重要(这一点在 4.5 skill-creator 一节还会展开)。
pptx 的描述连 .potx(PowerPoint 模板格式)都点名了,说明官方考虑到了“拿模板改内容”这类高频场景。
装法:只复制需要的目录
mkdir -p ~/.dsh/skills
git clone --depth 1 https://github.com/anthropics/skills.git /tmp/anthropic-skills
cp -r /tmp/anthropic-skills/skills/docx ~/.dsh/skills/
cp -r /tmp/anthropic-skills/skills/xlsx ~/.dsh/skills/
cp -r /tmp/anthropic-skills/skills/pptx ~/.dsh/skills/
几点说明:
--depth 1是浅克隆,只取最新一次提交。这个仓库历史不短,浅克隆能省下绝大部分下载时间;技能要的是当前状态,不是历史。- 仓库里 19 个技能都放在
skills/子目录下,把需要的三个目录复制到用户技能根~/.dsh/skills/即可。注意平铺摆放——dsh 不支持嵌套递归的**/SKILL.md发现,技能必须平铺。 - 复制完新开一个会话,用
/docx直调一下,确认技能已经进目录。模型自选走skill工具按名称加载,用户直调走/技能名,两条路都通才算装好。
另一种做法是把整个技能仓库 clone 成 skills 根目录。不推荐,但可以把后果说清:仓库里除了 19 个技能目录,还有 spec/(规范)、template/(模板)、.claude-plugin/ 和 README 等非技能文件。dsh 的技能发现只认带 SKILL.md 的目录,这些文件不会被注册成技能,无害但略乱——你的技能目录里会平白多出十几个用不到的能力,模型选技能时分心,你自己浏览列表时也碍眼。想要干净,就按上面的做法只复制需要的三个。
与 dsh 自带 office-* 的四维对比
DeepSeek Harness 自带一整套 Office 技能族(@deepseek-ai/dsh-skill-office):一个 office 路由技能,加六个创作或操作技能——office-docx、office-xlsx、office-pptx、office-export-pdf、office-render、office-recalculate。启用方式是组合配置加一行:- name: '@deepseek-ai/dsh-skill-office'。创作技能使用选定的 Python 库;操作技能提供配置好的 Node 与 LibreOffice Kit CLI 路径。
拿它和 Anthropic 三件套对比:
| 维度 | dsh office-* 七件套 |
Anthropic 三件套 |
|---|---|---|
| 安装 | 组合配置一行挂载,资源随包分发 | 复制三个目录,纯文件操作 |
| 更新 | 随 dsh 版本发布,升级即得 | 跟随 anthropics/skills 仓库独立迭代,要更新得重新克隆 |
| 深度 | 七个技能分工:路由 + 三件套 + 导出 PDF + 渲染 + 公式重算 | 三个技能各自自带参考资料,覆盖单格式全流程 |
| 跨工具 | 仅 dsh:依赖 dsh 的配置字段与 CLI 路径 | 任何支持 SKILL.md 的工具都能用 |
四个维度里没有胜负,只有场景。dsh 组赢在深度与集成度:渲染、导出、重算这些环节被拆成独立技能,按需渐进加载;Anthropic 组赢在可移植:同一份 SKILL.md 换个工具照样跑。
dsh 自带组还有一条渐进加载规则值得知道:用户要求的外观修改(包括电子表格单元格填充和文本对齐),即使没有明确要求视觉检查,也需要渲染;用户明确说跳过渲染时才以用户要求为准。也就是说“把单元格填充色换一下”这种事,dsh 组会主动渲染确认,而不是盲改——视觉验证被编进了指令,不靠模型自觉。
还有这些差异
除了四个主维度,两组在一些具体环节上的分工也不一样:
| 差异点 | dsh 组 | Anthropic 组 |
|---|---|---|
| 路由 | 有 office 路由技能,按任务分流到子技能 |
无路由技能,三个并列,靠 description 自动分流 |
| 配置项 | 三个字段可调:assetRoot / node / cli |
零配置,复制即用 |
| 渲染验证 | 独立 office-render 技能,负责文档图像与视觉布局 |
19 个官方技能里没有独立渲染技能 |
| 公式重算 | 独立 office-recalculate,刷新公式缓存并验算 |
无对应技能 |
| 格式转换 | 独立 office-export-pdf,走 LibreOffice |
无专门转换技能 |
对使用者的实际差别:dsh 组里你说一句含糊的话(“看看这个表格”),路由技能会帮你选子技能;Anthropic 组最好直接点名(“用 xlsx 技能……”),三个名字各管一摊,点名能省掉一次试探。
选型决策
你要处理 Office 文档吗?
├─ 是 → 你主要用哪个 agent 工具?
│ ├─ DeepSeek Harness → 用自带 office-* 七件套(见第二章)
│ │ └─ 还需要在别的工具里用同一套技能?
│ │ └─ 是 → 加装 Anthropic 三件套(但别两组同时开)
│ └─ 其他工具 → 装 Anthropic 三件套
└─ 否 → 去看本章其余小节
两组不要同时开
单独强调一遍:dsh 自带组和 Anthropic 组不要同时启用。
两组的 description 覆盖同一批任务——你说“改这个 docx”,两组的描述都能命中。模型面对两个名字相似、描述重叠的技能,选哪个取决于当时的上下文噪声,这次选 A 下次选 B,行为不一致;更糟的是两组执行路径不同(一套走 dsh 的渲染与 CLI,一套走自带脚本),混用会让结果难以复现,出了问题你也说不清是哪条路径干的。选型表的意义就是让你一次选边,选完把另一组关掉。
小结
docx/xlsx/pptx是 Anthropic 官方文档三件套,目录包形态,19 个官方技能之一。- 装法核心是浅克隆加只复制三个技能目录;整仓 clone 无害但略乱。
- 与 dsh 自带
office-*四维对比:dsh 赢在深度与集成,Anthropic 赢在可移植。 - dsh 内优先用自带组;跨工具场景用 Anthropic 组;两组不要同时开。
延伸阅读
- 本章其余小节:4.2 pdf、4.3 frontend-design
- 官方自带方案:第二章 Office 技能族
- 技能安装方法:1.3 三种装法与装后验证
