Token导航 LogoToken导航

Agent Skill · 研究检索

powerpoint-generator(幻灯片生成器)

powerpoint-generator 用于查找、检索和筛选相关信息,适合在 OpenClaw 中需要根据关键词、任务场景或来源线索快速定位候选结果时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

powerpoint-generator 是研究检索类 Agent Skill,可用宿主为 OpenClaw,通过ClawHub获取,权限为操作浏览器;许可证为 MIT-0,第三方扫描有提醒项,按安装量在研究检索类的 73,675 个 Skill 里排第 28,001。

总安装 3,293周安装 140GitHub Stars 1下载 1,154核验 2026-05-01

安装说明

本站只整理中文说明,不托管安装包,也不代用户安装。
GitHub
许可证
MIT-0
版本
1.0.1

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:powerpoint-generator(幻灯片生成器)
来源仓库:https://github.com/cerealaxis/powerpoint-generator
安装命令:
openclaw skills install powerpoint-generator
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 OpenClaw 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

ClawHubOpenClaw
openclaw skills install powerpoint-generator

这个 Skill 是做什么的

研究检索类 Skill 主要解决「找资料、核对事实、把来源整理清楚」的问题,通常会让助手先检索再总结。

专业全流程 PPT 演示文稿 AI 生成助手。模拟顶级设计公司的需求研究与视觉制作流程。支持多轮迭代与品牌一致性检查。powerpoint-generator 属于研究检索类 Skill,可作为该场景下的辅助能力补充。需通过 clawhub 安装并配置输出格式要求。适用于商业汇报与项目提案场景。

上手步骤

4 步
  1. 1

    确认自己的宿主工具

    公开资料标注支持 OpenClaw;先确认自己用的是其中之一,再按对应工具的 Skills 目录放置。

  2. 2

    拿到安装命令

    可以直接复制的命令是 openclaw skills install powerpoint-generator;命令里的占位符换成自己的路径或密钥再执行。

  3. 3

    安装后重启宿主

    命令执行完要完全退出宿主工具再打开,让新装的 Skill 被重新扫描到,否则列表里可能看不到。

  4. 4

    按最小权限试用

    它需要操作浏览器,先在测试目录或测试账号里跑,确认没问题再放到正式项目。

常见问题

6 条

powerpoint-generator 怎么安装?

在终端执行 openclaw skills install powerpoint-generator。装完完全退出宿主工具再打开,让它重新扫描本地 Skill。

powerpoint-generator 支持哪些 AI 工具?

公开资料标注支持 OpenClaw。其他工具只要能读取本地 Skill 目录,一般也能手动放进去,但要自己确认触发方式是否一致。

powerpoint-generator 需要什么权限?

权限级别是操作浏览器。该 Skill 可能涉及浏览器控制能力,使用时可能读取或操作网页内容,需要在受控环境中确认权限边界。

powerpoint-generator 是免费的吗?

来源标注的许可证是 MIT-0。本站不代收任何费用,也不托管安装包;能否商用、要不要署名,以许可证原文为准。

powerpoint-generator 用的人多吗?

公开数据是累计安装 3,293 次,近一周安装 140 次,下载 1,154 次,GitHub 1 星。这些数字来自第三方目录统计,只能当作热度参考,不代表质量或安全性。

powerpoint-generator 安全吗?

第三方扫描有提醒项,说明存在需要人工确认的行为。安装前请打开源码看清它读了什么、联网到哪里。

值得选的地方和要先想清楚的地方

值得选的地方

  • 专注 OpenClaw 一种宿主,触发方式和使用习惯不用来回切换。
  • 许可证明确为 MIT-0,商用和分发边界好判断。

先想清楚的地方

  • 第三方扫描存在提醒项或未通过项,需要人工逐条确认。
  • 第三方目录整理,版本更新和行为细节以来源仓库为准。

适不适合你

更适合

  • 已经在用 OpenClaw,想直接扩展它能力的人。
  • 需要处理研究检索类任务、又不想每次都手写提示词的人。

不太适合

  • 需要厂商级技术支持和 SLA 的生产系统。

