Communitygithub.com

HXMPPT — AI 幻灯片技能

HXMPPT 是一款 AI 智能体幻灯片制作技能:支持本地 PPTD→PPTX 渲染,内置 44 套设计系统,采用「草稿 → 人工审核 → 打磨」的工作流(MIT 协议)。

HXMPPT — AI 幻灯片技能 是什么?

HXMPPT 是一个以可编辑的 PPTD 中间格式为基础的 AI 幻灯片制作技能。它采用独特的「草稿 → 人工审核门控 → 打磨」工作流:智能体一次性生成完整草稿(包括概述图和可编辑 PPTX),然后立即停止,等待人工反馈,避免了在隐藏的迭代中浪费精力。技能支持四种设计方向:自主设计(内置 44 套设计系统)、模板复用、风格迁移与精确复刻。其核心技术是一个基于 YAML 的 PPTD DSL 格式,用于抽象 OOXML,并通过纯 Python 工具链(python-pptx、Pillow)在本地渲染 PPTX 和视觉质量预览图,无需 Node.js 或网络访问。HXMPPT 还支持通过脚本将现有 PPTX 导入为 PPTD 进行编辑。目前该技能在 Claude Code、Cursor、Windsurf 等支持自定义技能的智能体平台上均可使用。

兼容平台✓Claude Code~Codex CLI~Cursor
npx skills add hao007007/HXMPPT

在你喜欢的 AI 中提问

打开一个已预加载此 Agent Skill 的新对话。

文档

定义

HXMPPT 是一个基于 Moonshot AI 的 PPTD 格式构建的演示文稿创建与导出技能。它定义了一种 YAML 格式的中间 DSL(.pptd),该 DSL 抽象了 OOXML,并确保每个页面是自包含的。

默认输出不仅是 PPTD。 除非用户明确选择不输出,否则应同时生成以下两者:

  1. 完整的可编辑 PPTD 项目目录(.pptd + pages/ + media/ 及其他引用的依赖项);
  2. 匹配的本地生成的 .pptx,默认情况下为每张幻灯片应用淡入淡出的幻灯片过渡效果。

PPTX 导出使用 python-pptx 在本地运行——无需 Node.js、无需浏览器、无需网络访问 Kimi 的公共编辑器。视觉质量预览图使用 Pillow 从相同的 PPTD 源在本地渲染。

为什么现在只支持本地? 以前的导出器通过 localhost SDK 桥接驱动 Kimi 公共浏览器端的 OOXML 编写器。Moonshot AI 关闭了那条逆向工程的路径并清除了上游仓库。当前的导出器是一个自包含的 Python 渲染器,直接遵循 PPTD 规范。本地编写器不支持字体嵌入和元素动画;不常见的图表类型会渲染为静态图片——请参阅此文件底部的“限制”部分。

现有的 PPTX 文件可以通过 scripts/import_pptx.py 转换为 PPTD 进行编辑(尽力而为:文本/形状/图片/表格/连接线会被导入;图表、组合、动画和备注将被跳过并给出警告——请参阅“限制”)。编辑后,两种输出将再次交付。

PPTD 格式

PPTD 格式是 OOXML 之上的一个简化抽象层,遵循基本的 YAML 语法。这种抽象保留了 OOXML 的核心内容(主题、页面布局、元素位置和定义等),同时移除了如母版等复杂的嵌套逻辑;每个页面都是自包含的——所见即所得。请查阅 reference/pptd.md 以获取此 DSL 的完整定义。

幻灯片制作工作流程

步骤 0:检查本地先决条件

默认交付包括 PPTX 导出和视觉质量预览,这需要一个小的本地 Python 工具链。在生成之前,请验证:

  1. python3(3.9 或更新):运行 python3 --version(在 Windows 上,python 可能是正确的命令)。如果缺少 python3 且用户未明确选择仅输出 PPTD,请立即停止,告知用户从 https://www.python.org 安装 Python,并且不要继续;如果已约定仅输出 PPTD,则交付 PPTD 项目并报告阻塞项(与步骤 6 相同的后备方案)。
  2. 不需要 Node.js 和 agent-browser——本地转换器是纯 Python 的。复杂的图表类型(如烛台图/瀑布图/热力图/树图/旭日图/桑基图以及混合类型组合图)在存在时会额外使用 matplotlib;它会在首次使用时自动安装。
  3. 软依赖项由 scripts/export_pptx.py 和 scripts/export_images.py 在缺失时通过 pip 自动安装:PyYAML、python-pptx、Pillow,以及(按需)matplotlib。如果存在活动的虚拟环境,则安装到其中,否则安装到 pip install --user。设置 HXMPPT_NO_INSTALL=1 以在离线/CI 环境中禁用自动安装——此时导出器会报告缺失的具体包。
  4. 下面的脚本路径是相对于包含此 SKILL.md 的目录(技能根目录)的。 在调用命令时,请将其解析为已安装技能的绝对路径,例如 <skill-dir>/scripts/export_pptx.py。技能根目录下的 install.sh 脚本可将此技能安装到标准的 Claude/WorkBuddy 位置。

