← Back to Skills Marketplace
lifenglei

一句话生成PPT

by dream-boy · GitHub ↗ · v1.0.0 · MIT-0
cross-platform ⚠ suspicious
135
Downloads
0
Stars
0
Active Installs
1
Versions
Install in OpenClaw
/install duan-skill
Description
AI演示文稿全流程制作:内容结构化→设计选型→AI插画/HTML构建→PPTX导出。17种实战验证的视觉风格(漫画/极简/数据叙事/国风),可编辑HTML与全AI视觉两条路径自由选择。当用户提到"做PPT"、"制作幻灯片"、"演示文稿"、"Keynote"、"slides"、"课件"、"汇报材料"、"路演"时使用。
README (SKILL.md)

AI Presentation Workflow

设计哲学:Context, not control。 理解目标和风格感觉,自主做出设计决策。参考文件是灵感库,不是逐字执行的清单。


Skill 路径

脚本安装路径因用户不同而不同。执行脚本前,先用 Glob 工具搜索 **/duan-slides/scripts/generate_image.py,取所在目录作为 SKILL_SCRIPTS_DIR


启动:三个决策

每次任务开始,确认以下三项。

协作模式

模式 适合 检查点
Full Auto 信任AI交付,只需最终PPTX 确认主题即可
Guided(默认) 把控方向,不管细节 大纲 / 风格选定 / 组装前
Collaborative 逐张审阅,全程掌控 每张slide

制作路径

Path A:可编辑HTML(默认) Path B:全AI视觉
做法 HTML slides + 选择性AI插画 → PPTX 每张slide全AI生成图片 → PPTX
优势 文字可在PPT中继续编辑,中文渲染完美 视觉震撼,风格高度统一
适合 商务汇报、需要反复修改的场景 艺术感强、发布演讲、快速草稿
注意 中文偶有错误,文字不可后期编辑

个人形象融入

检查 assets/character/ 目录:

  • *-sheet.png → 直接使用
  • original.* 无设定图 → 自动生成设定图
  • 为空 → 询问用户是否需要

生成角色设定图:

export $(grep GEMINI_API_KEY ~/.claude/.env) && \
uv run [SKILL_SCRIPTS_DIR]/generate_image.py \
  --input-image "assets/character/original.jpg" \
  --prompt "Character design sheet in [STYLE] style. Keep facial features faithfully. Show 3 expressions: neutral explaining, surprised/eureka, thinking. White background, no text." \
  --filename "assets/character/[style-name]-sheet.png" \
  --resolution 2K

同一风格只生成一次,后续复用。


Step 1: 内容梳理

将原始材料转为逐张slide大纲。每张定义:

  • 标题:断言句,不是主题词 — 「Q3销售增长23%,新用户是主要驱动力」✓,「Q3销售」✗
  • 要点:最多3-4条
  • 视觉类型:插画 / 图表 / 流程图 / 引言
  • Path A:是否需要AI插画?Yes/No + 一行场景描述
  • Path B:完整视觉场景描述(布局+内容+情绪)

slide内容全部中文,仅保留必要英文(人名、品牌、技术术语)。

Checkpoint(Guided/Collaborative): 表格展示大纲,用户确认后进入Step 2。


Step 2: 风格选择

核心洞察:插画/漫画类风格AI生成效果远优于「专业极简」。 漫画风格有明确视觉语言,AI可充分发挥;暗色底+大留白缺乏视觉元素,生成结果「空」且「平」。

按主题推荐3个风格:

主题类型 第一推荐 第二推荐 第三推荐
品牌/产品 Snoopy漫画 Neo-Pop 浮世绘/敦煌
教育/培训 Neo-Brutalism 学習漫画 Snoopy漫画
技术分享 xkcd白板 Neo-Brutalism Ligne Claire
数据报告 NYT Magazine Pentagram编辑 Ligne Claire
年轻受众 Neo-Pop 像素画 孔版印刷
国风/东方 敦煌壁画 浮世绘 Takram思辨
正式商务 NYT Magazine Pentagram编辑 Build极简
路演/发布 苏联构成主义 NYT Magazine Neo-Pop
行业分析 Pentagram编辑 NYT Magazine Fathom数据
培训课件 Takram思辨 温暖叙事 学習漫画
内部分享 Neo-Brutalism The Oatmeal xkcd白板

用户说「想要XX风格」「不确定」「有例子吗」→ 查 references/design-movements.md 转换美学语言。

展示风格: 主动用 Read 工具显示 assets/style-samples/style-NN-name.png 样例图(不只是文字描述)。图片编号:01-snoopy, 02-manga, 03-ligne-claire, 04-neo-pop, 05-xkcd, 06-constructivism, 07-dunhuang, 08-ukiyo-e, 09-warm-narrative, 10-oatmeal, 11~17=第三梯队。

每个风格完整参数(色值/排版/构图/prompt规范)→ references/proven-styles-gallery.md