研究检索类 Skill 对比

6 个同类
Skill总安装GitHub 星权限许可证扫描
find-skills

寻找技能 · Codex、Claude

31,199,81316,486操作浏览器MIT有提醒
self-improving-agent

自我改进 Agent · OpenClaw

16,464,0023,396接触敏感数据MIT-0通过
soultrace

灵魂追踪 · Codex、Claude

7,588,94412需要联网未明确有提醒
self-improving

自我完善 · OpenClaw

6,829,2841,046需要联网MIT-0通过
microsoft-foundry

微软代工厂 · Codex、Claude

6,614,144764调用外部服务未明确有提醒
powerpoint-generator

幻灯片生成器 · 本页

3,2931操作浏览器MIT-0有提醒

按安装量取同分类前几名;数字来自第三方目录统计,只作热度参考,不代表质量结论。

SKILL.md 原文

name
ppt-agent
description
Professional full-process PPT presentation AI generation assistant. Simulates the complete workflow of a top-tier PPT design company (requirements research -> information gathering -> outline planning -> draft planning -> design draft), outputting high-quality HTML presentations. Triggered when users mention making PPT, presentations, slides, training materials, roadshow decks, or product introduction pages. Also applies when users say "help me make an introduction about X" or "I need to present Y to my boss" - any scenario requiring structured multi-page presentation content.

PPT Agent -- Professional Full-Process Presentation Generation

Core Philosophy

Mimics the complete workflow of a professional PPT design company (priced at 10,000+ RMB per page), not "give an outline and apply a template":

  1. Research before generation -- Fill content with real data, never fabricate
  2. Separate planning from design -- Verify information structure first, then apply visual packaging
  3. Content-driven layout -- Bento Grid card-style layout, each page's layout determined by its content
  4. Consistent global style -- Lock in style first, then generate page by page, ensuring cross-page consistency
  5. Smart illustrations -- Use image generation capabilities to add illustrations for each page (available in most environments)

Environment Setup [Required for First Use]

Node.js Environment

China Mainland mirror installation (must set, otherwise puppeteer Chrome binary download will fail):

export PUPPETEER_DOWNLOAD_HOST=https://storage.googleapis.com.cnpmjs.org
npm install -g puppeteer --unsafe-perm
npm install -g dom-to-svg esbuild

Verification: node -e "require('puppeteer'); console.log('puppeteer OK')"

If full puppeteer fails to install (Chrome download blocked in China mainland), scripts will automatically fall back to puppeteer-core with system Chrome at /usr/bin/google-chrome. You can also install it directly:

npm install -g puppeteer-core

Python Environment

pip install python-pptx lxml Pillow

Pipeline Mandatory Declaration [Red Lines]

The following rules must not be violated. Any bypass will cause severe degradation in output quality.

Six-Step Pipeline Order is Fixed, No Skipping

Step 1 → Step 2 → Step 3 → Step 4 → Step 5 → Step 6

Prohibited Behaviors

  • ❌ Skip Step 1 and directly generate PPT
  • ❌ Enter Step 5c without a planning draft
  • ❌ Stop at preview.html without executing SVG and PPTX
  • ❌ Use other tools/pipelines to replace this workflow

Only Allowed Degradation

  • Node.js unavailable → Skip SVG branch, output preview.html only. Notify user.
  • Python unavailable → Skip SVG + PNG + PPTX branches, output preview.html only. Notify user and wait for feedback.
  • Puppeteer unavailable → Skip PNG branch (visual QA also skipped). SVG branch continues.
  • Vision model unavailable → Skip visual audit in visual_qa.py, DOM assertion still runs.

Step Enforcement Levels

StepEnforcement Level
Step 1STOP -- Cannot skip, must wait for user reply
Step 2-3Cannot skip
Step 4Cannot skip, must wait for user confirmation of outline
Step 5 internalFixed order: 5a → 5b → 5c
Step 6Cannot skip, must execute all post-processing pipeline

Environment Awareness

Self-reflect on the agent's tool capabilities before starting work:

