Skill flagged — suspicious patterns detected

ClawHub Security flagged this skill as suspicious. Review the scan results before using.

Markdown to PPT (Smart Layout)

v1.1.0

智能 Markdown 转 PPT。自动分析内容结构、智能分页、详细设计每页布局、自动生成/搜索配图。支持 Slidev/HTML/PPTX 多格式输出。| Intelligent Markdown to PPT with auto-layout and image generation.

0· 99·0 current·0 all-time
byZixuan@neutronstar238

Install

OpenClaw Prompt Flow

Install with OpenClaw

Best for remote or guided setup. Copy the exact prompt, then paste it into OpenClaw for neutronstar238/md-to-ppt.

Previewing Install & Setup.
Prompt PreviewInstall & Setup
Install the skill "Markdown to PPT (Smart Layout)" (neutronstar238/md-to-ppt) from ClawHub.
Skill page: https://clawhub.ai/neutronstar238/md-to-ppt
Keep the work scoped to this skill only.
After install, inspect the skill metadata and help me finish setup.
Use only the metadata you can verify from ClawHub; do not invent missing requirements.
Ask before making any broader environment changes.

Command Line

CLI Commands

Use the direct CLI path if you want to install manually and keep every step visible.

OpenClaw CLI

Bare skill slug

openclaw skills install md-to-ppt

ClawHub CLI

Package manager switcher

npx clawhub@latest install md-to-ppt
Security Scan
VirusTotalVirusTotal
Benign
View report →
OpenClawOpenClaw
Suspicious
medium confidence
Purpose & Capability
Name/description, README, SKILL.md and the included Python script all align: parsing Markdown, auto-layout, and producing Slidev/HTML/PPTX outputs. Required capabilities (reading a Markdown file, creating output assets, fetching images) are coherent with the stated purpose.
Instruction Scope
Runtime instructions explicitly allow WebFetch/WebSearch and describe downloading images from Unsplash/Pexels and calling AI image-generation APIs. Those operations will send content (queries and possibly portions of the document) to external services. The SKILL.md does not instruct reading unrelated local files or env vars, but network fetches and optional AI-generation introduce external data flows the user should be aware of.
Install Mechanism
No install spec is provided (instruction-only from the registry), and dependencies listed are standard developer tools (Slidev, python-pptx). The included script uses only typical Python libraries (requests). No downloads from untrusted URLs or archive extraction steps were declared in the registry metadata.
!
Credentials
The package claims it may 'call AI 绘画 API' but the registry metadata lists no required environment variables or primary credential. The script uses Unsplash Source (which needs no key) for image searches (seen in partial script), but SKILL.md's mention of AI-generation is vague and could require API keys (OpenAI, Stability, etc.) that are not declared. This inconsistency (networked image generation vs no credential requirements) is worth flagging.
Persistence & Privilege
Skill is user-invocable, not always-included, and does not request system-wide config modifications. It reads user-specified Markdown files and writes output assets (expected behavior). No elevated persistence or privileges are requested.
What to consider before installing
This skill appears to do what it claims — parse Markdown and build slides, downloading images from web sources — but it performs network operations (image search/download and possibly AI image-generation). Before installing or running: 1) review scripts/md_to_ppt.py yourself (or ask the author) to confirm whether any AI image-generation calls send your document or sensitive text to an external API and which endpoints are used; 2) be cautious when enabling automatic image generation/search (it will make outbound requests and store downloaded images in assets/); 3) don't feed sensitive credentials or confidential content into files you convert unless you verify where data is sent; 4) if you want to disable external calls, run the tool in an offline mode or patch the script to disable auto-image generation; and 5) ask the publisher for the source/homepage and clarification about any required API keys before granting network or credential access.

Like a lobster shell, security has layers — review code before you run it.

latestvk979khf5sxpvwpr62zmft9z34x84ejps
99downloads
0stars
2versions
Updated 2w ago
v1.1.0
MIT-0

📊 智能 Markdown 转精美 PPT

核心升级 v1.1.0

  • 🤖 智能内容分析 - 自动识别内容类型和优先级
  • 📐 自动布局设计 - 根据内容量智能分页和布局
  • 🖼️ 自动配图 - 生成插图或从网络搜索下载
  • 🎨 布局模板 - 10+ 种专业布局模板

🎯 工作流程

用户输入 Markdown
      ↓
【阶段 1】内容分析
  - 识别主题和核心观点
  - 评估内容量和复杂度
  - 确定目标受众和场景
      ↓
