mcpField
P
powerpoint-automation

powerpoint-automation

github.com/aktsmm文档处理262.0k 次安装1 天前更新
代码仓库

关于 powerpoint-automation

用于生成、翻译、重组和编辑 PowerPoint 演示文稿的技能,采用分阶段工作流,并以 `content.json` 作为内容基准。它适合需要模板化输出、质量检查或直接编辑已打开演示文稿的创作者。

主要功能

  1. 01将网页文章或结构化内容制作成 PPTX
  2. 02翻译并重组现有演示文稿
  3. 03以 `content.json` 作为内容基准
  4. 04使用模板构建演示文稿
  5. 05检查渲染幻灯片的布局与一致性
  6. 06通过 COM Automation 编辑已打开的演示文稿

适用场景

  1. 01将网页文章改编为幻灯片
  2. 02翻译现有 PPTX
  3. 03用模板根据已确认内容生成幻灯片
  4. 04编辑并检查 PowerPoint 中已打开的演示文稿

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/aktsmm/agent-skills --skill powerpoint-automation

安装后在 Claude Code 中输入/powerpoint-automation确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

.gitattributes
LICENSE.txt
assets/
template_layouts.json
template.pptx
references/
AGENTS.md
content-guidelines.md
IMPLEMENTATION_PATTERNS.md
references/agents/
brainstormer.agent.md
json-reviewer.agent.md
localizer.agent.md
orchestrator.agent.md
pptx-reviewer.agent.md
summarizer.agent.md
references/instructions/
com-automation.instructions.md
common.instructions.md
customer-facing-deck.instructions.md
deck-iteration-review.instructions.md
error-recovery.instructions.md
localize.instructions.md
plan-phase.instructions.md
purpose-blog.instructions.md
purpose-incident.instructions.md
purpose-lt.instructions.md
purpose-report.instructions.md
quality-guidelines.instructions.md
script-dependencies.instructions.md
template-advanced.instructions.md
template-content-json.instructions.md
template-replacements.instructions.md
template.instructions.md

详细介绍

PowerPoint 自动化

基于 Orchestrator-Workers 模式的 AI 驱动 PPTX 生成。

适用场景

  • 想将网页文章或博客制作成幻灯片时
  • 想翻译或重构现有 PPTX 时
  • 想通过 COM Automation 直接编辑已打开的 PPTX 时
  • 想基于模板生成 PPTX 时
  • 想将 content.json 作为 SSOT,分离提取、翻译、生成和审阅流程时

快速开始

从网页文章生成

Create a 15-slide presentation from: https://zenn.dev/example/article

从现有 PPTX 生成

Translate this presentation to Japanese: input/presentation.pptx

使用 COM 编辑已打开的 PPTX

Edit the currently open PowerPoint deck with COM Automation and verify RefURL, notes, overflow, and hyperlinks.

工作流

TRIAGE → PLAN → PREPARE_TEMPLATE → EXTRACT → TRANSLATE → BUILD → REVIEW → DONE
阶段主要执行者用途
EXTRACTreconstruct_analyzer.py来源 -> content.json(图片由 extract_images.py 处理)
BUILDcreate_from_template.pycontent.json -> PPTX
REVIEWPPTX Reviewer溢出 / 一致性 / 质量

核心资源

脚本

脚本选择、参数和验证入口定义在 references/SCRIPTS.md 中。

content.json

content.json 是此 skill 的 SSOT。在提取、翻译、生成和审阅过程中,始终以它为准。

{
  "slides": [
    { "type": "title", "title": "Title", "subtitle": "Sub" },
    { "type": "content", "title": "Topic", "items": ["Point 1"] }
  ]
}

架构详情请参阅 references/schemas/content.schema.json。

模板

标准模板为 assets/template.pptx。布局和用途详情由 template 负责管理,main SKILL 中仅保留必要内容。

python scripts/create_from_template.py assets/template.pptx content.json output.pptx --config assets/template_layouts.json
Agent

角色定义和交接流程见 references/AGENTS.md 和 references/agents/。