CapabilityDegradation Strategy
Information retrieval (search/URL/docs/knowledge base)All missing -> rely on user-provided materials
Image generation (available in most environments)Missing -> pure CSS decoration instead
File outputMust have
Script execution (Python/Node.js)Missing -> skip auto-packaging and SVG conversion

Principle: Check the actually callable tool list, use whatever is available.


Path Conventions

Paths used repeatedly throughout the process. Determine immediately after Step 1:

VariableMeaningHow to Get
SKILL_DIRAbsolute path of the directory where this SKILL.md residesThe directory from which SKILL.md is read when the skill is triggered
OUTPUT_DIROutput root directoryppt-output/ under the user's current working directory (mkdir -p on first use)

All subsequent paths are based on these two variables and will not be explained again.


Input Modes and Complexity Assessment

Entry Detection

EntryExampleStart from
Topic only"Make a Dify company introduction PPT"Step 1 full flow
Topic + requirements"15-page AI security PPT, dark tech style"Step 1 (skip some known issues)
Source material"Turn this report into a PPT"Step 1 (material-focused)
Existing outline"I have an outline, generate the design"Step 4 or 5

Skip Rules

When skipping pre-requisite steps, must complete corresponding dependent outputs:

Starting StepMissing DependencyHow to Fill
Step 4Page content textFirst use Prompt #3 to generate content allocation for each page
Step 5Planning draft JSONUser provides or execute Step 4 first

Complexity Adaptation

Automatically adjust process granularity based on target page count:

ScalePagesResearchSearchPlanningGeneration
Light<= 8 pages3-question abbreviated version (scenario + audience + supplementary info)3-5 queriesStep 3 can be merged with Step 4Page by page
Standard9-18 pagesFull 7 questions8-12 queriesFull processBy Part, 3-5 pages per batch
Large> 18 pagesFull 7 questions10-15 queriesFull processBy Part, 3-5 pages per batch, confirm between batches

Breakpoint Recovery

The workflow is stateless. After interruption, the Main Agent scans existing artifacts on disk to determine the recovery point automatically.

Recovery Logic

def find_recovery_point(run_dir: Path) -> str:
    """Scan existing artifacts to determine recovery point."""
    milestones = [
        ("presentation-svg.pptx", "P5-SVG-DONE"),
        ("presentation-png.pptx", "P5-PNG-DONE"),
        ("png/slide-*.png", "P4-VisualQA-DONE"),
        ("slides/slide-*.html", "P4-PAGE-DONE"),
        ("style.json", "P3.5-STYLE-LOCKED"),
        ("outline.txt", "P3-OUTLINE-DONE"),
        ("search.txt", "P2-SEARCH-DONE"),
        ("requirements-interview.txt", "P1-REQUIREMENTS-DONE"),
    ]
    for pattern, step in reversed(milestones):
        matches = list(run_dir.glob(pattern))
        if matches:
            return step
    return "P0-START"

Recovery Rules

RuleDescription
No state filesThe workflow does not rely on any progress state files
Scan disk artifactsRecovery point is inferred from existing files on disk
Partial completion OKEven one page's HTML exists = P4 is considered reached for that page
Agent decidesThe Main Agent decides which Subagents to spawn based on scan results
No rollbackArtifacts already written are never deleted during recovery

Artifact Existence = Milestone Reached

ArtifactMilestone
requirements-interview.txtP1 Complete
search.txtP2 Complete
outline.txtP3 Complete
style.jsonP3.5 Style Locked
slides/slide-N.html (any)P4 Page generation in progress
png/slide-N.png (all)P4 Visual QA Complete
presentation-svg.pptxP5 SVG Export Complete
presentation-png.pptxP5 PNG Export Complete

Subagent Scheduling (Subagent Dispatch)

Each stage has a dedicated Subagent to avoid Context pollution. Context isolation ensures each Subagent only carries its own stage's information.

Subagent Architecture

