PPTX Slide Generator 是一个用于生成和编辑演示幻灯片的技能,底层使用 python-pptx。它支持四类能力:幻灯片生成(为 brands/ 目录中任意品牌创建演示文稿)、轮播图生成(LinkedIn 方形格式,可导出 PDF)、幻灯片编辑(修改已有 PPTX 文件)以及布局管理(创建、编辑、更新 cookbook 布局)。
【资源位置】 所有技能资源位于 .claude/skills/pptx-generator/。查找文件时始终使用以 .claude/skills/pptx-generator/ 开头的 Glob 模式。
【关键约束:分批生成规则】
- 每批最多生成 5 张幻灯片(可以是 1 至 5 张)。
- 每批之后必须停止并校验输出。
- 校验项:标题不重复、间距正确、颜色正确。
- 校验通过后继续下一批。
- 全部批次完成后,合并为单一文件并删除分片文件。 该规则用于避免 token 超限错误并及早发现质量问题。合并后务必清理分片文件,用户最终只应看到一个 PPTX 文件。
【前置条件:品牌检查】 生成幻灯片前先检查是否存在品牌:Glob .claude/skills/pptx-generator/brands/*/brand.json。若未找到品牌(仅有 template/),则停止生成,询问用户是否先创建品牌,并说明需要品牌颜色、字体和风格指南。用户若同意,按“创建新品牌”流程操作;若拒绝,说明幻灯片需要品牌配置,可提供通用样式作后备。
【创建新品牌】
- 读取模板:brands/template/README.md、brands/template/brand.json、brands/template/config.json。
- 收集品牌信息。必需项:品牌名(文件夹名,小写无空格)、颜色(背景、文字、强调色的十六进制码)、字体(标题、正文、代码字体)。可选项:输出目录(默认 output/{brand})、Logo 路径(PNG/SVG)、品牌指南、语气风格。
- 创建品牌文件:mkdir -p .claude/skills/pptx-generator/brands/{brand-name};创建 brand.json(含 name、description、colors、fonts、assets 等字段,颜色为不含 # 的十六进制);创建 config.json(含 output、generation、defaults 设置);从模板复制并填写 brand-system.md 与 tone-of-voice.md;将 logo/图片复制到 brands/{brand-name}/assets/。
- 校验:Glob brands/{brand-name}/*,然后进入幻灯片生成。
【三种技能模式】 模式 1:生成演示幻灯片(16:9),流程为品牌发现 → 布局选择 → 内容适配 → 执行,布局位于 cookbook/.py。 模式 2:生成 LinkedIn 轮播图(1:1 方形),流程为品牌发现 → 轮播规划 → 生成 → 导出 PDF,布局位于 cookbook/carousels/.py。 模式 3:管理 cookbook 布局,执行布局增删改操作。
【模式 1 详解】 步骤 1 品牌发现:列出可用品牌并读取 brand.json(颜色、字体、资产)、config.json(输出目录、生成设置)及品牌下的 markdown 文件(语气、风格、设计理念)。若品牌不存在,列出可用品牌请用户选择。 步骤 2 布局发现(强制读取所有 frontmatter):发现所有 cookbook/.py,读取每个文件前 40 行中的 # /// layout frontmatter 块,建立布局地图,包括用途(purpose、best_for)、不建议使用场景(avoid_when)、限制(max_、min_、_max_chars)及具体说明(instructions)。只有读完所有 frontmatter 后才选择布局:用户指定则验证是否适配;用户仅描述内容则匹配 best_for;检查 avoid_when;遵守数量限制;多张幻灯片分别选型;无合适布局则创建自定义布局。 步骤 2d 视觉优先选型:默认使用视觉化布局,content-slide 是最后手段。硬性限制:同一布局连续使用不超过 2-3 次;content-slide 应少于总幻灯片数的 25%;视觉化布局(卡片、数据、分栏、主视觉、对角线)应占 50% 以上;章节分隔不计入多样性。内容类型对应推荐布局:3-5 个并列项用 multi-card-slide,恰好 3 个特色项用 floating-cards-slide,2-4 个指标用 stats-slide,前后对比用 two-column-slide,中心概念用 circular-hero-slide,1-3 个词强调用 giant-focus-slide 或 bold-diagonal-slide,名言用 quote-slide。 步骤 3 幻灯片规划(必做):生成前先写规划表,列出每张幻灯片的编号、布局、标题、关键内容和备注。规划清单包括:标题不重复、逻辑流畅、布局匹配内容、内容适配布局、每批不超过 5 张,以及多样性检查(content-slide 少于 25%、同一布局连续不超过 2-3 张、视觉化布局占 50% 以上)。规划后先简要呈现计划再生成。 步骤 4 内容适配与文本格式规则:标题和副标题不加尾随句号或逗号;要点除非是完整句子否则不加尾随句号;标题不省略号;数据格式干净;CTA 和标签不加尾随标点。避免标题/要点/标签尾随句号、标题省略号、短语中过多逗号、标签末尾冒号、要点中的分号。完整句子描述或引用可正常使用标点。
【品牌相关】 brand.json 中颜色字段包括 background、background_alt、text、text_secondary、accent、accent_secondary、accent_tertiary、code_bg、card_bg、card_bg_alt;字体字段包括 heading、body、code;assets 包括 logo、logo_dark、icon。config.json 中 output 含 directory、naming、keep_parts;generation 含 slides_per_batch(默认 5)、auto_combine、open_after_generate;defaults 含 slide_width_inches(默认 13.333)和 slide_height_inches(默认 7.5)。
资料中未提供具体价格、收费、平台限制或效果数据。