Checkpoint(Guided/Collaborative): 展示3个风格 + 样例图,用户选定后进入Step 3。


Step 3: 构建

Path A:HTML + 选择性插画

每张slide生成独立HTML文件(720pt × 405pt)。生成前必须遵守 4 条 html2pptx 硬性约束(见 references/prompt-templates.md 第2节),否则导出会报错:

  • DIV 里的文字必须用 \x3Cp>\x3Ch1>-\x3Ch6> 包裹,不能裸文字
  • 不支持 CSS 渐变,只能纯色(linear-gradient 会报错)
  • \x3Cp>/\x3Ch*> 不能有背景/边框,这些放在外层 \x3Cdiv>
  • \x3Cdiv> 不能用 background-image,改用 \x3Cimg> 标签

AI插画生成:

export $(grep GEMINI_API_KEY ~/.claude/.env) && \
uv run [SKILL_SCRIPTS_DIR]/generate_image.py \
  [--input-image "assets/style-samples/style-NN-name.png"] \
  --prompt "[scene description in [STYLE] style]" \
  --filename "slide-NN-illustration.png" \
  --resolution 2K

垫图机制:--input-image 传入风格样例图或角色设定图,强制AI生成与参照图风格一致的插画。

Path B:全AI视觉

每张slide生成完整图片(含所有文字和布局):

export $(grep GEMINI_API_KEY ~/.claude/.env) && \
uv run [SKILL_SCRIPTS_DIR]/generate_image.py \
  --input-image "assets/style-samples/style-NN-name.png" \
  --prompt "[完整视觉描述:布局+内容+风格+情绪]" \
  --filename "slide-NN-name.png" \
  --resolution 2K

短prompt比长prompt效果更好。 描述mood和内容,不要约束颜色比例、构图位置、字号数字。详细提示词模板 → references/prompt-templates.md


Step 4: 组装 PPTX

Path A(html2pptx):

node [SKILL_SCRIPTS_DIR]/html2pptx.js \
  slide-01.html slide-02.html ... \
  -o output.pptx

Path B(create_slides.py):

uv run [SKILL_SCRIPTS_DIR]/create_slides.py \
  slide-01.png slide-02.png ... \
  --layout fullscreen \
  -o output.pptx

Step 5: 收尾

  • Path A:可用 Playwright 截图预览关键slides
  • Path B:直接用 Read 工具显示生成的PNG

Checkpoint(所有模式): 展示预览,交付PPTX,汇报:完成X张,风格Y,文件路径Z。

Keynote/PowerPoint中可添加动画和Speaker Notes;Path A文字可继续编辑,Path B如有文字错误需重新生成该张图片。


Assets 目录

assets/
├── style-samples/     # 17种风格样例图(视觉参照 + 垫图两用)
│   └── style-NN-name.png
└── character/         # 用户个人形象
    ├── original.jpg   # 用户提供的照片
    └── [style]-sheet.png  # 各风格的角色设定图(首次使用时生成)

参考文件