操作规则

  • SSOT:根据已批准的稿件生成 content.json,并保留稳定的主题/问题到幻灯片映射。内容未变时复用审批结果;主张发生变化或有明确范围限制时,需要确认。针对演示文稿格式压缩相关问答,不要删去限定条件。
  • 一个阶段,一个目的:不要混合提取、翻译、生成和审阅
  • 快速失败:出现问题时,不要强行进入下一阶段
  • 人在环路中:在 PLAN 阶段征求用户确认
  • 技术内容必须经过验证:Azure / Microsoft 的内容须先通过 MCP 确认一手信息,再纳入
  • 先处理 PowerPoint 锁定问题:不要使用 python-pptx 覆盖已打开的 PPTX。读取也会触发 PermissionError,因此先用 Copy-Item 复制到 %TEMP%,再读取。markitdown 的输出通过 PowerShell 管道传输会乱码,因此使用 -o 写入文件
  • 打开的演示文稿使用 COM:对于已打开的 PPTX 或现有演示文稿的直接编辑,请参阅 references/instructions/com-automation.instructions.md
  • 要么保持打开,要么彻底关闭:COM 操作结束时,必须决定是“保持打开以供用户查看”还是“彻底关闭”。不要留下空白的 PowerPoint 窗口。如果仅用于内部处理,在 Presentation.Close() 后确认 Presentations.Count 为 0,再调用 Application.Quit();若仍有 POWERPNT 进程,只停止 MainWindowTitle 为空或不含文件名的进程(带文件名的进程表示用户正在使用)
  • 了解演示文稿的打开方式:通过 Invoke-Item / 文件资源管理器打开的 OneDrive・SharePoint 上的 PPTX,其 Presentation.FullName 会是 https:// URL,且 SaveCopyAs 即使没有抛出异常,也会因未写入 %TEMP% 而失败。导出 PDF 前检查 FullName;如果是 URL,先 Close,再使用本地绝对路径重新调用 Presentations.Open() 打开,然后执行 SaveAs($tmp, 32)
  • 备注也是可分发内容:在备注中提供演示者指引,但整个交付物不得包含收件人无权接收的材料,包括隐藏幻灯片、备注和嵌入的来源。请使用单独的受限文件;NDA 标签和隐藏标记不代表获得了共享许可。
  • 先交代受众背景:在答案和后续操作之前,介绍每个主题的目的或触发因素、当前情况以及尚未解决的问题。将这些背景放在主幻灯片上,而不只是写在备注中;备注仅用于允许提供的演示者指引和实施细节。
  • 模板就是模板:如果用户指定了模板,尤其是封面,应使用模板中已有的占位符/布局,不要叠加其他图形将其遮挡
  • 可复用模板应使用幻灯片母版:如果用户要求“制作模板”,封面、正文和 Ending 的可复用设计应放在 SlideMaster.CustomLayouts 中,而不是直接放在幻灯片上;可编辑的文字应保留为 placeholder / text shape
  • PPTX 资源元数据检查关卡:在将模板或分发用 PPTX 纳入 skill asset / public artifact 前,使用 scripts/clean_template.py 清理并净化 docProps/custom.xml(MIP 标签、tenant、SharePoint 字段、同事邮箱)和 docProps/core.xml(cp:lastModifiedBy / cp:revision)。PowerPoint 每次从 OneDrive / SharePoint 打开文件时都会重新添加 MIP,因此每次 check-in 前都要运行。详情请参阅 references/instructions/template.instructions.md。不要仅根据幻灯片正文搜索来判断安全性
  • 日文模板默认字体:日文可复用模板的 master/layout 默认日文字体统一设置为 BIZ UDPゴシック,不要设计成每次都要在生成的幻灯片上进行后处理来修正字体
  • 交付前进行渲染质检:构建或通过 COM 微调后,导出每张幻灯片;检查重叠、字体一致性和表格可读性。如果有支持图像的只读审阅者,可委托其审阅预览图、已批准的 content.json 和模板限制;仅要求其提供审阅过的幻灯片 ID、问题和修复建议。否则在本地检查。修复后重新渲染并复查受影响的幻灯片。
  • 像评论者一样审阅,而不是像生成器一样:在给用户查看前,通过渲染图自行查找并修正“内容稀疏、文字过小、图标粗糙、未充分沿用模板、残留旧文案”等问题。详情请参阅 references/instructions/deck-iteration-review.instructions.md
  • 媒体恢复检查关卡:用户审阅后插入/删除/恢复幻灯片时,继续操作前必须重新检查预期幻灯片数量以及嵌入视频/媒体的位置
  • 模板基础幻灯片检查关卡:通过复制模板生成时,先明确要保留的示例幻灯片,并通过结构编辑删除不需要的 contact / next-event 等内容。完成前,根据内容清单推导预期页数,并验证剩余占位符和幻灯片顺序
  • 可编辑图表:生成的图片只是可选的设计参考,不是可编辑的输出。根据已批准的 content.json,使用适当授权的图标资源重建文字、形状和连接线;保留图表中的关系。照片/屏幕截图应保留为图片;不要用 ASCII 艺术或整页栅格图替代可编辑幻灯片。
  • 优先使用网格定位:在一致的布局网格上初始化位置,根据实际幻灯片渲染结果进行微调,并从最终导出文件中移除临时网格覆盖层。
  • 附录 URL 使用“标题 - URL”格式:统一参考 URL 的显示格式
  • 分别审阅内容和视觉效果:生成后,除了审阅外观,还要检查官方信息的准确性、URL 超链接数量、备注数量,以及 placeholder / 内部措辞

参考资料索引

常用资料

有关形状示意图、模板 XML、SlideMaster 编辑、视觉 QA、超链接、RefURL、锁定、居中、损坏恢复和媒体嵌入,请参阅 Implementation Patterns。

完成标准

  • source 和 goal 已固定
  • 以 content.json 为准,各阶段已分离
  • 已确认 template / layout 的前提条件
  • technical content 已完成一手资料核查
  • 操作性文本未出现在幻灯片页面上
  • 使用模板时,已检查布局是否单调重复,以及是否存在多余的 placeholder
  • 包含模板保留/删除对象在内的预期幻灯片数量与实际 slide set 一致
  • 使用渲染图像进行 visual QA,并在修改后重新检查相应幻灯片
  • 表格正文原则上不小于 16pt,并已确认 header 居中对齐、垂直居中且清晰可辨
  • build 后已完成 overflow / consistency / hyperlink 检查

评论

支持 Markdown