en un clic
ppt-generator
生成专业 PPT 演示文稿,支持 22 种风格,自动根据内容选择最佳风格,输出到 ~/ppt-output/
Installer avec Codex ou Claude Copiez ce prompt, collez-le dans Codex, Claude ou un autre assistant, puis laissez-le vérifier la page du skill et l'installer pour vous.
Menu
生成专业 PPT 演示文稿,支持 22 种风格,自动根据内容选择最佳风格,输出到 ~/ppt-output/
Installer avec Codex ou Claude Copiez ce prompt, collez-le dans Codex, Claude ou un autre assistant, puis laissez-le vérifier la page du skill et l'installer pour vous.
Basé sur la classification professionnelle SOC
为文章生成配图。分析文章结构,判断哪些位置需要什么类型的插图(infographic/flowchart/comparison/framework/timeline/scene),生成 prompt 并调用 image-gen 生成图片,最后插入文章。当用户说"配图"、"给文章加插图"、"生成文章插图"、"illustrate this article"时触发。即使用户只说"帮这篇文章配个图"也应该触发。
AI image generation with OpenAI, Google and DashScope APIs. Supports text-to-image, reference images, aspect ratios, and direct Cloudflare R2 upload. Sequential by default; parallel generation available on request. Use when user asks to generate, create, or draw images.
快速信息推文 — 用户丢过来一条推文链接、新闻、开源项目、产品动态等素材,快速消化内容,写一条信息推文,判断该引用转发还是原创发布,确认后通过 xurl 直接发送。当用户说"帮我转发这个"、"这个发一条推"、"帮我分享这个"、"这条推翻译一下发出去"、"写个推发出去"并附带了链接或素材时触发。也适用于用户贴了一段英文内容想快速中文转发的场景。
Use when fact-checking a single wiki page against its cited sources — verifies that every footnote actually supports its claim and surfaces uncited factual claims. Run after ingesting a high-stakes page or any time you want confidence in one page's accuracy.
Use when adding a new source to a wiki — a paper, article, URL, file, transcript, or any document. One ingest may touch 10-15 wiki pages.
Use when bootstrapping a new personal wiki for any knowledge domain — research, codebase documentation, reading notes, competitive analysis, or any long-term knowledge accumulation project.
| name | ppt-generator |
| description | 生成专业 PPT 演示文稿,支持 22 种风格,自动根据内容选择最佳风格,输出到 ~/ppt-output/ |
专注于 PPT 生成的完整解决方案。
此 skill 支持项目级安装(<project>/.claude/skills/)和全局安装(~/.claude/skills/)。执行任何命令前,先确定 SKILLS_DIR:
SKILLS_DIR=$(python3 -c "
from pathlib import Path
cwd = Path.cwd()
for p in [cwd, *cwd.parents]:
s = p / '.claude/skills'
if (s / 'ppt-generator').exists():
print(s); exit()
print(Path.home() / '.claude/skills')
")
后续所有命令均使用 $SKILLS_DIR 替代 ~/.claude/skills。
当用户请求涉及以下内容时激活:
当用户提出 PPT 需求时,你(Claude)根据以下指南选择风格,不要调用任何 Python 推荐函数。
| 风格 | 质量 | 稳定 | 适用场景 | 适用受众 | 调性 |
|---|---|---|---|---|---|
| apple | 10 | 9 | tech(10), business(9), education(7), data(9) | executives(10), general(9), experts(8) | professional, elegant |
| minimal | 9 | 9 | business(10), tech(8) | executives(10), experts(8) | formal, zen |
| corporate | 9 | 9 | business(10), data(8) | executives(9), general(8) | formal, trustworthy |
| 风格 | 质量 | 稳定 | 适用场景 | 适用受众 | 调性 |
|---|---|---|---|---|---|
| blueprint | 8 | 9 | tech(10), data(9), academic(8) | experts(10), general(7) | technical, precise |
| notion | 8 | 9 | tech(9), business(8), data(10) | general(9), experts(8) | clean, functional |
| scientific | 8 | 8 | academic(10), tech(7) | experts(10), academics(10) | formal, precise |
| editorial | 8 | 8 | business(8), academic(7) | general(8), experts(7) | professional, readable |
| editorial_infographic | 8 | 8 | academic(9), tech(8), education(7) | general(9), experts(8) | informative, clear |
| intuition_machine | 8 | 7 | tech(9), academic(9) | experts(9), bilingual(10) | technical, bilingual |
| 风格 | 质量 | 稳定 | 适用场景 | 适用受众 | 调性 |
|---|---|---|---|---|---|
| sketch_notes | 8 | 7 | education(10), tech(6) | beginners(10), general(8) | warm, friendly |
| chalkboard | 7 | 8 | education(10) | beginners(9), children(8) | nostalgic, teaching |
| fantasy_animation | 8 | 7 | education(8), creative(9), story(10) | children(10), beginners(9) | playful, magical |
| 风格 | 质量 | 稳定 | 适用场景 | 适用受众 | 调性 |
|---|---|---|---|---|---|
| watercolor | 8 | 7 | lifestyle(10), creative(9), health(8), historical(8) | general(9), beginners(8) | warm, artistic |
| vector_illustration | 8 | 7 | education(8), creative(9) | children(9), beginners(8) | cute, friendly |
| dark_atmospheric | 8 | 7 | gaming(10), creative(9), entertainment(10) | general(8), youth(9) | dramatic, cinematic |
| bold_editorial | 8 | 7 | business(8), marketing(10) | general(9), executives(7) | bold, impactful |
| storytelling | 7 | 7 | story(10), creative(8) | general(8), beginners(7) | narrative, emotional |
| 风格 | 质量 | 稳定 | 适用场景 | 适用受众 | 调性 |
|---|---|---|---|---|---|
| pixel_art | 7 | 7 | gaming(10), tech(6) | youth(10), developers(8) | retro, playful |
| vintage | 7 | 7 | historical(10), story(8) | general(8) | nostalgic, classic |
| neumorphism | 6 | 6 | tech(7), creative(7) | general(7) | modern, soft |
| material | 7 | 8 | tech(8), business(6) | general(8) | clean, systematic |
| fluent | 7 | 8 | tech(8), business(7) | general(8) | modern, fluid |
| 用户说的内容包含 | 推荐风格(按优先级) |
|---|---|
| AI、技术、系统、架构、数据 | apple → blueprint → notion |
| 商业、投资、企业、汇报、提案 | corporate → apple → minimal |
| 教程、学习、入门、培训 | sketch_notes → chalkboard → apple |
| 儿童、故事、动画、有趣 | fantasy_animation → vector_illustration |
| 游戏、像素、复古、开发者 | pixel_art → dark_atmospheric |
| 历史、传统、文化、古代、探险、怀旧 | vintage → watercolor → editorial |
| 生活、健康、旅行、艺术 | watercolor → vector_illustration |
| 科学、学术、研究、论文 | scientific → blueprint → editorial_infographic |
| 产品发布、营销、发布会 | bold_editorial → dark_atmospheric → apple |
| SaaS、产品、仪表盘、指标 | notion → apple → minimal |
| 受众类型 | 推荐风格 | 原因 |
|---|---|---|
| 高管/投资人 | minimal, corporate, apple | 简洁、专业、高端 |
| 技术专家 | blueprint, scientific, intuition_machine | 精确、信息密集 |
| 初学者/入门 | sketch_notes, chalkboard, fantasy_animation | 友好、易懂 |
| 儿童 | fantasy_animation, vector_illustration, pixel_art | 有趣、可爱 |
| 普通大众 | apple, notion, watercolor | 平衡、通用 |
| 调性 | 推荐风格 |
|---|---|
| 正式专业 | corporate, minimal, apple |
| 温暖友好 | sketch_notes, watercolor, fantasy_animation |
| 活泼有趣 | pixel_art, vector_illustration, chalkboard |
| 高端大气 | minimal, dark_atmospheric, bold_editorial |
| 技术精确 | blueprint, scientific, notion |
| 主题 | 适用场景 |
|---|---|
| soft_blue | 科技、AI、数据(默认) |
| deep_indigo | 商业、金融、专业 |
| fresh_green | 健康、环保、成长 |
| warm_orange | 教育、活力、创意 |
| rose_pink | 生活方式、时尚 |
| elegant_purple | 创意、高端、神秘 |
| cool_teal | 清新、现代 |
| neutral_grey | 极简、中性 |
| 布局 | 用途 |
|---|---|
| cover | 封面页 |
| section_divider | 章节分隔页 |
| content_left | 左对齐内容页 |
| content_center | 居中强调页 |
| content_two_column | 两栏对比页 |
| title_hero | 大标题英雄页 |
| key_stat | 关键数据页 |
| quote_callout | 引用强调页 |
| icon_grid | 图标网格页 |
| three_columns | 三栏布局页 |
| timeline | 时间线/流程页 |
| comparison | 对比页 |
| hub_spoke | 中心辐射页 |
| pyramid | 金字塔层级页 |
| agenda | 议程/目录页 |
~/ppt-output/{项目名}/import sys, os
from pathlib import Path
sys.path.insert(0, str(Path(os.environ.get('SKILLS_DIR', str(Path.home() / '.claude/skills'))) / 'shared-lib'))
from presentation import create_session, PresentationGenerator
# 1. 创建 session
session = create_session(
title='项目标题',
style='vintage', # 你选择的风格
language='zh',
audience='general'
)
# 2. 创建输出目录
output_dir = session.create_output_directory('项目标题')
# 3. 生成幻灯片
gen = PresentationGenerator(style='vintage')
gen.generate_slide(
layout='cover',
content='标题\n副标题',
output_path=str(output_dir / 'slide_01.png')
)
# 批量生成多页
results = gen.batch_generate_slides(
slides_config=[
{'layout': 'cover', 'content': '标题'},
{'layout': 'content_left', 'content': '要点列表'},
],
output_dir=str(output_dir)
)
python "$SKILLS_DIR/ppt-generator/scripts/assemble_pptx.py" \
--input_dir ~/ppt-output/项目名/ \
--output ~/ppt-output/项目名/presentation.pptx
~/ppt-output/{项目名}/
├── prompts/
│ ├── 01-slide-封面.md
│ ├── 02-slide-xxx.md
│ └── ...
├── slide_01.png
├── slide_02.png
├── slide_03.png
├── ppt_content.yaml
├── presentation.pptx
└── presentation.pdf
图片生成依赖 $SKILLS_DIR/shared-lib/config.yaml,包含:
| Provider | 说明 |
|---|---|
| google-local | 本地 Google API 代理(优先) |
| ModelScope | 阿里通义 Z-Image |
| volcengine | 字节跳动火山引擎 |
| ApiMart | ApiMart 图像生成 |