【阶段 2】智能分页
  - 根据内容类型自动分组
  - 每页一个核心观点
  - 避免信息过载
      ↓
【阶段 3】布局设计
  - 为每页选择最佳布局
  - 安排标题/正文/图片位置
  - 设计视觉层次
      ↓
【阶段 4】自动配图
  - 生成 AI 插图 或
  - 从网络搜索相关图片
  - 优化图片尺寸和位置
      ↓
【阶段 5】生成 PPT
  - 应用主题模板
  - 渲染最终效果
  - 提供预览和导出

📐 智能分页规则

分页触发条件

条件阈值处理
列表项数量> 5 项拆分为多页
文字数量> 100 字/页拆分或精简
代码块> 15 行单独一页
多个一级标题每个标题新页自动分页
表格> 5 行单独一页

内容分组策略

输入内容分析
      ↓
识别内容块类型:
├─ 标题块 (# 标题 + 副标题)
├─ 列表块 (- 列表项)
├─ 引用块 (> 引用)
├─ 代码块 (```code```)
├─ 表格块 (|table|)
└─ 图片块 (![img](url))
      ↓
分组规则:
- 每个一级标题 = 独立章节
- 每 3-5 个列表项 = 一页
- 每个代码块 = 单独一页(如>15 行)
- 每个表格 = 单独一页
- 引用可与其他内容合并

🎨 布局模板库

模板 1:标题页 (Title)

┌─────────────────────────────┐
│                             │
│         主标题              │
│         副标题              │
│                             │
│      作者 | 日期            │
│                             │
└─────────────────────────────┘
适用:封面、章节起始页

模板 2:要点列表 (Bullet List)

┌─────────────────────────────┐
│  标题                       │
├─────────────────────────────┤
│  • 要点 1                   │
│  • 要点 2                   │
│  • 要点 3                   │
│  • 要点 4                   │
│           [配图]            │
└─────────────────────────────┘
适用:功能列表、优势说明

模板 3:左右对比 (Two Column)

┌─────────────────────────────┐
│  标题                       │
├──────────────┬──────────────┤
│   左侧内容   │   右侧内容   │
│   (Before)   │   (After)    │
│              │              │
└──────────────┴──────────────┘
适用:对比、前后变化、优劣分析

模板 4:数据表格 (Data Table)

┌─────────────────────────────┐
│  数据概览                   │
├─────────────────────────────┤
│  ┌─────┬─────┬─────┐       │
│  │ A   │ B   │ C   │       │
│  ├─────┼─────┼─────┤       │
│  │ 1   │ 2   │ 3   │       │
│  └─────┴─────┴─────┘       │
│        [图表可视化]         │
└─────────────────────────────┘
适用:数据展示、对比分析

模板 5:代码展示 (Code)

┌─────────────────────────────┐
│  功能说明                   │
├─────────────────────────────┤
│  ```python                  │
│  def hello():              │
│      print("World")        │
│  ```                        │
│                             │
│  [代码说明/输出结果]        │
└─────────────────────────────┘
适用:技术分享、Demo 演示

模板 6:引用强调 (Quote)

┌─────────────────────────────┐
│                             │
│    "重要引用内容"           │
│                             │
│         — 作者              │
│                             │
│  [背景图/相关插图]          │
└─────────────────────────────┘
适用:金句、核心价值主张

模板 7:时间轴 (Timeline)

┌─────────────────────────────┐
│  发展历程                   │
├─────────────────────────────┤
│  2020 → 2021 → 2022 → 2023 │
│   ●      ●      ●      ●   │
│                             │
│  [各阶段说明]               │
└─────────────────────────────┘
适用:发展历程、项目进度

模板 8:图文混排 (Hero Image)

┌─────────────────────────────┐
│  标题                       │
├─────────────────────────────┤
│                             │
│      [大幅配图]             │
│                             │
│  简短说明文字               │
└─────────────────────────────┘
适用:产品展示、场景演示

模板 9:数据可视化 (Charts)

┌─────────────────────────────┐
│  数据洞察                   │
├─────────────────────────────┤
│     ┌───┐                   │
│  ┌──┼───┼──┐               │
│  │  │   │  │  [柱状图]     │
│  └──┴───┴──┘               │
│                             │
│  关键数据解读               │
└─────────────────────────────┘
适用:报表、数据分析

模板 10:结束页 (Ending)

┌─────────────────────────────┐
│                             │
│        谢谢观看             │
│                             │
│     Q&A / 联系方式          │
│                             │
└─────────────────────────────┘
适用:演示结束

🖼️ 自动配图策略

优先级 1:AI 生成插图

当内容包含:
- 抽象概念(如"效率"、"创新")
- 未来场景(如"AI 时代")
- 情感表达(如"成功"、"合作")

调用 AI 绘画 API 生成:
- 风格:与主题匹配
- 尺寸:1920x1080
- 格式:PNG

优先级 2:网络搜索下载

当内容包含:
- 具体事物(如产品、人物)
- 数据图表
- 场景图片

搜索策略:
1. 提取页面关键词
2. 在 Unsplash/Pexels 搜索
3. 下载合适尺寸图片
4. 保存到 assets/目录

优先级 3:图标/Emoji

当内容包含:
- 列表项
- 分类标签
- 状态标识

使用:
- Emoji 表情
- FontAwesome 图标
- 自定义 SVG 图标

配图位置规则

布局模板配图位置尺寸建议
要点列表右侧 1/3400x300
左右对比每侧一半各 500x400
引用强调背景/底部全屏/600x400
图文混排中央大幅800x600
数据可视化中央600x400

🔧 使用示例

示例 1:基础转换

用户:/md_to_ppt ./docs/report.md
助手:📊 正在分析文档结构...
     ✅ 检测到 3 个章节,12 个内容块
     📐 智能分页:预计生成 8 页幻灯片
     🎨 正在为每页设计布局...
     🖼️ 正在搜索/生成配图...
     ✅ 完成!生成 8 页精美 PPT

示例 2:指定主题

用户:/md_to_ppt ./pitch.md --theme business-gold --auto-images
助手:🎨 应用主题:黑金风格
     🖼️ 自动配图模式:启用
     📐 布局设计:
        - 第 1 页:标题页
        - 第 2 页:痛点(左右对比)
        - 第 3 页:解决方案(图文混排)
        - 第 4 页:市场规模(数据可视化)
        - 第 5 页:团队(列表 + 头像)
        - 第 6 页:结束页
     ✅ 完成!

示例 3:交互式创建

用户:帮我做个融资路演 PPT
助手:👋 好的!我来帮您创建融资路演 PPT。

请提供以下内容(或提供 Markdown 文件):
1. 项目名称和一句话介绍
2. 目标解决的痛点
3. 解决方案/产品
4. 市场规模数据
5. 商业模式
6. 团队介绍
7. 融资需求

我将自动:
- 设计专业布局
- 生成/搜索配图
- 应用商务主题
- 生成演讲备注

📋 布局设计算法

步骤 1:内容分析

def analyze_content(markdown):
    sections = parse_markdown(markdown)
    
    for section in sections:
        # 识别内容类型
        section.type = detect_type(section)  # title/list/code/table/quote
        
        # 评估内容量
        section.complexity = calculate_complexity(section)
        
        # 确定优先级
        section.priority = determine_priority(section)
    
    return sections

步骤 2:智能分页

def smart_paginate(sections):
    pages = []
    current_page = []
    current_load = 0
    
    for section in sections:
        # 计算本节占用空间
        load = calculate_load(section)
        
        # 超过阈值则新开一页
        if current_load + load > PAGE_THRESHOLD:
            pages.append(current_page)
            current_page = []
            current_load = 0
        
        current_page.append(section)
        current_load += load
    
    return pages

步骤 3:布局匹配

def match_layout(page):
    # 根据内容类型选择布局
    if page.has_title() and not page.has_content():
        return "title"
    
    elif page.has_list() and len(page.list) <= 5:
        return "bullet_list"
    
    elif page.has_comparison():
        return "two_column"
    
    elif page.has_table():
        return "data_table"
    
    elif page.has_code() and len(page.code) > 15:
        return "code_full"
    
    elif page.has_quote():
        return "quote"
    
    else:
        return "mixed"

步骤 4:配图决策

def decide_images(page):
    keywords = extract_keywords(page)
    
    # 尝试 AI 生成
    if is_abstract_concept(keywords):
        return generate_ai_image(keywords)
    
    # 尝试网络搜索
    elif is_concrete_object(keywords):
        return search_and_download(keywords)
    
    # 使用图标
    else:
        return generate_icons(keywords)

🎯 内容 - 布局映射表

内容类型推荐布局配图策略
单一级标题标题页背景图/渐变
3-5 个列表项要点列表右侧配图
对比内容左右对比每侧配图
数据表格数据可视化图表 + 图标
长代码块代码展示无图/架构图
重要引用引用强调背景图
时间序列时间轴节点图标
产品展示图文混排大幅产品图
团队介绍列表 + 头像成员照片
结束页结束页背景图/Logo

🛠️ 技术实现

核心脚本

# 完整转换流程
python3 scripts/md_to_ppt.py \
  --input ./docs/presentation.md \
  --output ./slides/output/ \
  --theme business-blue \
  --format slidev \
  --auto-images \
  --smart-layout

依赖安装

# Slidev
npm install -g @slidev/cli

# 图片处理
pip3 install pillow requests

# AI 绘图(可选)
pip3 install diffusers transformers

# 网络搜索(可选)
pip3 install google-search-results

📁 输出结构

slides/output/
├── slides.md           # Slidev 主文件
├── style.css           # 自定义样式
├── README.md           # 使用说明
├── assets/             # 图片资源
│   ├── page-1-bg.png   # 第 1 页背景
│   ├── page-2-img.jpg  # 第 2 页配图
│   └── icons/          # 图标目录
│       ├── check.svg
│       └── star.svg
└── layout-plan.json    # 布局设计方案(可选)

💡 最佳实践

1. Markdown 编写建议

# 清晰的一级标题(每章自动分页)

## 明确的二级标题(内容分组)

- 列表项控制在 5 个以内
- 每行文字不超过 30 字
- 代码块添加语言标识

> 引用用于强调重点

![描述](图片 URL 或留空由 AI 生成)

2. 配图建议

  • 商务场景:使用真实照片
  • 技术分享:使用架构图/流程图
  • 创意提案:使用插画风格
  • 数据报告:使用图表可视化

3. 布局选择

  • 内容少 → 大图 + 少字
  • 内容多 → 分多页,避免拥挤
  • 重要信息 → 引用布局强调
  • 对比内容 → 左右布局

⚙️ 配置选项

命令行参数

--input, -i          # 输入 Markdown 文件
--output, -o         # 输出目录
--theme, -t          # 主题名称
--format, -f         # 输出格式 (slidev/html/pptx)
--title              # PPT 标题
--author             # 作者名
--auto-images        # 启用自动配图
--smart-layout       # 启用智能布局
--image-source       # 图片源 (ai/search/mixed)
--layout-plan        # 输出布局设计方案

配置文件

# .md-to-ppt.yml
default:
  theme: business-blue
  format: slidev
  auto-images: true
  smart-layout: true
  image-source: mixed

layouts:
  max_items_per_page: 5
  max_words_per_slide: 100
  code_threshold: 15

🚀 进阶功能

1. 布局预览

用户:/md_to_ppt ./doc.md --preview-layout
助手:📐 布局设计方案:

第 1 页 [标题页]
├─ 主标题:产品介绍
├─ 副标题:让 PPT 制作更简单
└─ 背景:渐变

第 2 页 [要点列表]
├─ 标题:市场痛点
├─ 列表:4 项
├─ 配图:右侧(待生成)
└─ 布局:80% 文字 + 20% 图片

...

确认布局方案后开始生成?(是/修改)

2. 配图预览

用户:/md_to_ppt ./doc.md --preview-images
助手:🖼️ 配图方案:

第 2 页 - 市场痛点
  关键词:效率、协作、学习
  推荐图片:办公场景/团队协作
  来源:Unsplash(3 个选项)
  [预览图 1] [预览图 2] [预览图 3]
  
选择或输入"生成"使用 AI 创作?

3. 批量转换

# 转换整个目录
python3 scripts/md_to_ppt.py \
  --batch ./docs/ \
  --output ./slides/ \
  --theme business-blue

🛠️ 故障排除

问题 1:配图失败

解决:检查网络连接,或改用本地图标

问题 2:布局拥挤

解决:启用 --smart-layout 自动分页,或手动添加 --- 分页符

问题 3:图片尺寸不对

解决:检查 assets/ 目录,图片应调整为 1920x1080 或按比例缩放

问题 4:中文乱码

解决:确保 UTF-8 编码,使用支持中文的字体


📞 支持

  • GitHub Issues: [待创建]
  • 文档:./docs/usage.md
  • 示例:./templates/
  • 布局模板:./layouts/

版本: 1.1.0
作者: 太子 @neutronstar238
许可: MIT
更新: 新增智能布局设计和自动配图功能

Comments

Loading comments...