Main Agent (Decision + Dispatch)
    │
    ├── ResearchAgent ──→ search.txt
    │       Model: MUST pass --model parameter
    │
    ├── OutlineAgent ──→ outline.txt
    │       Model: MUST pass --model parameter
    │
    ├── StyleAgent ──→ style.json
    │       Model: MUST pass --model parameter
    │
    ├── PlanningAgent ──→ planning-N.json (per page)
    │       Model: MUST pass --model parameter
    │
    ├── PageAgent-1 ──→ slide-1.html (parallel)
    ├── PageAgent-2 ──→ slide-2.html (parallel)
    │         ... (all pages parallel)
    └── PageAgent-N ──→ slide-N.html (parallel)
        Model: MUST pass --model parameter for each

Main Agent ← All Subagents complete ← Step 6 Post-processing

Subagent Rules

RuleDescription
Must specify --modelEvery Subagent MUST receive explicit --model parameter, no default fallback
Context isolationEach Subagent only reads/writes its own stage's artifacts
Failure isolationSingle Subagent failure does not block other Subagents
Retry on failureFailed Subagent retries up to 2 times before escalation to Main Agent

Artifact Naming Convention

ArtifactFilename
Requirementsrequirements-interview.txt
Search Resultssearch.txt
Outlineoutline.txt
Style Definitionstyle.json
Planning Draftplanning-N.json (N = page number)
Design Draftslides/slide-N.html
Screenshotslides/slide-N.png
SVGsvg/slide-N.svg

6-Step Pipeline

Step 1: Requirements Interview [STOP -- Cannot Skip]

Cannot skip. No matter how simple the topic, must ask questions and wait for user reply before continuing. Do not make decisions for the user.

Execute: Use references/prompts.md Prompt #1

  1. Search topic background information (3-5 items)
  2. Based on complexity, choose full 7 questions or abbreviated 3 questions, send to user in one go
  3. Wait for user reply (blocking point)
  4. Organize into requirements JSON

7-Question Three-Tier Structure (light mode only asks questions 1, 2, 7):

TierQuestionDetermines
Scenario1. Presentation scenario (live/self-reading/training)Information density and visual style
Scenario2. Core audience (dynamically generated profile)Professional depth and persuasion strategy
Scenario3. Desired action (decision/understanding/execution/change perception)Final content arrangement direction
Content4. Narrative structure (problem->solution/educational/comparison/timeline)Outline skeleton logic
Content5. Content focus (dynamically generated from search results, multi-select)Each Part's theme weight
Content6. Persuasion elements (data/case/authority/method, multi-select)Card content type preferences
Execution7. Supplementary info (speaker/brand colors/must-include/must-avoid/page count/illustration preference)Specific execution details

Output: Requirements JSON (topic + requirements)


Step 2: Information Gathering

Take inventory of all information retrieval capabilities and use them all.

Execute:

  1. Plan queries based on topic (quantity reference complexity table)
  2. Use all available information retrieval tools for parallel search
  3. Summarize each group of results

Output: Search results collection JSON


Step 3: Outline Planning

Execute: Use references/prompts.md Prompt #2 (Outline Architect v2.0)

Methodology: Pyramid Principle -- Conclusion first, above to below, categorize and group, logical progression

Self-check: Page count meets requirements / each part >= 2 pages / key points have data support

Output: [PPT_OUTLINE] JSON


Step 4: Content Allocation + Planning Draft [Cannot Skip -- Must Wait for User Confirmation of Outline]

Combine content allocation and planning draft generation into one step. While thinking about what content each page should have, also decide layout and card types, making it more natural and efficient.

Execute: Use references/prompts.md Prompt #3 (Content Allocation and Planning Draft)

Key Points:

  • Precisely map search materials to each page
  • Design multi-layer content structure for each page (main card 40-100 chars + data highlight + supporting points)
  • Also determine page_type / layout_hint / cards[] structure
  • Each content page at least 3 cards + 2 card_types + 1 data card
  • Layout selection reference references/bento-grid.md decision matrix

Show planning draft overview to user, recommend waiting for user confirmation before entering Step 5.

Output: Per-page planning card JSON array -> Save as OUTPUT_DIR/planning.json


Step 5: Style Decision + Design Draft Generation

Split into three sub-steps, order cannot be reversed:

5a. Style Decision

Execute: Read references/style-system.md, select or infer style

