with one click
ppt-generator
生成专业 PPT 演示文稿,支持 22 种风格,自动根据内容选择最佳风格,输出到 ~/ppt-output/
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Menu
生成专业 PPT 演示文稿,支持 22 种风格,自动根据内容选择最佳风格,输出到 ~/ppt-output/
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Based on SOC occupation classification
为文章生成配图。分析文章结构,判断哪些位置需要什么类型的插图(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 图像生成 |