包含 extensions、skills、prompts、settings、auth、models、mcp 等配置。 排除 node_modules、npm 缓存、sessions 等运行时数据。
16 KiB
模板指南:选用、派生与边界
PPT Master 的"模板"是一份结构 + 风格的预设包:包含若干页面布局 SVG(封面/章节/目录/内容/结尾及其变体)、design_spec.md 设计规范,以及配套素材(logo、背景、装饰图)。它不是 PPTX 母版,也不是单纯的配色方案——而是一组可被工作流直接复用的页面骨架。
本文回答三个问题:
一、选用已有模板
触发方式
工作流默认走自由设计——不会主动问你要不要用模板,也不会基于内容主动推荐模板。模板是 opt-in 的,只接受显式目录路径:你在第一条消息里把模板目录的路径写出来。
怎么触发模板流程
在对话里把模板目录的路径写进去(位置不重要,只要明确即可):
"用这个模板做:
skills/ppt-master/templates/layouts/academic_defense/" ✅ "用上次那个模板:projects/last_deck/template/" ✅ "做一份产品介绍,模板用/Users/me/Desktop/our_brand_v3/" ✅
AI 会把这个目录里的 SVG、design_spec.md 和素材复制到项目目录,然后进入 Strategist 阶段。路径可以是任意位置——内置库的 skills/ppt-master/templates/layouts/ 下、上一个项目的 template/ 文件夹、或者磁盘上其他任何地方都行。
什么不会触发模板流程
- 只写模板名、不给路径:"用 academic_defense 模板" / "做一份 招商银行 模板的产品介绍" → 走自由设计。AI 不会替你把名字解析成路径。要用模板,请直接给路径。
- 风格描述:"麦肯锡风格" / "Google style" / "麦肯锡那种" / "极简风" / "Keynote 风" → 走自由设计。这些描述会顺着对话流到 Strategist 那边作为风格说明使用,但不会复制任何模板文件。
- 模糊意图:"想用个模板" / "选一个吧"——没给路径 → 走自由设计。
这是有意的——AI 永远不做模糊 / 解释性判断,不替你把名字解析成路径。要用模板,直接给路径。
想知道内置库里有哪些模板,问一句"有哪些模板可以用?"——AI 会从发现索引里列出名字和对应路径。单纯列出并不进入模板流程,需要你把其中一条路径再发回来才会触发 Step 3。
现有模板一览
模板按三种身份分目录:
templates/brands/README.md— 仅身份预设(color / typography / logo / voice / icon style),无 SVG 页面;Anthropic、Googletemplates/layouts/README.md— 仅结构样板(canvas / page structure / page types / SVG roster),无身份;academic_defense、government_blue/red、ai_ops、medical_university、pixel_retro、psychology_attachmenttemplates/decks/README.md— 完整 PPT 复刻(身份 + 结构 + 中间段);招商银行、中国电建_、中汽研_、重庆大学、中国电信
完整数据模型与三类的合成 / 冲突解决规则见 templates-architecture.md。
自由设计 vs 模板
自由设计不是"没有风格",而是 AI 根据你的内容为这一份 deck 现场设计视觉系统;模板则是沿用一套已经定型的结构和风格。两条路都不会少做"设计",区别只在于风格是即兴还是预设。
经验:内容方向明确、品牌或场景有强约束(咨询报告、政府汇报、答辩)→ 用模板。内容偏散文式、视觉氛围更重要(杂志风、纪录式叙事)→ 自由设计往往效果更好。
风格不是模板
风格是一种描述("极简风" / "Keynote 风" / "杂志风")——你在对话里打几个字。模板是一份要复制粘贴的资产包(SVG + design_spec + 素材),只在你给出显式目录路径时由工作流安装到项目里。
| 模板 | 风格 | |
|---|---|---|
| 怎么触发 | 消息里给出明确的目录路径 | 消息里写自由描述 |
| 发生什么 | 文件复制到项目;layouts 继承自模板 SVG | 描述流到 Strategist;色彩 / 字体 / 调性在八项确认里推荐 |
| 数值锁定 | 是 — 来源于模板的 design_spec.md |
否 — Strategist 现场推适合 deck 的具体值 |
| 适用场景 | 品牌锁定的 deck;强视觉约定的场景 | 心里有感觉但没有具体品牌承诺 |
风格描述可能看起来像模板名(比如 "学术风" 听上去像 academic_defense/ 模板目录),但走的是两套机制——模板需要你给一个真实可复制的路径,风格描述是解释性语言。字面接近,落地完全是两条路。
常见风格描述
三条轴自由组合("暗色科技 + 极简" 或 "杂志风 + 新中式" 都行):
美学路线
| 风格 | 一句话特征 |
|---|---|
| 极简风 / Minimalist | 高留白、2-3 色、单焦点、几乎零装饰 |
| 信息密集 / Information-dense | 麦肯锡派结构化表格、密度高、conclusion-first |
| Keynote 风 | 单页 Hero 文字、premium 留白、Apple 感 |
| 杂志风 / Editorial | 大图当主体、不对称版式、字体反差强 |
| 文艺手绘 | 暖色、手绘质感、像 zine |
行业 / 场景
| 风格 | 一句话特征 |
|---|---|
| 商务咨询风 | 数据驱动、专业克制、蓝/灰主调 |
| 学术答辩风 | 严谨层级、citation-heavy、清晰朴素 |
| 政府汇报风 | 红/蓝、庄重对称、标题加粗 |
| 产品发布风 | 视觉冲击、营销大胆、Hero 单图 |
| 教学课件风 | 清晰层级、友好亲和、配色明亮 |
| 路演/BP 风 | 叙事驱动、金句配图、conclusion-bold |
视觉调性
| 风格 | 一句话特征 |
|---|---|
| 暗色科技风 | 深蓝/黑底、霓虹强调、未来感 |
| 像素复古 | 8-bit、扫描线、游戏机美学 |
| 新中式 | 留白、传统纹样克制使用、墨色/朱砂 |
| 北欧极简 | 浅色、原木自然、字号克制 |
| 孟菲斯/波普风 | 高饱和大色块、几何图形、80 年代 |
| 赛博朋克/蒸汽波 | 霓虹紫粉、网格、迷幻 |
你描述风格时,AI 不会基于这些词去挑模板——它把这些词解释为对应的色彩 / 字体 / 版式建议,放到 Strategist 八项确认里 d 项的第二层(视觉风格),然后驱动 e/f/g/h(色彩 / 图标 / 字体 / 图片)。你可以确认或调整。如果你想要的风格刚好对上库里某个模板(如 academic_defense / pixel_retro / psychology_attachment),有两条路可选:把模板的目录路径发出来锁定值,或描述风格让 AI 现场推适配你内容的值。
二、派生新模板(重点)
把你自己喜欢的 PPT、品牌指南、或一份现成的 PPTX,做成 PPT Master 可调用的模板。这是本文的核心。
入口:/create-template 工作流
完整规范见 workflows/create-template.md。本节是面向用户的简要版本——你只需要在 IDE 对话里说:
请用 /create-template 工作流,基于下面的参考材料生成一个新模板。
接下来工作流会强制先和你确认一份模板简报(不允许跳过)。
第一步:准备参考材料
强烈推荐:直接给原始 .pptx 文件。 当前的 PPTX 导入管线已经做到接近高保真还原——工作流会用 pptx_template_import.py 直接读取 OOXML,提取主题色、字体、每个 master 的主题摘要、母版/版式结构、placeholder 元数据和可复用图片资源。它会输出作为机器事实源的 layered svg/,以及用于视觉预览的自包含 svg-flat/,再交给 Template_Designer 重建出干净可维护的 SVG。封面、章节、装饰繁复的页面都能稳定还原,这是目前最靠谱的派生路径。
也可以基于品牌指南从零设计:提供 logo、主色 HEX、字体、调性描述、几张氛围参考图,AI 会现场设计页面骨架。适合品牌方还没有成型 PPT、只有 VI 手册的场景。
没有源 PPTX 时的兜底:截图集(
cover.png/chapter.png/content.png/closing.png等)也能跑,但保真度会明显下降——装饰、字体、版式细节都靠 AI 视觉推断。能拿到.pptx就尽量用.pptx。截图更适合作为标注辅助("这页是我想要的样子")混进 PPTX 一起给。
第二步:模板简报(强制确认环节)
工作流不会偷偷推断——它会在动手前向你列出以下条目,等你确认或补全:
| 字段 | 说明 |
|---|---|
| 模板 ID | 目录名 / 索引键。优先 ASCII slug,如 acme_consulting;中文品牌名也行,但要文件系统安全 |
| 显示名称 | 文档中的人类可读名 |
| 类别 | brand / general / scenario / government / special 五选一 |
| 适用场景 | 年报 / 咨询 / 答辩 / 政府汇报…… |
| 调性概要 | 一句话,如"现代克制、数据驱动" |
| 主题模式 | 浅色 / 深色 / 渐变…… |
| 画布格式 | 默认 ppt169(16:9),其他格式需提前指定 |
| 复刻模式 | standard(默认 5 页基本套)/ fidelity(按 PPTX 源里"视觉上真正不同"的版式簇各开一个变体——数量由源决定)/ mirror(每张源页 1:1 原样复制,零抽象、不插占位符)—— fidelity 和 mirror 都必须有 .pptx 源 |
| 保真级别 | (standard / fidelity 有源时必填)literal(按原样复刻几何/装饰/精灵图裁剪)/ adapted(借结构和调性、允许设计演化)。封面 / 章节 / 结尾通常用 literal。mirror 模式不询问——隐含 literal |
| 关键词 | 3–5 个标签,用于索引检索 |
| 主题色 / 设计风格 / 素材清单 | 可选,可让 AI 从源里自动提取 |
确认后,工作流会回显一份完整简报并写入标记 [TEMPLATE_BRIEF_CONFIRMED],从这一刻起后续步骤才会启动。这是一个硬门——简报没确认,不会开始生成。
为什么这么严?因为模板是入库资产,未来会被复用。一次说清楚,比生成完再返工便宜得多。
第三步:选 standard、fidelity 还是 mirror?
这是派生模板里最容易混淆的决策。
| standard | fidelity | mirror | |
|---|---|---|---|
| 输出页数 | 5 页(封面/章节/目录/内容/结尾) | 视觉上真正不同的版式簇各一个变体——数量由源决定 | 每张源页 1:1 一页 |
| 抽象程度 | 高 —— 干净可复用骨架 | 中 —— 聚类后清理 | 零 —— 原样复制 |
| 是否插占位符 | 是({{TITLE}}、{{CONTENT_AREA}} 等) |
是 | 否 —— Executor 直接在 SVG 里就地编辑文字 |
| 适合场景 | 你只需要"调性 + 基本骨架",未来用模板生成全新 deck | 源 PPTX 本身就是高度定制的版式库 | 别人的精装 deck 直接好用、想把每页都当参考页 |
| 典型例子 | 给品牌做基础模板 | 复刻一套政府汇报的 20 种章节版式 | 把一份 50 页的麦肯锡风格 deck 整套用作模板 |
| 必须有 PPTX 源吗 | 否 | 是 | 是 |
| 装饰复杂度 | 通常较简洁 | 需要保留精灵图(sprite sheet)裁剪等结构 | 源页啥样就啥样,逐字节继承 |
关于精灵图:PPTX 导出的素材常常是一张大图 + 多页通过 viewBox 裁剪不同区域。fidelity 和 mirror 模式下必须保留这层嵌套 <svg viewBox=...> 包装,不能扁平化为单张 <image>——否则裁剪信息丢失,画面会错位。工作流会自动校验这一点。
mirror 模板怎么消费:mirror 模板里没有 {{}} 占位符——Strategist 根据 design_spec.md §V Page Roster 的逐页描述为每个项目页选一张参考页,Executor 把那张参考 SVG 拷过去,仅在原位修改文字内容,所有装饰、精灵图裁剪、几何坐标全部保留。库资产保持 100% 原样;针对项目的修改只存在于 projects/<project>/svg_output/。
第四步:注册与发现
模板生成完,工作流会:
- 跑
svg_quality_checker.py验证(硬门,不通过不入库) - 把模板 ID 注册到
layouts_index.json - 同步
templates/layouts/README.md表格
注册让模板可被发现——下次有人问"有哪些模板可用?"时,AI 会从索引里把它列出来。要在新项目里用它,仍然按 SKILL.md Step 3 的规则:在第一条消息里把目录路径写出来,例如 用这个模板:skills/ppt-master/templates/layouts/<your_template_id>/。
派生后的目录长什么样
skills/ppt-master/templates/layouts/<your_template_id>/
├── design_spec.md # 设计规范,§VI 列出全部页面
├── 01_cover.svg
├── 02_chapter.svg
├── 02_toc.svg # 可选
├── 03_content.svg
├── 03a_content_two_col.svg # fidelity 模式下的变体
├── 04_ending.svg
├── logo.png # 品牌素材
└── bg_pattern.jpg
standard 和 fidelity 模式下的页面 SVG 里使用统一的占位符约定({{TITLE}}、{{CHAPTER_TITLE}}、{{PAGE_TITLE}}、{{CONTENT_AREA}} 等),策略师阶段会按内容填充。
mirror 模板按源页序号每页一张 SVG,SVG 内部没有占位符:
skills/ppt-master/templates/layouts/<your_template_id>/
├── design_spec.md # frontmatter 设 replication_mode: mirror;§V Page Roster 逐页描述
├── 001_cover.svg
├── 002_toc.svg
├── 003_content.svg
├── 004_content.svg
├── ...
├── 049_content.svg
├── 050_ending.svg
└── *.png / *.jpg
项目级一次性定制 vs 全局模板
二者别搞混:
- 派生新模板 = 入全局库,在
skills/ppt-master/templates/layouts/下,未来所有项目都能调用 - 项目级定制 = 只在
projects/<project>/templates/里改这一份 deck 的页面,不入库、不影响其他项目
/create-template 工作流只做前者。后者直接在项目目录里改 SVG 即可,不需要走这个流程。
三、模板的边界
避免常见误解:
- 模板 ≠ 母版(Slide Master)。PPT Master 的输出是原生 DrawingML 形状,不依赖 PowerPoint 母版机制。模板是 SVG 骨架,最终在导出阶段被翻译为 PPTX 形状
- 模板不是"风格皮肤"。它包含结构(页面有几块、信息层级如何分布)+ 风格(配色、字体、装饰),两者不可分割。试图只换"皮肤"不换结构,往往会让信息架构和视觉打架
- 模板不会替你做内容决策。策略师仍然会按内容判断每页用哪个版式、要不要扩展为变体,模板提供候选,不预设结果
fidelity模式不等于像素级搬运。即便是literal保真,AI 仍会把杂质和不必要的重复结构清理掉——载体保留几何,但不照抄冗余mirror模式确实是像素级搬运——但它继承源 PPT 的导入限制。图表、SmartArt、OLE 对象、EMF / WMF 媒体如果在pptx_template_import.py里 round-trip 失败,mirror 也会同样失败。flat SVG 是事实源——<workspace>/svg-flat/里看着断了,mirror 模板也会断
相关文档
workflows/create-template.md— 完整工作流规范(面向 AI 执行)templates/layouts/README.md— 现有模板一览references/template-designer.md— 模板设计师角色定义和 SVG 技术约束- 常见问题:如何制作自定义模板 — FAQ 简版