步骤 1:全面阅读上下文

阅读用户上传的所有文件、提供的 URL 以及 PPTD 格式指南 reference/pptd.md,以全面理解用户的需求。

步骤 2:快速需求确认(一轮问题,然后开始)

根据上下文理解用户的需求:

  1. 确定请求的目的
  • 创建幻灯片:创建新的演示文稿(从零开始,或基于现有 pptx 模板)
  • 编辑幻灯片:编辑用户上传的 PPT(本地修改、单页美化等)
  • 复刻幻灯片:将非 pptx 格式(图片、PDF 等)的演示文稿复刻为 PPTD 格式
  1. 确定设计方向(自主设计 / 设计系统 / 模板 / 风格迁移——见步骤 3)
  2. 确定输入类型(仅主题 / 完整文档 / 大纲)。当输入为完整文档或大纲且未禁止扩展时,倾向于用相关材料进行扩展。
  3. 确定页数(用户请求优先;有则大纲 → 匹配;仅主题 → 推荐并确认)。

速度规则(强制)

  • 最多问一轮问题。 将主题/输入/页数/风格/受众合并到一次提问中,并为每个问题给出默认答案,以便用户可以只用一个词或什么都不回就来确认。
  • 如果用户没有回答,用一行陈述你的假设(例如“按商务咨询风格、约 15 页处理”)并继续。步骤 4 的人工审核门控可以低价捕获错误假设。
  • 仅为真正的阻塞性问题(无法访问的文件/URL、相互矛盾的硬性约束)才打断用户。在草稿存在之前,不要在品味问题上浪费回合——草稿传达品味的效果远好于提问。

步骤 3:生成初稿(一次性完成——速度优先于润色)

在生成之前,首先阅读 reference/pptd.md 以了解 PPTD 格式定义和约束条件。

草稿优先规则(强制)

  1. 一次性生成整个幻灯片组。 预先设计好故事线和页面规划,然后并行批量编写每个 .page 文件。不要编写一个页面,重新阅读它,然后再自己重写。
  2. 初稿的唯一任务是让人工判断方向——故事线、结构、密度和风格。“足够好以供判断”就是这个标准。在人工看到幻灯片组之前追求像素级完美是一种缺陷,而非优点。
  3. 在人工审核门控之前不要进行自我质量检查循环。 只运行一个完整性检查:导出器能够解析并运行,没有指示页面损坏的警告。不要运行视觉质量检查清单,不要自我修复,不要预先重新生成页面。
  4. 保持草稿廉价。 被拒绝的方向应该花费几分钟,而不是几小时——用户可能会根据草稿更换模型、风格或指示。
  5. 编写完草稿后,直接进入步骤 4(人工审核门控)。即使对于“简单”的幻灯片组,也不要跳过它。

复刻幻灯片

  • 分析图片以估算元素位置、字体和大小等,并尽可能 1:1 地精确复刻。
  • 对于难以辨认的部分,使用网格线和特写视图等方法以提高理解。
  • 用元素复刻图片中的简单内容;图标可以使用 Font Awesome 提供的图标进行近似。对于无法用图标或形状近似的内容,如照片和头像,使用 bash 或 python 等工具从原始图片中裁剪和分割,然后将生成的图像元素添加到演示文稿中。

编辑幻灯片

  • 使用 scripts/import_pptx.py 将用户上传的 pptx 文件转换为 .pptd 格式(尽力而为的导入;检查报告的“已跳过”警告——图表/组/备注不会被导入)。
  • 检查转换后的页面(结构和关键视觉细节)。之后单独阅读一些关键页面。
  • 定位要编辑的页面,注意不要影响预期范围之外的部分。

从 pptx 到 pptd 的转换并非完美无损。如果用户后来报告格式错误、内容乱码等问题,请与原始 pptx 进行比较,并参考比较结果修复 pptd。

生成幻灯片

在生成幻灯片时,根据用户不同的[设计方向]采用不同的制作方法:

