<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Productivity on VvVzzz Blog</title><link>https://godvvvzzz.github.io/tags/productivity/</link><description>Recent content in Productivity on VvVzzz Blog</description><generator>Hugo -- gohugo.io</generator><language>zh-cn</language><lastBuildDate>Wed, 09 Sep 2026 20:20:00 +0800</lastBuildDate><atom:link href="https://godvvvzzz.github.io/tags/productivity/index.xml" rel="self" type="application/rss+xml"/><item><title>pptx-generator：给编码 Agent 用的 PPT 生成技能</title><link>https://godvvvzzz.github.io/p/pptx-generator/</link><pubDate>Wed, 09 Sep 2026 20:20:00 +0800</pubDate><guid>https://godvvvzzz.github.io/p/pptx-generator/</guid><description>&#10; &lt;blockquote&gt;&#10; &lt;p&gt;收录于：&lt;a class="link" href="https://godvvvzzz.github.io/p/awesome-open-source-repos/" &gt;开源仓库收藏夹&lt;/a&gt;&lt;/p&gt;&#10;&#10; &lt;/blockquote&gt;&#10;&lt;p&gt;&lt;strong&gt;技能路径&lt;/strong&gt;：&lt;a class="link" href="https://github.com/MiniMax-AI/skills/tree/main/skills/pptx-generator" target="_blank" rel="noopener"&#10; &gt;MiniMax-AI/skills · pptx-generator&lt;/a&gt;&lt;br&gt;&#10;&lt;strong&gt;所在仓库&lt;/strong&gt;：&lt;a class="link" href="https://github.com/MiniMax-AI/skills" target="_blank" rel="noopener"&#10; &gt;MiniMax-AI/skills&lt;/a&gt; · &lt;strong&gt;许可&lt;/strong&gt;：MIT&lt;/p&gt;&#10;&lt;h2 id="它是什么"&gt;&lt;a href="#%e5%ae%83%e6%98%af%e4%bb%80%e4%b9%88" class="header-anchor"&gt;&lt;/a&gt;它是什么&#10;&lt;/h2&gt;&lt;p&gt;&lt;code&gt;pptx-generator&lt;/code&gt; 是 MiniMax 官方 skills 集合里的一项 &lt;strong&gt;Agent Skill&lt;/strong&gt;，覆盖 PowerPoint 全流程：&lt;/p&gt;&#10;&lt;table&gt;&#10;&#9;&lt;thead&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;th&gt;任务&lt;/th&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;th&gt;做法&lt;/th&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&lt;/thead&gt;&#10;&#9;&lt;tbody&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;读 / 分析现有 PPT&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;&lt;code&gt;python -m markitdown presentation.pptx&lt;/code&gt;&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;基于模板编辑&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;XML 工作流（见 &lt;code&gt;references/editing.md&lt;/code&gt;）&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;从零创建&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;&lt;strong&gt;PptxGenJS&lt;/strong&gt;，按页面类型生成 slide 模块再编译&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&lt;/tbody&gt;&#10;&lt;/table&gt;&#10;&lt;p&gt;它不是「让模型随便画几页」，而是一套&lt;strong&gt;有约束的生成规范&lt;/strong&gt;：设计系统、五类页面、主题契约、页码规则、QA 流程都写死在 skill 里。&lt;/p&gt;&#10;&lt;h2 id="为什么值得看"&gt;&lt;a href="#%e4%b8%ba%e4%bb%80%e4%b9%88%e5%80%bc%e5%be%97%e7%9c%8b" class="header-anchor"&gt;&lt;/a&gt;为什么值得看&#10;&lt;/h2&gt;&lt;h3 id="1-五类页面--视觉多样性"&gt;&lt;a href="#1-%e4%ba%94%e7%b1%bb%e9%a1%b5%e9%9d%a2--%e8%a7%86%e8%a7%89%e5%a4%9a%e6%a0%b7%e6%80%a7" class="header-anchor"&gt;&lt;/a&gt;1. 五类页面 + 视觉多样性&#10;&lt;/h3&gt;&lt;p&gt;所有 slide 必须归入五种类型之一：&lt;/p&gt;&#10;&lt;ol&gt;&#10;&lt;li&gt;&lt;strong&gt;Cover&lt;/strong&gt; 封面&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;TOC&lt;/strong&gt; 目录&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;Section Divider&lt;/strong&gt; 分节页&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;Content&lt;/strong&gt; 内容页&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;Summary&lt;/strong&gt; 总结页&lt;/li&gt;&#10;&lt;/ol&gt;&#10;&lt;p&gt;并明确要求：&lt;strong&gt;不要连续多页用同一 layout&lt;/strong&gt;——避免 Agent 生成「十页长得一样」的 PPT。&lt;/p&gt;&#10;&lt;h3 id="2-theme-对象契约强制"&gt;&lt;a href="#2-theme-%e5%af%b9%e8%b1%a1%e5%a5%91%e7%ba%a6%e5%bc%ba%e5%88%b6" class="header-anchor"&gt;&lt;/a&gt;2. Theme 对象契约（强制）&#10;&lt;/h3&gt;&lt;p&gt;编译脚本向每页传入固定五色主题：&lt;/p&gt;&#10;&lt;table&gt;&#10;&#9;&lt;thead&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;th&gt;Key&lt;/th&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;th&gt;用途&lt;/th&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&lt;/thead&gt;&#10;&#9;&lt;tbody&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;&lt;code&gt;primary&lt;/code&gt;&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;最深色，标题&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;&lt;code&gt;secondary&lt;/code&gt;&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;深色强调、正文&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;&lt;code&gt;accent&lt;/code&gt;&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;中间调强调&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;&lt;code&gt;light&lt;/code&gt;&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;浅色强调&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;&lt;code&gt;bg&lt;/code&gt;&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;背景&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&lt;/tbody&gt;&#10;&lt;/table&gt;&#10;&lt;p&gt;&lt;strong&gt;禁止&lt;/strong&gt;自创 &lt;code&gt;background&lt;/code&gt; / &lt;code&gt;text&lt;/code&gt; / &lt;code&gt;muted&lt;/code&gt; 等 key。Agent 被死死绑在统一主题模型上，多页并行生成时才不会各画各的。&lt;/p&gt;&#10;&lt;h3 id="3-一页一文件可并行"&gt;&lt;a href="#3-%e4%b8%80%e9%a1%b5%e4%b8%80%e6%96%87%e4%bb%b6%e5%8f%af%e5%b9%b6%e8%a1%8c" class="header-anchor"&gt;&lt;/a&gt;3. 一页一文件，可并行&#10;&lt;/h3&gt;&lt;p&gt;每页是独立可运行的 JS：&lt;/p&gt;&#10;&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-javascript" data-lang="javascript"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nx"&gt;createSlide&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;pres&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;theme&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="kr"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;slide&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;pres&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;addSlide&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="c1"&gt;// ...使用 theme.primary / theme.bg 等&#10;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="nx"&gt;slide&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;}&lt;/span&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nx"&gt;module&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;exports&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="nx"&gt;createSlide&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;slideConfig&lt;/span&gt; &lt;span class="p"&gt;};&lt;/span&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;ul&gt;&#10;&lt;li&gt;函数&lt;strong&gt;必须同步&lt;/strong&gt;（不能 async）&lt;/li&gt;&#10;&lt;li&gt;文件可单独 &lt;code&gt;node slide-01.js&lt;/code&gt; 预览&lt;/li&gt;&#10;&lt;li&gt;有 subagent 时最多 5 页并发生成&lt;/li&gt;&#10;&lt;li&gt;最后 &lt;code&gt;compile.js&lt;/code&gt; 统一写入 &lt;code&gt;output/presentation.pptx&lt;/code&gt;&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;p&gt;这是「结构化输出 + 模块化并行」在文档生成上的干净落地。&lt;/p&gt;&#10;&lt;h3 id="4-设计系统不是空话"&gt;&lt;a href="#4-%e8%ae%be%e8%ae%a1%e7%b3%bb%e7%bb%9f%e4%b8%8d%e6%98%af%e7%a9%ba%e8%af%9d" class="header-anchor"&gt;&lt;/a&gt;4. 设计系统不是空话&#10;&lt;/h3&gt;&lt;p&gt;&lt;code&gt;references/&lt;/code&gt; 里拆得很细：&lt;/p&gt;&#10;&lt;table&gt;&#10;&#9;&lt;thead&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;th&gt;文件&lt;/th&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;th&gt;内容&lt;/th&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&lt;/thead&gt;&#10;&#9;&lt;tbody&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;&lt;code&gt;slide-types.md&lt;/code&gt;&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;五类页面 + 额外 layout 模式&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;&lt;code&gt;design-system.md&lt;/code&gt;&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;色板、字体、Sharp/Soft/Rounded/Pill 风格配方、排版间距&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;&lt;code&gt;editing.md&lt;/code&gt;&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;模板编辑、XML、常见坑&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;&lt;code&gt;pitfalls.md&lt;/code&gt;&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;QA 流程、PptxGenJS 陷阱&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;&lt;code&gt;pptxgenjs.md&lt;/code&gt;&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;完整 API 参考&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&lt;/tbody&gt;&#10;&lt;/table&gt;&#10;&lt;p&gt;中文固定 &lt;strong&gt;Microsoft YaHei&lt;/strong&gt;，英文默认 Arial；16:9（10&amp;quot; × 5.625&amp;quot;）；页码徽章除封面外必有，且只显示当前页码（不是 &lt;code&gt;3/12&lt;/code&gt;）。&lt;/p&gt;&#10;&lt;h3 id="5-和只会改-markdown-的-skill不同"&gt;&lt;a href="#5-%e5%92%8c%e5%8f%aa%e4%bc%9a%e6%94%b9-markdown-%e7%9a%84-skill%e4%b8%8d%e5%90%8c" class="header-anchor"&gt;&lt;/a&gt;5. 和「只会改 Markdown 的 Skill」不同&#10;&lt;/h3&gt;&lt;p&gt;多数 Agent Skill 只动文本。这个 skill 管的是&lt;strong&gt;二进制办公文档&lt;/strong&gt;：生成、改、读，还带 QA 门槛。属于 productivity 类 skill 里工程化程度较高的样本。&lt;/p&gt;&#10;&lt;h2 id="上手claude-code"&gt;&lt;a href="#%e4%b8%8a%e6%89%8bclaude-code" class="header-anchor"&gt;&lt;/a&gt;上手（Claude Code）&#10;&lt;/h2&gt;&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;claude plugin marketplace add https://github.com/MiniMax-AI/skills&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;claude plugin install minimax-skills&#10;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;依赖：&lt;/p&gt;&#10;&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;pip install &lt;span class="s2"&gt;&amp;#34;markitdown[pptx]&amp;#34;&lt;/span&gt; &lt;span class="c1"&gt;# 读 PPT&lt;/span&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;npm install -g pptxgenjs &lt;span class="c1"&gt;# 从零创建&lt;/span&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Cursor / Codex / OpenCode 的安装方式见 &lt;a class="link" href="https://github.com/MiniMax-AI/skills#installation" target="_blank" rel="noopener"&#10; &gt;仓库 README&lt;/a&gt;。&lt;/p&gt;&#10;&lt;p&gt;触发词：PPT、PPTX、PowerPoint、presentation、slide、deck。&lt;/p&gt;&#10;&lt;h2 id="同仓库其他技能顺带一提"&gt;&lt;a href="#%e5%90%8c%e4%bb%93%e5%ba%93%e5%85%b6%e4%bb%96%e6%8a%80%e8%83%bd%e9%a1%ba%e5%b8%a6%e4%b8%80%e6%8f%90" class="header-anchor"&gt;&lt;/a&gt;同仓库其他技能（顺带一提）&#10;&lt;/h2&gt;&lt;p&gt;MiniMax skills 里还有同一思路的办公套件：&lt;code&gt;minimax-pdf&lt;/code&gt;、&lt;code&gt;minimax-xlsx&lt;/code&gt;、&lt;code&gt;minimax-docx&lt;/code&gt;，以及前端/全端/移动端/shader 等开发技能。如果你要做「Agent 生成 Office 全家桶」，可以整包接入再按需挑。&lt;/p&gt;&#10;&lt;h2 id="适合谁"&gt;&lt;a href="#%e9%80%82%e5%90%88%e8%b0%81" class="header-anchor"&gt;&lt;/a&gt;适合谁&#10;&lt;/h2&gt;&lt;ul&gt;&#10;&lt;li&gt;想让 Claude Code / Codex 直接产出&lt;strong&gt;结构稳定、风格统一&lt;/strong&gt;的 PPT，而不是随机排版&lt;/li&gt;&#10;&lt;li&gt;需要「模板编辑 + 从零生成 + 读回分析」三条链路&lt;/li&gt;&#10;&lt;li&gt;在研究 Agent Skill 怎么管二进制产物、怎么做多页并行、怎么定 theme 契约&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="和收藏夹里其他项目的关系"&gt;&lt;a href="#%e5%92%8c%e6%94%b6%e8%97%8f%e5%a4%b9%e9%87%8c%e5%85%b6%e4%bb%96%e9%a1%b9%e7%9b%ae%e7%9a%84%e5%85%b3%e7%b3%bb" class="header-anchor"&gt;&lt;/a&gt;和收藏夹里其他项目的关系&#10;&lt;/h2&gt;&lt;ul&gt;&#10;&lt;li&gt;Skill 被 Multica 等平台当作可复用剧本 → &lt;a class="link" href="https://godvvvzzz.github.io/p/multica/" &gt;Multica&lt;/a&gt;&lt;/li&gt;&#10;&lt;li&gt;运行这些 Skill 的编码 Agent → &lt;a class="link" href="https://godvvvzzz.github.io/p/pi/" &gt;Pi&lt;/a&gt;、Claude Code 等&lt;/li&gt;&#10;&lt;li&gt;Skill 本体的知识/记忆沉淀 → &lt;a class="link" href="https://godvvvzzz.github.io/p/openviking/" &gt;OpenViking&lt;/a&gt;&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;hr&gt;&#10;&lt;p&gt;&lt;em&gt;最后更新：2026-09-09。信息基于公开 SKILL.md 与仓库 README，使用前请以官方为准。&lt;/em&gt;&lt;/p&gt;&#10;</description></item></channel></rss>