需要 文件
17种风格完整参数(色值/排版/构图/prompt规范) references/proven-styles-gallery.md
HTML规范 + Path A/B提示词模板 references/prompt-templates.md
设计运动 → 风格映射(美学词汇转换) references/design-movements.md
设计原则与视觉规范 references/design-principles.md
Snoopy风格专项深度指南 references/proven-styles-snoopy.md
Usage Guidance
要点与建议: 1) 不一致与凭证暴露:这个技能确实需要一个 Gemini(Google)API key 来生成图像,但元数据没有声明任何环境变量。不要运行 SKILL.md 中提供的命令(尤其是 export $(grep GEMINI_API_KEY ~/.claude/.env))除非你确认 ~/.claude/.env 只包含你愿意共享的那个单一键。更安全的做法是直接在受控环境中以参数 --api-key 或在运行前显式设置一个临时环境变量。 2) 文件系统访问:SKILL.md 建议用 Glob 在文件系统中查找脚本,这会让代理搜索你的目录结构。若你担心隐私,请在受控目录(例如专门的工作目录)里放置该技能文件,并避免让代理扫描整个主目录。 3) 依赖与安装:仓库声明了 Node/Python 依赖但没有安装步骤。运行前请在隔离环境(虚拟环境 / container)中安装依赖并审查它们。注意 Playwright 会下载 Chromium 二进制并启用网页渲染与网络访问。 4) 网络与数据流:generate_image.py 使用 google-genai/httpx,运行时会把 prompts 和(可选)输入图像发送到远端 API;不要在 prompt 或输入图像中包含敏感或机密信息。 5) 操作建议:在信任来源前,要求作者/发布者补充: - 在技能元数据中声明所需的 GEMINI_API_KEY(primaryEnv)和任何其他凭证; - 提供明确的安装说明或 Docker/venv 快照; - 将“从 ~/.claude/.env 抽取凭证”的做法改为可选的、明确告知的步骤或删除; - 说明是否会向外部端点发送任何额外元数据(例如匿名使用统计)。 如果你决定安装或运行:仅在隔离环境中运行(容器或干净虚拟机),并使用专门为该技能创建的最小权限 API key(可随时撤销)。
Capability Analysis
Type: OpenClaw Skill Name: duan-skill Version: 1.0.0 The skill bundle facilitates an AI-driven presentation workflow but exhibits high-risk behavior in its instructions. Specifically, SKILL.md directs the agent to execute shell commands that grep sensitive credentials (GEMINI_API_KEY) directly from a private configuration file (~/.claude/.env). While this is intended to power the image generation script (scripts/generate_image.py), targeting specific credential stores in the user's home directory is a risky capability. The remaining components, including scripts/create_slides.py and scripts/html2pptx.js, appear to be legitimate utilities for PowerPoint generation and HTML rendering via Playwright, with no evidence of intentional data exfiltration or malicious persistence.
Capability Assessment
Purpose & Capability
技能的目的是生成 PPT 并包含图像生成、HTML→PPTX 转换和图片组装,代码文件(generate_image.py、html2pptx.js、create_slides.py)与该目的对得上。但元数据声明“无需环境变量/凭证”,而运行文档与脚本明确使用 GEMINI_API_KEY(或 --api-key),存在声明与实际需求不一致。
Instruction Scope
SKILL.md 指示在执行前用 grep 从 ~/.claude/.env 提取 GEMINI_API_KEY 并 export(export $(grep GEMINI_API_KEY ~/.claude/.env)),这直接要求读取用户主目录下的特定文件 —— 未在元数据中声明且可能包含多个敏感令牌。还要求使用 Glob 扫描文件系统以定位脚本目录(“**/duan-slides/scripts/generate_image.py”),这会让代理遍历用户文件路径以查找脚本位置,扩大了读文件的范围。总体上,指令包含读取用户本地敏感配置和全盘搜索的行为,超出仅“生成 PPT”所必需的最小范围。
Install Mechanism
仓内包含 package.json、Python script 注释里列出依赖(python-pptx、Pillow、google-genai、playwright、sharp 等),但没有 install spec(没有声明如何安装这些依赖或何处下载二进制)。html2pptx.js 依赖 Playwright/Chromium,会在首次运行时下载浏览器二进制,且没有说明应在受控环境中安装或审核依赖版本。缺少安装/沙箱建议增加了运行时风险和意外网络/磁盘行为的概率。
Credentials
脚本和文档明确使用 GEMINI_API_KEY,且 generate_image.py 需要该密钥或 --api-key 参数来调用 Google genai。技能元数据却未声明任何 required env 或 primary credential,这不一致。更重要的是 SKILL.md 建议直接从 ~/.claude/.env 提取并 export 令牌,这会读取可能包含其他秘密的文件。请求单一图像生成 API key 对功能是合理的,但读取用户主目录特定文件以及未在元数据中说明凭证需求是过度/不透明的。
Persistence & Privilege
技能未设置 always:true,也不请求修改其他技能或系统级配置。默认允许模型自主调用(平台默认),但在与未声明凭证访问和文件读取相结合时,自主调用会扩大攻击面;当前单项本身无异常。
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install duan-skill
  3. After installation, invoke the skill by name or use /duan-skill
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.0.0
duan-slides 1.0.0 - 全新发布:AI驱动的演示文稿全流程制作技能,支持内容结构化、风格设计、AI插画/视觉生成、PPTX导出。 - 支持两条生成路径:可编辑HTML + 插画(Path A)、全AI视觉图片(Path B),自由切换。 - 提供17种经过实战验证的视觉风格,主动作风格匹配与样例展示。 - 明确协作流程(全自动/引导/协作式),每步设置检查点,确保用户可控。 - 优化个人形象融入,自动检测与生成角色设定图,强化内容个性化。 - 全流程输出中文内容,并对多种需求场景(商务、教育、路演、国风等)有详细适配与建议。
Metadata
Slug duan-skill
Version 1.0.0
License MIT-0
All-time Installs 0
Active Installs 0
Total Versions 1
Frequently Asked Questions

What is 一句话生成PPT?

AI演示文稿全流程制作:内容结构化→设计选型→AI插画/HTML构建→PPTX导出。17种实战验证的视觉风格(漫画/极简/数据叙事/国风),可编辑HTML与全AI视觉两条路径自由选择。当用户提到"做PPT"、"制作幻灯片"、"演示文稿"、"Keynote"、"slides"、"课件"、"汇报材料"、"路演"时使用。 It is an AI Agent Skill for Claude Code / OpenClaw, with 135 downloads so far.

How do I install 一句话生成PPT?

Run "/install duan-skill" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is 一句话生成PPT free?

Yes, 一句话生成PPT is completely free, licensed under MIT-0. You can download, install and use it at no cost.

Which platforms does 一句话生成PPT support?

一句话生成PPT is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created 一句话生成PPT?

It is built and maintained by dream-boy (@lifenglei); the current version is v1.0.0.

💬 Comments