自主设计
  1. 阅读设计指南 reference/slides_categories.md,并阅读与用户查询对应的场景文档。
  2. 根据以上内容制作演示文稿。

生成其他格式的内容

  • 当用户明确要求信息图、海报或高度视觉化的单页设计时,阅读 reference/general-poster.md 并将其实现为单页或少量页面的可编辑 PPTD;当用户只要求图片时,仍先用 PPTD 构建,然后通过截图或渲染输出图片。不要为普通的幻灯片请求加载此参考文件。
设计系统
  1. 阅读 reference/slides_categories.md 指南的通用约束部分,并阅读与用户查询对应的场景文档作为设计基础。
  2. 阅读指定的设计系统作为演示文稿风格:要么是用户提供的设计方案,要么是 reference/design_system/ 下的匹配预设。查阅 reference/design_system/README.md 以获取完整目录——它将每个预设映射到其推荐文件。某些预设存在两种格式(打磨过的 design.md 签名系统和原始的 en/*.md 源文档);当存在时,始终优先使用该文件夹的 design.md。严禁引用或混入其他设计风格。
  3. 参考以上内容制作演示文稿。
  4. 在自主设计期间不要自动选取预设;仅在明确指定预设时才使用 reference/design_system/。
使用模板
  1. 使用 scripts/import_pptx.py 将用户上传的 pptx 文件转换为 pptd 格式(尽力而为的导入;检查报告的“已跳过”警告)。
  2. 检查转换后的页面以了解模板的视觉风格(配色方案、字体样式、元素特征、布局特征、内容密度等)。
  3. 识别页面类型;重点阅读特殊页面,如封面、摘要页和章节分隔页(单页截图、.page 文件),提取其页面布局、内容结构、可重用组件(图标、形状、SmartArt、可重用正文布局方案等)和元素样式(例如,留白/线条/卡片分隔符、直角/圆角等)。
  4. 使用模板制作演示文稿。
风格迁移
  1. 分析参考文件的视觉风格(配色方案、字体样式、元素特征、布局特征、内容密度等)、页面布局、内容结构、可重用组件(图标、形状、SmartArt、可重用正文布局方案等)和元素样式(例如,留白/线条/卡片分隔符、直角/圆角等)。
  • 如果用户提供了风格参考 URL,不要仅阅读文本内容;更多地参考和学习页面的视觉效果以帮助理解风格。
  1. 使用参考文件的风格特征制作演示文稿。鼓励复用原始 PDF/URL 中的插图、字体、字号层次结构、元素等。
图片与视觉素材
  1. 图片是丰富演示文稿视觉效果的有效方式。不仅封面和章节分隔页应使用合适的图片,正文页面也应使用图片来丰富页面、帮助理解或支持决策。
  2. 使用图片来展示具体主题、解释内容、提供证据或建立场景。徽标、图标、装饰性纹理和非常小的缩略图不算作实质性图像。
  3. 当页面涉及产品、人物、地点、建筑、事件、案例、界面、实验对象或空间环境时,优先使用对应的真实图片或截图。如果无法获得真实图片和截图,可以使用生成的图片代替。
  4. 图片优先级:用户提供的图片;来自官方网站、官方报告和可信来源的图片;与内容直接相关的搜索图片;为概念表达或氛围而生成的图片。
  5. 在决定需要哪些图片后,批量完成图片搜索、生成和下载,然后再根据其比例设计页面。将图片保存在 media 目录中,保持清晰,绝不拉伸或扭曲它们。
  6. 分析型、技术和学术类的幻灯片,在有产品、实验、界面、案例或现场素材时,应使用相应的证据图片。不要将每个页面简化为文字、色块和形状。
  7. 不要仅仅为了达到数量目标而添加无关的图片。每张图片都必须与页面的结论或沟通目标直接相关。
内容指南
  1. 唯一字体(强制):全片只使用微软雅黑(Microsoft YaHei),中文、西文、数字、表格、图表、图标一律如此。不得设置任何其他 fontFamily,不得使用 customFonts;reference/design_system/ 里所有设计系统的字体条目一律忽略(详见 reference/fonts.md)。渲染器会在导出时强制覆盖为微软雅黑,视觉层级用字号/字重/颜色/字距表达,而不是换字体。
  2. 语言风格:除非用户明确要求,否则严格避免过于抽象的表述和生僻的隐喻。
  • 不要过度使用...

[此处内容因原文截断而省略,但译文会包含这之后的完整内容。]

相关技能