Geek-skills-notion-infographic
This skill executes a two-phase pipeline to generate presentations or infographics from user outlines. It first dispatches parallel research tasks to expert agents to investigate key points from provided outlines, collects findings into structured notes, then synthesizes those insights into design recommendations and generates final outputs either as PowerPoint files via PptxGenJS or as infographic prompts suited for image generation tools. Use this when needing research-backed visual content for business presentations, training materials, or social media distribution.
git clone --depth 1 https://github.com/staruhub/ClaudeSkills /tmp/geek-skills-notion-infographic && cp -r /tmp/geek-skills-notion-infographic/skills/Geek-skills-notion-infographic ~/.claude/skills/geek-skills-notion-infographicSKILL.md
# Notion Infographic & Presentation Generator — Agent Pipeline V2
用户给大纲,Agent 去研究 + 设计,你只管 Plan 和验收。
## Architecture
```
User Outline / Topic
↓
P0: 环境检测 + 输入解析 + 输出模式决策
↓
Lead Agent (你 — 永远不搜索)
│
P1: 研究任务板 (拆解大纲为研究任务)
│
Dispatch ──→ Expert A ──→ writes task-a.md ──┐
──→ Expert B ──→ writes task-b.md ──┤ (parallel)
──→ Expert C ──→ writes task-c.md ──┘
│ │
│ workspace/research-notes/ <────────────┘
│
P2: Read notes → 提炼核心观点
P3: 设计决策 (风格选择 + 配色 + 版式规划)
P4: 生成输出
│ ├─ Mode A: PptxGenJS → .pptx 文件
│ └─ Mode B: 信息图提示词 → imageGen / 文本输出
P5: QA 验收 + 输出
```
---
## P0: 环境检测 + 输出模式决策
```
1. 检测子 Agent 能力:
- Claude Code / Cowork: YES → 并行派遣
- Claude.ai: NO → 降级模式 (Lead 自己串行执行研究)
2. 可用工具检测:
- web_search / web_fetch → 研究能力
- Node.js + pptxgenjs → Mode A 可用
- imageGen → Mode B 可直接出图
- 均无 → Mode B 输出提示词文本
3. 输出模式决策 (优先级: 用户指定 > 场景推断):
- 用户说 "PPT/演示文稿/slides/deck" → Mode A
- 用户说 "信息图/图解/小红书/社交媒体" → Mode B
- 未指定 → 推断:汇报/培训/商务 → A;传播/科普/内容营销 → B
4. 解析用户输入:
- 纯主题/关键词 → 需要全面研究
- 大纲/要点列表 → 按要点研究
- 完整文稿 → 提炼观点后补充研究
- 用户指定张数/页数? → 记录,优先级最高
```
---
## P1: 研究任务板
Lead Agent 将用户大纲拆解为 3-6 个研究任务。每个任务分配一个专家角色。
**Read `reference/subagent-prompt.md` for the prompt template.**
### 任务板格式
```
# Research Task Board
Topic: {用户主题}
Output Mode: {A: PPTX / B: Infographic}
Outline Points: {大纲要点列表}
## Group A (parallel — 核心观点研究)
Task A: [行业分析师] — 研究 {观点1} 的数据支撑和案例
Task B: [技术专家] — 研究 {观点2} 的技术细节和趋势
Task C: [用户研究员] — 研究 {观点3} 的用户痛点和故事
## Group B (parallel — 补充素材)
Task D: [数据挖掘师] — 搜集相关统计数据和图表素材
Task E: [案例猎手] — 搜集经典案例和金句
```
### 任务分配原则
- 每个大纲要点至少分配 1 个研究任务
- 优先研究"需要数据/案例支撑"的观点
- 纯观点类(不需要外部信息)可跳过研究
- 总任务数控制在 3-6 个
### 环境适配派遣
**Claude Code / Cowork (有子Agent):**
```bash
for task in a b c; do
claude -p "$(cat workspace/prompts/task-${task}.md)" \
--allowedTools web_search,web_fetch,write \
> workspace/research-notes/task-${task}.md &
done
wait
```
**Claude.ai (降级):**
Lead Agent 自己串行执行每个任务:
1. 按任务板顺序,依次执行 web_search + web_fetch
2. 每完成一个任务,将发现写入笔记块
3. 完成所有研究后进入 P2
---
## P2: 提炼核心观点
Lead Agent 阅读所有研究笔记,执行:
1. **信息聚合** — 把分散的发现按大纲要点归类
2. **观点提炼** — 每个要点提炼 1 个可视化核心观点
3. **数据筛选** — 为每个观点挑选最有冲击力的数据/案例
4. **可视化评估** — 判断每个观点适合什么呈现形式
### 观点提炼规则
- 每张图/每页 slide 只承载 1 个核心观点
- 观点不足时不强行凑数
- 观点过多时合并相近内容
- 硬上限:不超过 12 张/页
---
## P3: 设计决策
**Read `reference/design-system.md` for the complete design system.**
这是 V2 的核心升级点 — 把美学决策系统化而不是凭感觉。
### 3.1 选择配色方案
**Read `reference/design-system.md` → Color Palette Reference**
根据主题和受众选择配色:
| 场景 | 推荐色板 |
|------|---------|
| 商务/年报/财务 | Business & Authority (#2b2d42 系) |
| 科技/产品发布 | Vibrant & Tech (#023047 系) 或 Tech & Night (#000814 系) |
| 教育/数据报告 | Education & Charts (#264653 系) |
| 健康/咨询 | Modern & Wellness (#006d77 系) |
| 创意/时尚/生活 | Soft & Creative (#cdb4db 系) 或 Elegant & Fashion (#edafb8 系) |
| 自然/环保/ESG | Nature & Outdoors (#606c38 系) 或 Forest & Eco (#dad7cd 系) |
### 3.2 选择设计风格
| 风格 | 特征 | 适用 |
|------|------|------|
| **Sharp** | 直角、实线、高对比 | 商务、科技、金融 |
| **Soft** | 微圆角(4-8px)、柔和阴影 | 教育、咨询、通用 |
| **Rounded** | 大圆角(12-20px)、友好感 | 消费、社交、年轻受众 |
| **Pill** | 全圆角胶囊形、现代感 | 创意、科技产品、SaaS |
| **Notion手绘** | 马克笔线稿、涂鸦感、大留白 | 信息图、社媒传播、科普 |
### 3.3 版式规划 (Mode A: PPTX)
**分类每一页为五种页面类型之一:**
| 类型 | 用途 | 内容 |
|------|------|------|
| **Cover** | 开场定调 | 大标题+副标题+日期+视觉元素 |
| **TOC** | 导航预期 | 章节列表(3-5节) |
| **Section Divider** | 章节过渡 | 章节标题+引用/数据 |
| **Content** | 核心内容 | 观点+数据+图表+视觉 |
| **Summary** | 总结收束 | 核心要点回顾+CTA |
**关键:布局多样性!**
- **严禁**连续使用相同布局
- 主动使用:左右分栏、大数字突出、时间轴、对比图、引用卡片、图标网格
- 内容类型匹配版式:关键数据→大数字页,对比→左右分栏,流程→时间轴
### 3.4 组图规划 (Mode B: 信息图)
| 内容长度 | 通常观点数 | 参考张数 |
|---------|-----------|---------|
| 短内容 (<500字) | 2-4 | 3-5 张 |
| 中等 (500-1500字) | 4-7 | 5-8 张 |
| 长内容 (>1500字) | 6-10 | 8-12 张 |
组图结构:
```
第 1 张: 标题封面图 — 主题 + 核心价值主张
第 2~N-1 张: 内容图 — 每张一个核心观点 + 研究数据支撑
第 N 张: 总结/行动号召图
```
---
## P4: 生成输出
### Mode A: PPTX (PptxGenJS)
**Read `reference/pptx-generation.md` for complete PptxGenJS guidance.**
#### 技术约束
| 项目 | 值 |
|------|---|
| **尺寸** | 10" x 5.625" (LAYOUT_16x9) |
| **颜色** | 6位hex不带# (如 `"FF0000"`) |
| **英文字体** | Arial (默认) |
| **中文字体** | Microsoft YaHei (微软雅黑) |
| **页码位置** | x: 9.3", y: 5.1" |
| **Theme keys** | `primary`, `secondary`, `accent`, `light`, `bg` |
#### 工作流
1. 创建 `slides/` 目录
2. 每页一个 JS 文件: `slide-01.js`, `slide-02.js`, ...
3. 每个文件 export 同步 `createSlide(pres, theme)` 函数
4. 创建 `slides/compile.js` 编排所有页
5. 运行 `cd slides && node compile.js`
6. 输出 `slides/output/presentation.pptx`
#### Theme Object Contract (强制)
```javascript
const theme = {
primary: "22223b", // 最深色,标题
secondary: "4a4e69", // 深色辅助,正文
accent: "9a8c98", // 中间色调强调
light: "c9ada7", // 浅色辅助
bg: "f2e9e4" // 背景色
};
```
**绝对不要**使用其他 key name 如 `background`, `text`, `muted`, `darkest`。
#### Slide 文件模板
```javascript
// slide-XX.js
const slideConfig = {
type: 'content', // cover | toc | section | content | summary
index: 2,
title: 'Slide Title'
};
function createSlide(pres, theme) {
const slide = pres.addSlide();
slide.background = { color: theme.bg };
// ... 构建页面内容
return slide;
}
if (require.main === module) {
const pptxgen = require("pptxgenjs");
const pres = new pptxgen();
pres.layout = 'LAYOUT_16x9';
const theme = { primary:"22223b", secondary:"4a4e69",
accent:"9a8c98", light:"c9ada7", bg:"f2e9e4" };
createSlide(pres, theme);
pres.writeFile({ fileName: `slide-${String(slideConfig.index).padStart(2,'0')}-preview.pptx` });
}
module.exports = { createSlide, slideConfig };
```
#### 页码徽章 (Cover 页除外必须有)
```javascript
// Circle Badge (默认)
slide.addShape(pres.shapes.OVAL, {
x: 9.3, y: 5.1, w: 0.4, h: 0.4,
fill: { color: theme.accent }
});
slide.addText("3", {
x: 9.3, y: 5.1, w: 0.4, h: 0.4,
fontSize: 12, fontFace: "Arial",
color: "FFFFFF", bold: true,
align: "center", valign: "middle"
});
```
#### PptxGenJS 关键陷阱
- **绝不复用选项对象** — PptxGenJS 会原地修A股分析研究助手,提供行情数据获取与技术面/基本面分析框架(仅供研究参考,不构成投资建议)。适用于:(1) 获取A股行情和历史数据,(2) 技术面分析(K线形态、MACD、KDJ、RSI、布林带等),(3) 基本面分析(财务指标、估值分析),(4) 板块热点追踪,(5) 选股策略筛选与量化因子分析,(6) 生成股市分析报告。当用户询问"帮我分析股票"、"今日选股"、"A股行情分析"、"技术分析"、"量化选股"时触发。不用于:预测明日涨跌或给出确定性买卖指令、代客决策、港股美股(数据源不同)、加密货币。
AI咨询/销售的对话策略助手。当用户需要准备AI方案沟通、跟业务部门聊AI落地、写AI提案、应对客户异议、做AI培训破冰时使用。触发场景:"怎么跟老板聊AI"、"客户说AI不靠谱"、"准备一个AI方案汇报"、"帮我想想怎么推AI"、"业务部门不配合"、"AI项目怎么卖"、"demo之后怎么跟进"。也适用于AI咨询师、技术合伙人、CTO做内部AI推广。
Windows C盘清理和磁盘空间管理。当用户说C盘满了、磁盘空间不足、清理临时文件/缓存/回收站/系统日志、查找大文件、分析磁盘占用时使用。仅适用于 Windows 环境。不用于:macOS/Linux 磁盘清理、卸载软件(引导用户走系统卸载)、清理用户个人文件(只报告位置,删除决定权在用户)。
PPT 生产 Agent:理解场景 → 推荐风格 → 先出大纲 → 定义页面 → 双通路交付(PPT 内容稿 / 逐页视觉图 / 信息图组图)。当用户要做汇报、路演、培训课件、提案、咨询报告的演示文稿,或要把大纲/文章做成 slides、deck、PPT、信息图、小红书图文、可视化传播图时使用。支持指定风格或从风格库推荐,支持 image 模型逐页出视觉稿。前身为 notion-infographic(v2)并吸收 ppt-designer 的设计原则。不用于:pptx 文件的纯技术操作(拆分/合并/提取,用宿主 pptx skill)、演讲稿或文章本体的写作(用 wechat-article-writer)、需要先做研究的内容调研(先走 deep-research 再回来)、单张海报或 logo 设计。
>
资深高考命题专家助手,提供专业的命题指导和评审服务。适用于创作高考试题、评审试题质量、分析试卷结构、了解命题趋势等场景。结合文档工具提取解压文件,使用网络搜索了解当年最新命题趋势,使用分析工具评估题目质量和试卷结构。涵盖"一核四层四翼"评价体系、题型规范、评分标准、命题流程等多个维度。不用于:大学/考研/中考命题(体系不同,仅可借鉴)、日常作业题编写、直接替考生解题。
A股专业分析师助手,提供每日股价分析、选股策略和投资建议。适用于:(1) 获取A股实时行情和历史数据,(2) 技术面分析(K线形态、MACD、KDJ、RSI、布林带等),(3) 基本面分析(财务指标、估值分析),(4) 板块热点追踪,(5) 选股策略筛选,(6) 量化因子分析,(7) 生成每日股市分析报告。当用户询问"帮我分析股票"、"今日选股"、"A股行情分析"、"技术分析"、"基本面分析"、"量化选股"等相关问题时触发。
AI咨询/销售的对话策略助手。当用户需要准备AI方案沟通、跟业务部门聊AI落地、写AI提案、应对客户异议、做AI培训破冰时使用。触发场景:"怎么跟老板聊AI"、"客户说AI不靠谱"、"准备一个AI方案汇报"、"帮我想想怎么推AI"、"业务部门不配合"、"AI项目怎么卖"、"demo之后怎么跟进"。也适用于AI咨询师、技术合伙人、CTO做内部AI推广。