Match one of 8 preset styles based on topic keywords (dark tech / xiaomi orange / blue white business / royal red / fresh green / luxury purple / minimal gray / vibrant rainbow), detailed matching rules and full JSON definitions in references/style-system.md.

Output: Style definition JSON -> Save as OUTPUT_DIR/style.json

5b. Smart Illustrations [Execute Based on Step 1 Question 7 Answer]
If user selected "no illustrations needed" in Step 1, skip this entire section.

Step 1 Answer Routing:

Step 1 AnswerAction
"User provides images"Use images from user-provided paths
"AI generation"Call image_generate tool
"Unsplash"Call Unsplash API
Illustration Timing

Before generating each page's HTML, generate that page's illustration first. At least 1 per page (cover page, section cover must have), save to OUTPUT_DIR/images/.

⚠️ Image Path Rule -- MUST FOLLOW: All images must be downloaded to OUTPUT_DIR/images/ before generating HTML. Use <img src="images/xxx.png"> with relative paths in HTML. Never reference external URLs (Unsplash etc.) directly in HTML -- they cannot load under file:// protocol.

Degradation Chain (automatic degradation, no need to ask user again):

AI generation (image_generate)
  └─ Tool available → Generate image
  └─ Tool unavailable/failed → Unsplash API
                                 └─ Key configured → Search and get
                                 └─ Key not configured/failed → Pure CSS decoration degradation

User provides images
  └─ Path valid and semantically matches → Use that image
  └─ Path invalid/semantically mismatched → Degrade to Unsplash or CSS decoration

Unsplash
  └─ UNSPLASH_ACCESS_KEY configured → Call API
  └─ Key not configured/failed → Pure CSS decoration degradation

Image Quantity by Page Type:

Page TypeWith IllustrationsWithout
Cover pageMust havePure CSS decoration
Section coverMust havePure CSS decoration
Content pageOptional 1 per pageNo image
End pageOptionalPure CSS decoration

Output: Illustration files under OUTPUT_DIR/images/ (if any)

image_generate Prompt Construction Formula

Prompt must satisfy 4 dimensions simultaneously, assembled by formula:

[Content Topic] + [Visual Style] + [Image Composition] + [Technical Constraints]

