pptx
作者 anthropics使用 pptx skill 读取、创建、编辑、拆分、合并并检查 PowerPoint `.pptx` 文件。它涵盖用 markitdown 提取文本、通过缩略图审阅,以及 unpack/edit/clean/pack 流程和用 PptxGenJS 新建演示文稿。
该 skill 评分为 84/100,说明它非常适合收录到需要读取、编辑或生成 `.pptx` 文件的 agent 目录中;相比通用提示词,它能显著减少试错。仓库提供了清晰的触发条件、具体到命令层面的操作流程,以及用于解包、编辑、清理、校验和生成缩略图的实用脚本。不过,用户仍需为环境做一定的手动配置,并在编辑模板时接触较底层的 XML。
- 触发条件非常明确:`SKILL.md` 明确说明,只要输入、输出中出现 `.pptx` 文件,或提到 deck/slides/presentation,就应使用该 skill。
- 操作指引足够具体:快速参考命令覆盖文本提取、缩略图预览、原始 XML 解包、模板编辑,以及通过独立指南从零创建演示文稿。
- 具备真实可执行价值:内置 `add_slide.py`、`clean.py`、`thumbnail.py` 以及 office 的 pack/unpack/validate 工具,可明显减少手工处理 PPTX 的工作量。
- 尽管依赖 markitdown、LibreOffice/soffice、Python packages 和 PptxGenJS 等工具,但 `SKILL.md` 对安装与依赖配置的说明并不清晰。
- 模板编辑主要依赖直接操作已解包的 PPTX 内部 XML;这虽很强大,但也会提高复杂度,并增加非技术用户的上手与采用风险。
pptx skill 概览
pptx skill 适合做什么
pptx skill 适用于所有需要读取、创建、编辑、拆分、合并 PowerPoint .pptx 文件,或把它作为模板来使用的工作流。它不是单纯的提示词套路,而是一个真正可执行的 pptx skill:会把你带到具体命令和辅助脚本上,用来提取内容、生成幻灯片缩略图、解包 Office XML 结构、安全编辑,并最终重新打包演示文稿。
最适合哪些用户
这个 skill 特别适合那些需求不只是“帮我做几页 slides”的用户:
- 需要从 deck 中提取文本或结构的分析师
- 要更新既有品牌模板演示稿的团队
- 需要把一个 deck 转换成另一个 deck 的 agent
- 在没有模板时从零创建新演示稿的用户
- 能接受围绕
.pptx使用 Python 或 JavaScript 工具的开发者
真实要解决的任务
大多数用户并不只是想要“PowerPoint 帮助”。他们通常要的是以下两类结果之一:
- 快速弄清一个 deck 里到底有什么,或者
- 在不破坏版式、引用关系和封装结构的前提下修改一个 deck。
pptx skill 的价值在于,它把这几条路径分得很清楚:检查内容时用 markitdown 和缩略图;基于模板编辑时用 XML 解包 / 编辑 / 清理 / 重新打包;从零创建时则用 PptxGenJS。
pptx 和通用提示词有什么不同
通用 AI 提示词可以帮你起草幻灯片文案,但通常无法稳定保留真实演示文件的结构。pptx skill 提供的是一条可执行路径:
- 用
python -m markitdown presentation.pptx提取文本 - 用
python scripts/thumbnail.py presentation.pptx检查视觉布局 - 用
python scripts/office/unpack.py ...和pack.py做底层编辑 - 用
python scripts/clean.py unpacked/清理孤立文件 - 用
pptxgenjs.md走代码生成 deck 的路径
所以,当你在意格式、模板还原度,或者需要对 deck 做“手术式”修改时,pptx for PowerPoint 会特别有用。
安装前需要知道的关键取舍
当你需要可预测、可控地处理 .pptx 文件时,这个 skill 很强;但如果你只是想要一些幻灯片文案,不关心输出文件结构,它就未必是最合适的选择。它也默认你愿意接受基于文件和脚本的工作流。若你的目标只是写出更 polished 的演示内容,普通 prompting 往往更快;如果你要保住一个真实 deck 的结构和可用性,那么 pptx skill 更值得装。
如何使用 pptx skill
pptx 的安装与起步
先在兼容 skills 的环境中安装:
npx skills add https://github.com/anthropics/skills --skill pptx
安装后,先打开 skill 目录,优先阅读这些文件:
SKILL.mdediting.mdpptxgenjs.mdscripts/thumbnail.pyscripts/add_slide.pyscripts/clean.py
这个阅读顺序对应的就是实际决策流程:先检查,再选编辑路径,最后使用合适的工具。
先决定你要走哪条 pptx 使用路径
在动手编辑之前,先判断哪种模式最适合你的任务:
- 读取 / 分析内容:使用
markitdown和缩略图生成 - 编辑现有 deck 或模板:使用 unpack / edit / clean / pack
- 从零创建 deck:走
pptxgenjs.md中的PptxGenJS路径
这是上手这个 skill 最大的捷径。很多失败的 pptx usage,问题都出在把模板编辑和从零生成混在一起用了。
快速读取 deck 内容
做内容提取时,先从下面开始:
python -m markitdown presentation.pptx
适合这些场景:
- 提取幻灯片文本做总结
- 查找 placeholder 文本
- 快速盘点内容
- 规划 notes 或文案迁移
然后再加上:
python scripts/thumbnail.py presentation.pptx
文本视图告诉你 deck“说了什么”;缩略图网格则告诉你它“长什么样”。两者结合,能在你开始编辑前大幅减少盲改。
编辑布局前先生成缩略图
thumbnail.py 是这个 skill 里最实用的部分之一,因为它能把布局选择这件事直接可视化。它会按 XML 文件名给幻灯片打标签,这一点在后续编辑 slide{N}.xml 时非常关键。做模板类工作时,最好先生成缩略图,把每个内容板块映射到合适的现成布局,而不是整份 deck 都套同一种通用 slide 类型。
安全地编辑现有演示稿
对于基于模板的编辑,仓库推荐的工作流是:
- 用
markitdown和thumbnail.py分析源 deck - 解包 deck:
python scripts/office/unpack.py template.pptx unpacked/ - 先做结构调整
- 再编辑 slide XML 内容
- 清理解包目录:
python scripts/clean.py unpacked/ - 重新打包:
python scripts/office/pack.py unpacked/ output.pptx
这个顺序很重要。很多用户把结构修改放到文本编辑之后,结果往往会引入失效引用,或者做了大量无用返工。
先改结构,再改内容
pptx skill 明确建议先把 deck 结构处理完:
- 通过更新
<p:sldIdLst>删除不需要的幻灯片 - 用
scripts/add_slide.py复制一页 slide - 在需要时基于某个 layout 新建 slide
- 在最终替换文本前完成 slide 顺序调整
这很务实,因为在深入改内容之前,slide 编号、关系引用和结构依赖都更容易管理。
克隆布局时优先使用 add_slide.py
scripts/add_slide.py 适合两个高频场景:
- 复制现有 slide,例如
slide2.xml - 基于某个 layout 创建新 slide,例如
slideLayout2.xml
这比手动复制 XML 文件更稳妥,因为脚本遵循了这个 skill 的封装逻辑,还会输出你需要加入 presentation.xml 的 <p:sldId> 元素。
没有模板时,用 PptxGenJS 从零创建
如果手头没有可复用的模板,就切换到 pptxgenjs.md 这条路径。它特别适合以下情况:
- 你可以完全控制整份 deck 的设计
- 品牌约束较轻
- 比起匹配现有文件,更看重复用和可批量生成
- 你希望输出来自代码,而不是 XML 手工改造
这份指南里还有很多真正影响结果的细节,比如 slide layout、坐标系统,以及文本格式上的一些坑,例如要用 charSpacing,而不是那些不受支持的替代写法。
什么样的输入更强
一个较弱的请求是:
- “帮我做一个 10 页市场趋势 deck。”
一个更强的 pptx guide 输入会像这样:
- audience:企业采购方
- purpose:董事会更新,以决策为导向
- target length:8 页
- style:使用现有模板,避免密集 bullets
- source materials:markdown brief,加一个现有
template.pptx - required sections:summary、market size、risks、recommendation
- visual preference:在数据、引用、对比这几类布局之间交替使用
这样效果会更好,因为 skill 可以把内容映射到不同布局,而不是把所有想法都硬塞进“标题 + bullets”的 slide 里。
适合模板型 pptx usage 的调用方式
高质量调用通常会包含:
- 明确的
.pptx输入文件 - 你需要的是提取、编辑还是创建
- 品牌是否必须保持不变
- 哪些 slides 要复用,哪些要替换
- notes、comments 或 hidden slides 是否需要处理
- 期望输出的最终文件名
示例:
“Use the pptx skill to update Q2-template.pptx. First extract text and generate thumbnails. Reuse varied layouts, not repeated bullet slides. Add 3 new slides for pricing, risks, and rollout. Preserve branding. Output an updated .pptx and summarize which source slide layouts were reused.”
值得按顺序阅读的仓库文件
如果你想更快上手,建议按这个路径看:
SKILL.md—— 命令级入口editing.md—— 模板编辑工作流与布局建议pptxgenjs.md—— 从零创建路径scripts/thumbnail.py—— 视觉检查是怎么做的scripts/add_slide.py—— 幻灯片复制与基于 layout 的创建scripts/clean.py—— 编辑后的清理逻辑
如果你是在排查封装或打包问题,再继续查看:
scripts/office/unpack.pyscripts/office/pack.pyscripts/office/validators/pptx.py
会影响是否采用的实际约束
做这个 pptx install 决策前,最好把这些现实因素考虑进去:
- 这是一个以文件和脚本为中心的工作流,不是纯对话式操作
- XML 层编辑很强,但也比纯文本生成更容易弄坏
- 模板本身的质量会明显影响最终输出质量
- 缩略图流程可能会受到 LibreOffice 相关转换行为影响
- 输入过于粗糙时,最终 slide 映射通常会比较单调
如果你的目标是精准复用企业模板,这个 skill 很合适;如果你只给很薄的输入,却希望得到高质量原创设计,那就要预期更多轮迭代。
pptx skill 常见问题
pptx 对新手友好吗?
友好,前提是你的第一个使用场景是“检查”而不是“编辑”。先从 markitdown 和 thumbnail.py 开始。编辑解包后的 XML 确实更进阶,但这些工作流文件能显著减少你自己摸索 Office 内部结构时的试错成本。
什么时候该用 pptx,而不是普通的写 slides 提示词?
当“文件本身”很重要时,就用 pptx:例如要保留模板结构、从真实 deck 中提取内容、原位修改 slides,或者打包出一个有效的 .pptx。如果你只是想要大纲或文案,不需要处理文件,那普通提示词就够了。
这个 pptx skill 只能用来编辑现有 deck 吗?
不是。它同时覆盖基于模板的编辑和从零创建。你有模板时看 editing.md;没有模板时走 pptxgenjs.md 里的 PptxGenJS 工作流。
pptx for PowerPoint 也适合用来读 deck 吗?
是的。使用这个 skill 的一个很强理由,就是能更快地读取和分析 deck。markitdown 负责提取文本,thumbnail.py 则提供布局和 hidden slides 的可视化盘点。
这个 skill 的主要边界在哪里?
它并不会消除 PowerPoint 内部结构本身的复杂性。你仍然需要合理选择布局、有意识地组织内容,并检查最终 deck。它是工作流加速器,不是“自动保证演示稿很专业”的承诺。
什么情况下 pptx 不适合?
如果你符合下面这些情况,就可以跳过这个 skill:
- 你只需要一个叙事型大纲
- 你不需要
.pptx输出 - 你不愿意运行脚本或检查文件
- 你更看重原创设计,而不是保留现有演示结构
这个 skill 支持批量或并行工作吗?
部分支持。editing.md 里的工作流建议在结构定稿后,按 slide XML 层面并行编辑,因为每张 slide 都是单独文件。这对大型 deck 修订会明显提速。
如何改进 pptx skill 的使用效果
先准备更好的源材料
想提升 pptx 的结果,最快的方法是提供:
- 一份真实模板 deck
- 清晰的 section-to-slide 映射
- 每页 slide 对应的源文案
- 每个 section 的视觉优先级
- 任何必须保留的 speaker notes 或 comments
没有这些,skill 依然能工作,但在 slide 选择和内容密度控制上会弱很多。
让内容匹配布局,而不是反过来
仓库里的编辑指导特别指出了一个真实失败模式:整份演示稿过于单调。要改善结果,就要明确要求使用多样化布局:
- 用对比页呈现 tradeoff
- 用图文页讲产品故事
- 用 quote slides 放客户证言
- 用数字强调页展示 KPI
- 用 section divider 控制节奏
这是提升 pptx skill 效果最有杠杆的一类改进。
先检查,再修改
更好的工作流是:
- 提取文本
- 生成缩略图
- 把内容映射到布局
- 然后再编辑
跳过检查步骤的用户,常见问题是改错 slide,或者忽略了模板里其实已经有更合适的布局。
把结构编辑和文本编辑分开
先完成所有 slide 的复制、删除和排序,再改内容。这样可以减少失效引用,也避免你先改了某些 slide,结果后面又把它删掉。这是 skill 内置流程里最明确、也最值得遵守的改进点之一。
给出精确到 slide 层级的指令
不要只说:
- “优化这个 deck。”
更好的说法是:
- “Reuse
slide3.xmlfor the KPI summary.” - “Duplicate the 2-column layout for customer segments.”
- “Replace text only; preserve theme and geometry.”
- “Create one new section divider between slides 5 and 6.”
这类指令更符合 pptx usage 工作流实际运作的方式。
留意常见失败模式
常见问题包括:
- 过度使用 bullets 很重的布局
- 还没决定 slide 顺序就先改内容
- 忘记运行
clean.py - 明明模板里已有合适 layout,却新建了风格不匹配的 slide
- 只看提取文本,不检查视觉结构,就以为信息已经足够
这些问题最容易削弱用户对输出结果的信任。
用面向代码的提示改进从零生成
如果你使用 PptxGenJS,建议明确说明:
- 宽高比,例如
LAYOUT_16x9 - 坐标是否需要保持一致复用
- 字体和颜色约束
- 文本框内边距预期
- 是否需要 rich text 或 multiline text
附带的指南里已经点出了很多会实质影响输出质量的实现细节,比如正确处理 multiline,以及 spacing 相关选项。
第一轮输出后要做质量校验
在生成或编辑完成后,检查这些点:
- slide 多样性是否足够
- 文本是否出现视觉溢出
- hidden 或 notes 相关内容是否处理正确
- 打包结果是否还能在 PowerPoint 中正常打开
- 这个 deck 讲述的是否是一个连贯故事,而不只是一个结构有效的文件
一个好的 pptx guide 工作流,会把第一次输出当成待打磨的草稿,而不是终点。
用配套脚本,不要手动清残局
如果你是手动编辑解包后的文件,请使用清理和打包工具,不要自己手动 zip 文件夹。脚本化路径存在的意义,就是为了清掉孤立 slides、过期关系引用和残留 content-type 项,这些问题都很常见,也最容易让演示稿损坏。
在提示词里明确交付物
想让 pptx 的结果更稳定,可以在请求结尾直接写明具体交付物:
- 更新后的
client-review.pptx - 提取出的 markdown 摘要加缩略图
- 一个新的 8 页
.pptx,使用LAYOUT_16x9 - 保留模板风格并插入 3 页新 slide 的修订版
这个小调整能帮助 skill 更快选对路径,减少执行上的歧义。
