PPT Master 项目路线图解读:以「原生深度」为轴的演进方向、四层覆盖地图与边界决策
本文基于仓库内的官方路线图文档整理成文。该文档回答的不是「下一个版本什么时候发布」,而是三个更本质的问题:PPT Master 正在朝哪个方向演进(native depth / 原生深度)、今天已经覆盖到 PowerPoint 的哪些能力、以及哪些方向被刻意排除在外。对于想要评估「某个功能为什么支持/不支持、为什么这样做」的读者,这份路线图与定位章程、PowerPoint ↔ SVG 映射指南共同构成了官方的产品策略与能力边界三角。
阅读前提:这是一份「优先级驱动」的路线图,而不是时间表
PPT Master 是一个单人维护的开源项目,因此它的路线图遵循一条明确原则:由优先级而非固定时间表驱动。文档开篇即声明:方向是确定的、当前在推进什么是可以看到的、真正有需求时才做什么是有候选项的、刻意不做什么是写明的——但没有任何承诺的交付窗口。优先级随用户反馈和真实使用信号动态变化。这意味着文档里的「Signal-driven(信号驱动)」状态是一种公开的意图声明,而不是对未来的承诺。
Direction:贯穿一切的演进主轴
路线图明确给出了项目的定义性主轴——native depth(原生深度):逐版本地「创作或保留」更多 PowerPoint 自身的对象模型、行为与可复用结构,让 AI 生成的结果持续向 PowerPoint 本身收敛。整体论点在定位章程中有完整阐述;而当前能力边界则由PowerPoint ↔ SVG 映射指南按功能逐条、诚实地记录——这份映射指南回答的是 PowerPoint 视角下的核心问题:某个 PowerPoint 功能由项目的什么表示层拥有,导出/导入后保留什么。
当前这条主轴由四条明确的**产物路线(artifact routes)**承载:
| 路线 | 做什么 | 变更模型 |
|---|---|---|
| Generate PPTX(生成) | 通过受约束的 SVG → DrawingML 链路创作全新设计的幻灯片 | 创作新内容 |
| Create Template(创建模板) | 产出可复用的 Brand / Style / Layout / Deck 工作区 | 创作新工作区 |
| Fill Native PPTX(填充) | 通过作用域受限的 OOXML 操作,向既有演示稿中填充内容 | 保留原包 |
| Enhance Native PPTX(增强) | 保持既有包不变,追加原生行为 | 保留原包 |
可执行的路由选择权威(即某次请求究竟该走哪条路线)不在路线图内,而在路由规则中——它明确「一个产物生命周期:每个请求进入四条顶层路线之一」,并禁止把子工作流/生成档案/阶段当作竞品顶层路线来提供。路线图与路由文档的边界是:路线图解释「方向归属」,路由文档执行「本次选哪条路」。
Coverage map:把演示稿拆成四层来度量
路线图的核心是一张覆盖地图。它的基本洞察是:一份演示稿包含四个层次——页面上有什么(可见对象)、如何排布(组合)、如何表现(行为)、文档本身如何组织(文档结构)。
阅读方式被反复强调:这是一张地图,不是一张待办清单。其中「Bounded by design(设计上设界)」「Asymmetric by design(设计上非对称)」是已经定型的形态,空白处是「决策」而非「欠债」;「Not planned(不计划)」行会在行内说明理由;只有「Signal-driven」行保持开放。状态语义定义如下:
| 状态 | 含义 |
|---|---|
| Systematized(系统化) | 有专门的创作契约;可适用、可客观判定的部分会收到校验;处于主动精炼中 |
| Covered(已覆盖) | 无需专门规格系统即可在今天工作 |
| Bounded by design(设计上设界) | 刻意在某个位置停止;理由已记录 |
| **Asymmetric by design(设计上非对称) | 仅在一侧支持——典型是读取或保留源演示稿,而非创作 |
| Signal-driven(信号驱动) | 有真实需求时值得做;不是承诺 |
| Not planned(不计划) | 当前不考虑;理由在行内 |
第一层 —— 可见对象(Visible objects)
| 对象 | 状态 | 说明 |
|---|---|---|
| 文本 | Systematized | 全演示稿范围的角色锚点、受限的逐次调整、层级与段落规则、原生可编辑文本 runs |
| 原生 WordArt 与变形文字 | Not planned | AI 生成的装饰性字形是首选视觉载体,普通可编辑文本作后备;原生 WordArt、文本变形、路径文字会引入独立的创作与兼容面而不改进上述路径,故不生成 |
| 矢量形状 | Systematized | 由 primitive / Office 预设原子 → 独立组合 → 仅在单一轮廓确需时做布尔运算 → 必要的 freeform 构造阶梯,带原生转换规则 |
| 线条与连接符 | Asymmetric by design | 原生 p:cxnSp 导出已实现;在源演示稿的保留/镜像往返中可恢复端点连接;新创作的连接符保持未连接状态——判定「哪些线是真边、哪些是装饰」属于意图判断,没有几何阈值能裁决,因此上移创作端不增加可靠性 |
| 图标 | Systematized | 内置 SVG 图标库并按项目同步;项目图标为预制素材;插画语义提示仍是 images/ 下的生成切片 |
| Logo | Bounded by design | Logo 永远是既有作品而非创作对象:品牌工作区安装官方文件为预制资产,捆绑的品牌预设附带已记录的使用规则 |
| 图片 | Systematized | 获取、生成、处理、裁剪、布局、合成、嵌入、溯源全链路 |
| 图表 | Systematized | 专用创作参考;默认 SVG,原生 Chart 替换是显式 opt-in |
| 表格 | Systematized | 专用创作参考;六种可复用单元格网格参考,仍支持自定义网格;原生 Table 替换使用同一 opt-in |
| 图表/图形 | Systematized | 六种关系原子:order、link、parent、membership、contrast、overlap |
| 公式 | Systematized | 独立块与同段落行内公式把每个明确记录的 Microsoft 365 LaTeX / mhchem 输入编译为可编辑 OMML;PPTX 导入把校验器洁净的 OMML 重建为规范公式标记并带可见 SVG 预览;不输出图片后备;包目标保持 PowerPoint 2010+ |
| 旁白与动画音频 | Systematized | 每页旁白音频,加上来自内置 CC0 目录的原生过渡与对象音效 |
| 任意视频与背景音乐 | Not planned | 一次性、内容特定插入,手放在 PowerPoint 里更快,且 AI 无法替你选文件;源演示稿中已有媒体经 Fill/Enhance 路线原样保留 |
| SmartArt | Asymmetric by design | 源图示部件只被读取其内容与结构;生成稿通过普通形状管线重绘内容;DiagramML 永不编辑 |
| 3D 模型、OLE 对象 | Not planned | 两者都依赖宿主应用或较新的 Office 版本,在别处回退为静态预览——正是本项目刻意规避的跨渲染器问题;源稿已有对象原样保留 |
| 墨迹与摄像头画面(Cameo) | Not planned | 演讲者会话层表面而非生成的设计内容,且依赖新 Office 构建 |
值得注意:Illustration(插画)被刻意排除在表外。它是一个可组合的结果(图片、透明切片、SVG 或一组形状),而不是第七种载体。
第二层 —— 组合(Composition)
| 关注点 | 状态 | 说明 |
|---|---|---|
| 背景 | Systematized | 纯色与渐变整页背景导出为 PowerPoint 原生幻灯片背景;图片背景情形为信号驱动 |
| 分层与分组 | Systematized | 显式 z 序与分组契约,含已注册的 base/subject 层对 |
| 插画组合 | Systematized | 每页按一个连贯元素家族规划;可生成时在带 key 的 sheet 上批量生成兼容素材、严格 alpha 切片,再复用作固定标题/角落 chrome 或重组为锚点/配图/点缀 |
| 网格、对齐、留白 | Systematized | 共享组合契约加上每种视觉风格携带的组合几何词汇 |
| 调色板 | Systematized | 声明的 HEX 值是命名语义角色的真源;可复用角色锚点全稿稳定 |
| 排版 | Systematized | 每个结构角色一个全稿尺寸锚点,允许受限的 ±2px 逐次调整与稀疏的 Hero/Display 例外 |
| 视觉特效 | Systematized | 专用特效参考;一个已注册外阴影/辉光编译为一个可编辑原生特效 |
| 阅读路径 | Systematized | 每页计划声明一个主强调锚点(进入点、递进、层级、终点),视觉审查对照该声明核查最显著元素与锚点位置 |
第三层 —— 行为(Behavior)
| 关注点 | 状态 | 说明 |
|---|---|---|
| 页面过渡 | Systematized | 支持来自内置 CC0 目录的按需过渡音效;PPTX 导入把当前注册表中的精确过渡重建进规范 sidecar |
| 对象动画 | Systematized | 默认关闭、显式 opt-in;PPTX 导入重建有限精确时长的当前注册表子集 |
| 自动前进 | Covered | 由旁白前奏、音频时长与页尾 padding 推导 |
| 媒体播放 | Covered | 旁白与动画音效原生播放;源稿媒体保留播放设置 |
| 超链接 | Systematized | 整对象与行内文本链接经标准 SVG <a href> 创作,导出为原生外部/同稿点击关系 |
| 动作与导航 | Systematized | 导航通过把目标包进超链接锚点显式创作(含同稿跳页);actionButton* 预设只提供视觉几何;鼠标悬停、custom shows、宏执行、ppaction:// 注入契约外 |
| Zoom(摘要/节/幻灯片) | Not planned | Office 构建依赖的导航对象,在别的渲染器退化为静态图——正是本项目规避的跨渲染器劣化;同稿跳页由原生超链接覆盖 |
第四层 —— 文档结构(Document structure)
| 关注点 | 状态 | 说明 |
|---|---|---|
| 幻灯片尺寸 | Systematized | 画布契约选定格式;SVG viewBox 是唯一几何真源,fail-closed 校验;同稿所有页必须一致 |
| 主题 | Systematized | Lock 支撑的 Default 导出从调色板/排版契约推导各稿 clrScheme、主次字体与 Master 标题/正文默认尺寸;无 lock 的 Quick 保留转换器默认 Theme 脚手架 |
| 字体嵌入 | Bounded by design | 包内从不嵌入字体;品牌/web 字体仅当目标系统确认可用才使用 |
| 幻灯片节 | Asymmetric by design | 源保留原生路线保留既有节元数据为原包结构;生成/重建路线不创作 PowerPoint 节 |
| Master / Layout | Systematized | 结构化路线上有真实 p:sldMaster / p:sldLayout 部件 |
| 占位符 | Systematized | 模板工作区契约,严格/自适应导出行为逐稿推导 |
| 日期、页脚、页码域 | Bounded by design | 结构化模板路线在占位符契约下创作真实域;自由设计稿刻意把页码/页脚画为普通文本 |
| 演讲者备注 | Systematized | 带真实 notes master 导出 |
| 旁白 | Systematized | 每页音频带 provider 溯源 |
| 字幕 | Systematized | 跨支持 provider 的按词重新分组为紧凑 SRT |
| 文档元数据 | Covered | 在导出时设置而非留给打包库 |
| 无障碍(alt 文本、阅读顺序) | Not planned | AI 图片带 alt_text 字段,但形状/图表/用户图片无描述;阅读顺序在 PowerPoint 中即形状顺序,不能独立于视觉分层设定 |
| 宏与 Office 扩展 XML | Asymmetric by design | 从不创作 VBA;既有宏部件仅在宏感知的源保留路线下原样保留 |
| 评论、修订、协作状态 | Not planned | Office 协作表面,在创作产品范围外 |
从仓库源码结构看,这份覆盖地图与实现是强对应的:SVG 质量门在 svg_quality_checker.py 中执行「拒绝无效/不支持映射、对注册兼容拼写告警」,编译与回读在 svg_to_pptx.py 中完成,逆向导入则落在 pptx_to_svg.py(默认 tolerant、--strict 停于首个违规)。
In progress / Next:正在推进的两件事
路线图不承诺时间,但公开了当前「活跃进行或即将进行」的方向:
- 在真实演示稿上校准近期落地的系统——多稿 intake、material-divergence 字段、可组合插画系统、结构化模板创建都已发布,现在需要的是真实使用信号,而不是更多机制;不设先发阈值或配额。
- Prompt 减脂(prompt slimming)——压缩各角色的 prompt token 占用并提升缓存命中率,同时不牺牲质量。这是间接的成本/速度杠杆;与「牺牲质量换速度」的边界画在 Non-goals 中。
Future directions:信号驱动才有资格进入的候选项
以下候选已被评估为「有真实需求时就值得做」,列出是为了公开意图,每一项都不是承诺:
- 持续推进映射指南中记录的原生覆盖缺口,逐版本把更多「仅 SVG」单元格移向原生 PowerPoint 结构与行为;
- 把图片型幻灯片背景做成本机背景填充——纯色/渐变背景已经是 PowerPoint 原生背景,图片情形按需求驱动推进。
Shipped milestones:逐月的发布主线
路线图用「一行一个月」的方式回顾已发布主线(完整细节在 release notes 与提交日志,本文不展开外部链接):
| 时间 | 主题 |
|---|---|
| 2026-03 | Native PPTX 路线成型——SVG → DrawingML 链路可用;chart/layout 模板索引发布 |
| 2026-04 | 管线规模化——仅凭主题生成、70 个图表模板与三套图标库、spec_lock 跨页一致性契约、逐元素动画与旁白/视频导出 |
| 2026-05 | 可视化编辑 + AI 图片系统化——Live Preview 确定性就地编辑、从 PPTX 建立模板工作区、渲染 × 调色板 × 字体图片系统、遗留栅格 LaTeX 渲染器 |
| 2026-06 | 模式与视觉风格双目录 + 摄取扩展——5 种叙事模式 × 18 种视觉风格(+ custom)、保内容的美化档案、多稿摄取、可组合插画管线、web 图片质量门、源转换保真提升(含社区贡献的说明文字识别与超链接保留) |
| 2026-07 | 定位章程 + 原生 Master/Layout + token 效率(v4.0.0)——三阶段确认 UI、真实 p:sldMaster / p:sldLayout 导出、--native-charts-and-tables opt-in、动效导出加固 |
| 2026-08 | 模板库 + 页面图像重建 + 原生数学与链接 + AI 图片即组合(v4.5.0–v4.8.0)——brand/style/layout/deck 工作区库、按信息模型拆分的可视化与结构组合语法、image-to-pptx 档案、带原生动画音效的视频交付、三种可编辑整稿设计方向、微软 365 文档化档案内的可编辑 OMML 公式、原生超链接创作、可组合 AI 插画家族与装饰字形、带独立缩略图审查的任务驱动图片获取、过渡与对象动画逆向导入、四层覆盖地图 |
Non-goals:被反复提出却刻意不做的方向
路线图专门列出以下反复出现、但已被评估为「不在路径上」的方向,并声明「列出不等于否定其背后的需求价值」,只是它们不符合本项目的产品方向;若确实需要这些能力,官方建议考虑其他工具或 fork。
盲填任意 PPTX 占位符系统
Generate PPTX 路线建立在「对新建形状/文本/版式完全掌控」之上。结构化的 PPTX 只能以两种显式方式沉淀为经评审的可复用包:standard/fidelity 从视觉证据创作新的 SVG 与 Master/Layout 系统;mirror 从源稿实际存在且受支持的完整事实集物化新工作区(含未使用的 Layout 定义)。两条路径都不修改源 PPTX、不恢复缺失的设计意图。文档点出本质:若只是「把 Excel 数据替换进 PPT 模板固定位置」,让 AI 写几行 python-pptx 即可,不需要这条管线。
支持边界也很明确:Fill Native PPTX(template-fill-pptx)直接重填所选源幻灯片;Create Template(create-template)从自然语言请求与源证据推导内部 authored/mirror 实现;Strategist 从实际模板与当前内容推导严格/自适应导出行为。契约外的是对任意第三方占位符系统做「未经评审、无 schema 的替换」。
让原生 PowerPoint 图表成为默认
四渲染器(PowerPoint / Keynote / LibreOffice / WPS)的像素级保真是项目脊柱。切到原生图表默认会破坏它——同一 PPTX 在不同渲染器里的图表版式不同。因此「图表为 SVG 是 by design,而非能力缺口」。
唯一的窄例外是 data-pptx-replace-with 标记:在 Design Spec §IX Native-ready 映射中把语义对象键记为 <object-key>=yes 时,独立规划的支持数据图表与纯文本网格表格可携带原生 Chart/Table 替换负载;no 与附带微图保持普通形状。使用 --native-charts-and-tables 导出会激活已备好的标记,代价是主动用跨渲染器保真换取数据支撑对象与图表/表格专属编辑模型——激活的对象会保留演示稿的图表区/绘图区/坐标轴/网格线/标签颜色与原生表格格式,而不会跳回 PowerPoint 默认主题。默认导出路径与可编辑 SVG 派生形状系统保持不变。
让 uv 成为默认/必需依赖
pip + requirements.txt 是唯一官方安装路径,因为它在每个 Python 环境都可用、无额外学习成本。uv 是好工具,但设为默认会抬高新用户门槛;个人偏好 uv 可在自己的 fork 里用,不影响主线。
纯速度优化
在成本/速度/质量三角中本项目选择质量。约 20 分钟产出一份高质量 PPTX 是当前合理点;会做的是经 prompt 减脂/缓存命中率带来的间接提升。
而 quick-generate 是用户选择的工作流捷径:它跳过 Strategist、确认环节与首页门,随后创作 SVG、跑一次无 lock 的最终质量门并导出最终 PPTX。因为整个规划阶段不再发生(Strategist 参考加载、design_spec.md/spec_lock.md 产物、分阶段确认往返都消失),其 token 成本随之消失,而逐页 SVG 创作不变。它保留同样的页面级视觉与资源创作能力以及共享的 SVG/资源阻塞标准;但它不运行 Spec Lock 对齐检查,包内使用转换器默认 Theme 脚手架而非从 lock 推导主题颜色/字体/Master 尺寸。没有确认过的设计契约、首页校准或可恢复决策历史,它不承诺与 Default 相同的设计决策或墙钟时间。默认 Generate 管线继续质量优先。
独立 CLI / 托管 SaaS / 桌面 App 形态
产品形态是智能体能力型 AI 工具内运行的对话驱动工作流/技能(Claude Code、Codex、Cursor、VS Code agents 等)。不做:独立 CLI(ppm 风格)、SaaS web 服务、Electron 壳。任何「让它脱离对话独立运行」的提案都会被拒绝——对话是交互核心,不是外壳。这一形态判断与仓库中作为 skill 包落地的 skills/ppt-master 目录(含 SKILL.md 与 workflows)一致。
与定位章程等文档的分工
路线图末尾的反馈渠道(Issues / Discussions / Email)在仓库文档中可见,且给出一个非常实用的协作建议:提出新方向前先扫描 Non-goals——若你的请求落在其中,大概率不会落地,但官方欢迎讨论通向底层需求的其他路径。
在阅读路线图时,建议把定位章程当作「产品政策层」配合阅读:它定义了长期产品定位与能力准入测试(用户任务 → 核心贡献 → 自有产物 → 不变量 → 产品层 → 可验证性 → 证据),并声明「这个英文文件是规范的策略源,中文版是对称翻译而非独立策略」。整个文档族的分工是:what-is-ppt.md 定义演示媒介与上游前提,本路线图记录已发布工作/活跃优先级/刻意推迟的方向,技术设计 承载当前架构与实现不变量,路由规则执行当下选择。若想逐条核对「某个 PowerPoint 功能导出与导入后究竟保留什么」,则以PowerPoint ↔ SVG 映射指南为准。
结语:如何读懂这份路线图
PPT Master 的路线图本质上是一份决策说明书:主轴唯一(向 PowerPoint 原生收敛)、测量方式公开(四层覆盖地图,空白即决策)、边界画得比功能更细(每个 Not planned / Bounded by design 都写了理由)。对于开发者与使用者,最有价值的读法是:把「某项能力缺不缺」的问题,先翻译成「它落在覆盖地图的哪个状态、为什么落在那里、若要有真实需求该走哪条路线」——这既避免向作者提交注定不会被接纳的 feature request,也能在 fork 或选用替代方案时做出有依据的判断。
atomcodeClaude Code 的开源替代方案。连接任意大模型,编辑代码,运行命令,自动验证 — 全自动执行。用 Rust 构建,极致性能。 | An open-source alternative to Claude Code. Connect any LLM, edit code, run commands, and verify changes — autonomously. Built in Rust for speed. Get StartedRust0625
Hy4-previewHy4 preview 是由腾讯混元团队研发的新一代混合专家(MoE)旗舰模型。模型总参数量 770B,每个 token 激活 49B,主干共包含78层,第一层采用标准 FFN,其余 77 层均为 MoE 结构,每层包含 256 个路由专家与 1 个共享专家,每个 token 激活 top-8 路由专家及共享专家。主干之外原生内置 1 层 MTP(总参数量 10B,激活 0.7B)以支持投机解码。Python00
GLM-5.3GLM-5.3 与 GLM-5.2 使用相同的基座模型——所有提升均来自后训练。与 GLM-5.2 相比,它在复杂编程和长程任务上的表现显著提升。Jinja00
GLM-5.3-FlashGLM-5.3-Flash (320B-A18B),是GLM-5系列的首个原生多模态模型。320B总参数,能力超过GLM-5.2Jinja00
Spark-X2.5-4BSpark-X2.5-4B 旨在让强大的 AI 更实用、更高效、更易获得。在广泛日常任务中表现强劲,涵盖对话、写作、翻译、推理、编码、工具调用以及智能体工作流,并在同等规模的开源模型中取得领先成绩。Spark-X2.5 将面向效率的架构与最高 1M tokens 的原生上下文窗口相结合,并支持 200 多种语言。Python00
Spark-X2.5-1.7BSpark-X2.5-1.7B 旨在让强大的 AI 更加实用、高效且易于获取。这些模型在广泛的日常任务中表现出色,涵盖对话、写作、翻译、推理、编程、工具调用和智能体工作流,并在同等规模的开源模型中取得领先结果。Spark-X2.5 将面向效率的架构与最高 1M tokens 的原生上下文窗口相结合,并支持 200 多种语言。Python00