DimensionDescriptionExample
Content topicExtracted from that page's planning draft JSON core concept, specific to scene/object"DMSO molecular purification process, crystallization flask with clear liquid"
Visual styleAligned with style.json color scheme and emotional toneDark tech -> "deep blue dark tech background, subtle cyan glow, futuristic"
Image compositionDecided by how the image is placed in the pageRight side semi-transparent -> "clean composition, main subject on left, fade to transparent on right"
Technical constraintsFixed suffix ensuring output quality"no text, no watermark, high quality, professional illustration"
Style and Illustration Keyword Mapping
PPT StyleIllustration Style Keywords
Dark techdark tech background, neon glow, futuristic, digital, cyber
Xiaomi orangeminimal dark background, warm orange accent, clean product shot, modern
Blue white businessclean professional, light blue, corporate, minimal, bright
Royal redtraditional Chinese, elegant red gold, ink painting, cultural
Fresh greenfresh green, organic, nature, soft light, watercolor
Luxury purpleluxury, purple gold, premium, elegant, metallic
Minimal grayminimal, grayscale, clean, geometric, academic
Vibrant rainbowcolorful, vibrant, energetic, playful, gradient, pop art
Gradient bluegradient blue, tech, futuristic, clean, digital, professional
Warm sunsetwarm orange, sunset, lifestyle, travel, food, cozy lighting
Nordic whiteminimal, white, clean, scandinavian, lifestyle, bright
Cyber punkneon, cyber, dark, futuristic, gaming, vibrant, holographic
Elegant goldgold, luxury, elegant, premium, metallic, champagne
Ocean depthocean blue, deep sea, marine, aquatic, serene, gradient
Retro filmvintage, film grain, retro, warm tones, nostalgic, cinematic
Corporate bluecorporate, professional, blue, business, formal, trustworthy
Adjustment by Page Type
Page TypeImage CharacteristicsPrompt Additional Keywords
Cover pageTopic overview, visual impact"hero image, wide composition, dramatic lighting"
Section coverSymbolic visual of that chapter's topic"symbolic, conceptual, centered composition"
Content pageSupporting illustration, not overwhelming"supporting illustration, subtle, background-suitable"
Data pageAbstract data visualization atmosphere"abstract data visualization, flowing lines, tech"
Prohibited Items
  • No text in images (AI-generated text quality is poor)
  • No colors conflicting with page color scheme (dark theme with dark images, light theme with light images)
  • No irrelevant decorative images (every image must be semantically related to that page's content)
  • No duplicate prompts (each page's image must be unique)

Output: Illustration files under OUTPUT_DIR/images/

5c. PageAgent Parallel Generation
Cannot skip planning draft and directly generate. Each page must first have Step 4's structure JSON.

Parallel Scheduling: All pages are generated in parallel via PageAgent-N subagents. Each PageAgent is responsible for one page only.

Parallel Strategy:

ScalePagesStrategy
Small<= 5 pagesAll pages parallel
Standard6-18 pagesAll pages parallel (independent)
Large> 18 pagesBy Part parallel, pages within Part parallel

PageAgent Workflow:

PageAgent-N
    │
    ├── 1. Read planning-N.json
    ├── 2. Read style.json
    ├── 3. Read images/planning-N.png (if exists)
    ├── 4. Generate slide-N.html
    ├── 5. DOM self-check (overflow / pseudo-elements / hardcoded colors)
    └── 6. Output: --- PAGE N COMPLETE ---

Failure Handling:

  • Single page failure does not affect other pages
  • Failed page enters PagePatchAgent retry queue (max 2 retries)
  • Main Agent waits for all PageAgents to complete before proceeding to Step 6

Per-Page Prompt Assembly Formula:

Prompt #4 template
+ Style definition JSON (5a output) [required]
+ That page's planning draft JSON (Step 4 output, containing cards[]/card_type/position/layout_hint) [required]
+ That page's content text (Step 4 output) [required]
+ Illustration path (5b output) [optional -- omit IMAGE_INFO block when no illustration]

Core Design Constraints (complete checklist in Prompt #4):

  • Canvas 1280x720px, overflow:hidden
  • All colors referenced via CSS variables, no hardcoding
  • All visually visible elements must be real DOM nodes, graphics prefer inline SVG
  • Prohibited: ::before/::after pseudo-elements for visual decoration, conic-gradient, CSS border triangles
  • Illustration integration: fade blend / tinted overlay / ambient background / crop viewport / circular crop (techniques in Prompt #4)

Cross-Page Visual Narrative:

StrategyRuleReason
Density alternationHigh-density pages followed by low-density pagesAvoid visual fatigue
Chapter color progressionEach Part uses a different accent main colorUnconsciously perceive chapter transitions
Cover-ending echoEnd page echoes cover pageComplete closed-loop
Progressive revelationComplexity increases across pagesGuide audience to deeper understanding

Output: One HTML file per page -> OUTPUT_DIR/slides/


Step 6: Post-Processing [Must Do -- Execute Immediately After HTML Generation]

Cannot skip, must execute. After HTML generation, must immediately execute the following pipeline steps.
slides/*.html
  ├── html_packager.py --> preview.html
  ├── html2svg.py --> svg/*.svg --> svg2pptx.py --> presentation-svg.pptx
  └── html2png.py --> png/*.png --> png2pptx.py --> presentation-png.pptx

Dependency check (auto-execute on first run):

pip install python-pptx lxml Pillow 2>/dev/null
npm install puppeteer dom-to-svg 2>/dev/null

Execute in order:

  1. Merge Preview -- Run html_packager.py
   python SKILL_DIR/scripts/html_packager.py OUTPUT_DIR/slides/ -o OUTPUT_DIR/preview.html
  1. SVG Conversion -- Run html2svg.py (DOM direct to SVG, preserves editable <text>)

> Important: HTML design drafts must comply with pipeline compatibility rules in references/pipeline-compat.md, otherwise element loss and position misalignment will occur after conversion.

   python SKILL_DIR/scripts/html2svg.py OUTPUT_DIR/slides/ -o OUTPUT_DIR/svg/

Uses dom-to-svg underneath (auto-installs), esbuild bundles on first run. Degradation: If dom-to-svg installation fails, SVG branch will abort and notify user. PNG branch continues independently.

  1. SVG PPTX Export -- Run svg2pptx.py (OOXML native SVG embedding, PPT 365 editable)
   python SKILL_DIR/scripts/svg2pptx.py OUTPUT_DIR/svg/ -o OUTPUT_DIR/presentation-svg.pptx --html-dir OUTPUT_DIR/slides/

In PPT 365, right-click image -> "Convert to Shape" to edit text and shapes.

  1. PNG Screenshot -- Run html2png.py (Puppeteer screenshot, parallel execution)
   python SKILL_DIR/scripts/html2png.py OUTPUT_DIR/slides/ -o OUTPUT_DIR/png/ --concurrency 4

Uses Puppeteer for pixel-perfect screenshots. Concurrency controls parallel screenshot threads. Degradation: If Node.js/Puppeteer unavailable, skip PNG branch entirely.

  1. PNG PPTX Export -- Run png2pptx.py (PNG as background, cross-platform 100% visual fidelity)
   python SKILL_DIR/scripts/png2pptx.py OUTPUT_DIR/png/ -o OUTPUT_DIR/presentation-png.pptx

PNG fills each slide as background. Text is not editable but visuals are pixel-perfect.

  1. Notify User -- Inform output location and usage:

- preview.html -- Open in browser for paginated preview - presentation-svg.pptx -- PPTX with editable text and shapes (SVG vectors) - presentation-png.pptx -- PPTX with pixel-perfect visuals (PNG backgrounds, text not editable) - svg/ -- Each SVG can also be dragged individually into PPT - png/ -- PNG screenshots (for Visual QA reference) - If SVG branch was skipped, explain reason and tell user they can install Node.js and rerun - If PNG branch was skipped, note that PNG screenshots are used for Visual QA only

Output: preview.html + svg/*.svg + png/*.png + presentation-svg.pptx + presentation-png.pptx


Output Directory Structure

ppt-output/
  slides/                  # Per-page HTML
  svg/                     # Vector SVG (importable into PPT for editing)
  png/                     # PNG screenshots (for Visual QA + PNG PPTX export)
  images/                  # AI illustrations
  preview.html             # Paginated preview
  presentation-svg.pptx    # Editable PPTX (SVG vectors, PPT 365 "Convert to Shape")
  presentation-png.pptx    # Pixel-perfect PPTX (PNG backgrounds, not editable)
  outline.json             # Outline
  planning.json            # Planning draft
  style.json               # Style definition

Quality Self-Check

DimensionCheck Items
ContentEach page >= 2 info cards / >= 60% content pages contain data / chapters have progression
VisualGlobal style consistent / illustration style unified / cards don't overlap / text doesn't overflow
TechnicalCSS variables unified / SVG-friendly constraints followed / HTML renderable by Puppeteer / pipeline-compat.md prohibited list checked

Reference File Index

FileWhen to ReadKey Content
references/prompts.mdBefore each generation step5 Prompt templates (research/outline/planning/design/notes)
references/style-system.mdStep 5a16 preset styles + CSS variables + style JSON model
references/bento-grid.mdStep 5c7 layout specs + 12 card types + decision matrix
references/method.mdFirst-time understandingCore philosophy and methodology
references/pipeline-compat.mdDuring Step 5c design draft generationCSS prohibited list + image paths + font size mixing + SVG text + ring charts + svg2pptx notes

平台分布

OpenClaw

87.06%
按下载量换算1,005

安全审计

VirusTotal

通过

ClawScan

可疑

Static analysis

通过

权限和风险

操作浏览器

该 Skill 可能涉及浏览器控制能力,使用时可能读取或操作网页内容,需要在受控环境中确认权限边界。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。来源安全扫描存在提醒或未通过项,安装前请自行复核。目前只有一个公开来源,建议同时核对源仓库。

继续浏览同类 Skills