首页
/ ui-ux-pro-max-skill 幻灯片策略知识库:15 种 Deck 结构、情绪弧线与 Sparkline 检索系统

ui-ux-pro-max-skill 幻灯片策略知识库:15 种 Deck 结构、情绪弧线与 Sparkline 检索系统

2026-09-04 15:51:30作者:盛欣凯Ernestine

本文以 slides 技能中的 Slide Strategies 参考文档为主体,系统讲解 15 种经验证的演示文稿(Deck)结构、情绪弧线(Emotion Arc)与 Duarte Sparkline 叙事模式,并结合 design-system 技能中的结构化数据文件(slide-strategies.csv)与 BM25 检索脚本 search-slides.py,说明这些策略是如何被组织、检索、并结合版式/色彩逻辑在生成 HTML 幻灯片时被实际落地的。读完本文,你将掌握:如何在不同演讲场景下选择合适的 Deck 结构,如何查询每种策略的情绪弧线与 Sparkline 节拍,以及如何用上下文感知检索(pattern break / full-bleed 判定)驱动单页设计决策。

Slide Strategies 在技能体系中的位置

slides 技能(SKILL.md)的定位是"Strategic HTML presentation design with data visualization",即基于 Chart.js、设计令牌(design tokens)与响应式版式创建战略性 HTML 演示文稿。其路由规则为:从 $ARGUMENTS 第一个词解析子命令(目前为 create),加载对应的 references/{subcommand}.md 后执行。

在知识库里,Slide Strategies 是"策略层"参考,与其他三个参考并列:

主题 文件
版式模式(25 种布局 + CSS 结构) layout-patterns.md
HTML 模板 html-template.md
文案公式(PAS、AIDA 等) copywriting-formulas.md
幻灯片策略(本文主题) slide-strategies.md

策略层回答的是"整套 Deck 讲什么故事、多少页、面向谁",而版式层回答"单页怎么排",文案层回答"标题怎么写"。三者共同构成 design-system 技能描述的上下文决策流(Contextual Decision Flow):先解析目标与上下文,检索 slide-strategies.csv 得到策略与情绪节拍,再对每一页依次查询版式逻辑、字体比例、色彩处理与背景图,最终生成 HTML 并用 token 校验器验证(见 SKILL.md 中 "Contextual Decision Flow" 一节)。

15 种 Deck 策略速查表

原文档核心是一张 15 行策略选择表,按"策略 / 页数 / 目标 / 受众"四列组织,是选型时的第一张参考表,完整继承如下:

Strategy Slides Goal Audience
YC Seed Deck 10-12 Raise seed funding VCs
Guy Kawasaki 10 Pitch in 20 min Investors
Series A 12-15 Raise Series A Growth VCs
Product Demo 5-8 Demonstrate value Prospects
Sales Pitch 7-10 Close deal Qualified leads
Nancy Duarte Sparkline Varies Transform perspective Any
Problem-Solution-Benefit 3-5 Quick persuasion Time-pressed
QBR 10-15 Update stakeholders Leadership
Team All-Hands 8-12 Align team Employees
Conference Talk 15-25 Thought leadership Attendees
Workshop 20-40 Teach skills Learners
Case Study 8-12 Prove value Prospects
Competitive Analysis 6-10 Strategic decisions Internal
Board Meeting 15-20 Update board Directors
Webinar 20-30 Generate leads Registrants

这 15 种策略并非只存在于 Markdown 文档中。仓库在 slide-strategies.csv 中为其建立了结构化数据源,每行一条策略,字段包括:idstrategy_namekeywords(检索关键词)、slide_countstructure(逐页结构)、goalaudiencetone(语气)、narrative_arc(叙事弧)、key_metrics(该策略应关注的关键指标)、sources(方法来源,如 Y Combinator Library、Guy Kawasaki Blog、Nancy Duarte Resonate 等)、emotion_arc(情绪弧)以及 sparkline_beats(Sparkline 节拍序列)。例如 YC Seed Deck 一行:

  • slide_count: 10-12
  • structure: 1.Title 2.Problem 3.Solution 4.Traction 5.Market 6.Product 7.Business Model 8.Team 9.Financials 10.Ask
  • tone: Clear concise focused narrative
  • emotion_arc: curiosity→frustration→hope→confidence→trust→urgency
  • sparkline_beats: hook|what-is|what-could-be|proof|proof|what-could-be|proof|trust|what-could-be|action

其中 sparkline_beats 值得特别留意:它把 10 页结构逐页映射到叙事功能(hook、what-is、what-could-be、proof、trust、action),是 Sparkline 节奏在页面粒度的落地表示——文档中"Common Structures"给出的是"页 → 内容",CSV 中补充的是"页 → 叙事角色"。

三种典型结构的情绪弧线详解

原文档在"Common Structures"一节给出了三种高频策略的逐页结构与情绪弧线,完整继承如下:

YC Seed Deck(10 页)

  1. Title/Hook
  2. Problem
  3. Solution
  4. Traction
  5. Market
  6. Product
  7. Business Model
  8. Team
  9. Financials
  10. The Ask

Emotion arc: curiosity→frustration→hope→confidence→trust→urgency

解读:前 3 页完成"好奇 → 挫败 → 希望"的经典 Problem-Solution 转折,中段用 Traction/Market/Product/Business Model 四页堆叠建立 confidence,Team 页制造 trust,最后 Financials 与 The Ask 把情绪推向 urgency 收尾。

Sales Pitch(9 页)

  1. Personalized Hook
  2. Their Problem
  3. Cost of Inaction
  4. Your Solution
  5. Proof/Case Studies
  6. Differentiators
  7. Pricing/ROI
  8. Objection Handling
  9. CTA + Next Steps

Emotion arc: connection→frustration→fear→hope→trust→confidence→urgency

与 YC 版本的关键差异在于多了一个"cost of inaction"(不行动的代价)环节,情绪链里因此出现 fear 这一节拍——面向客户的销售场景允许、甚至需要制造紧迫感;而融资场景更依赖证据建立 trust。

Product Demo(6 页)

  1. Hook/Problem
  2. Solution Overview
  3. Live Demo/Screenshots
  4. Key Features
  5. Benefits/Pricing
  6. CTA

Emotion arc: curiosity→frustration→hope→confidence→urgency

最短路径的转化结构:问题引入后立刻进入产品实拍(Live Demo/Screenshots),用"看得见在运行"代替大段论述。

Duarte Sparkline 模式

原文档将 Nancy Duarte 的 Sparkline 抽象为一个交替模式:

What Is → What Could Be → What Is → What Could Be → New Bliss
(pain)     (hope)         (pain)     (hope)         (resolution)

即"现状之痛(What Is)"与"理想之盼(What Could Be)"交替推进,最终落到 New Bliss(新欢愉/解决态)。文档指出:在 1/3 与 2/3 位置的模式切换(Pattern break)会制造注意力峰值

slide-strategies.csv 中,该策略对应的 sparkline_beats 就是 what-is|what-could-be|what-is|what-could-be|new-bliss,且其 slide_count 标记为 Varies——Sparkline 是节奏模板而非固定页数,页数随内容伸缩。

检索命令:从自然语言到策略记录

原文档"Search Commands"一节给出的两条命令,完整保留:

# Find strategy by goal
python .claude/skills/design-system/scripts/search-slides.py "investor pitch" -d strategy

# Get emotion arc
python .claude/skills/design-system/scripts/search-slides.py "series a funding" -d strategy --json

结合 search-slides.pyslide_search_core.py 的源码,可以补充几条实操中真正有用的参数:

  • -d/--domain:限定检索域,取值为 strategylayoutcopychart(对应 CSV_CONFIG 中的四个 CSV 文件);省略时由 detect_domain() 按关键词自动判定,默认回落到 strategy
  • -n/--max-results:返回条数,默认 3。
  • --all:跨全部四个域检索。
  • --json:JSON 输出,便于 Agent 或脚本消费(原文档第二条命令即此用途,可从中直接取 emotion_arcstructure 字段)。
  • --context --position N --total M --prev-emotion E:上下文感知模式,返回版式、字体、色彩、pattern break、full-bleed 等单页级建议(见下节)。

底层实现上,slide_search_core.py 内置了一个标准 BM25 排序器(k1=1.5, b=0.75,见 BM25 类实现),对 strategy 域建立索引时使用的字段是 strategy_namekeywordsgoalaudiencenarrative_arc 五列拼接成的文档。因此查询词命中的是策略名、关键词与目标描述——例如 "investor pitch" 命中 YC Seed 与 Guy Kawasaki 两条记录的 keywords/goal 字段,而 "series a funding" 会直接命中 Series A Deck 行的 keywordsseries a, growth, scale, investor, traction)。

值得注意的一个工程细节:search-slides.py 开头有一段强制 stdout/stderr 使用 UTF-8 的兼容处理(第 16-24 行),注释说明其原因是脚本会输出 emoji 标记,在 Windows cp1252 控制台下会抛 UnicodeEncodeError。这意味着该 CLI 在 Windows/macOS/Linux 均可直接运行,无需额外环境配置,只需 Python 标准库。

上下文感知决策:Pattern Break 与 Full Bleed

--context 模式是策略层与版式层之间的桥梁:给定"这是第几页、总共几页、上一页的情绪是什么",系统输出该页的版式、字号比例、色彩处理、是否打破视觉模式、是否使用全幅背景等建议。其中两个判定函数把文档里的 Sparkline 理论变成了可计算规则:

Pattern break(模式切换),实现于 calculate_pattern_break

  • 总页数少于 5 页时不触发;
  • 位置落在 total // 3total // 3 * 2(即 1/3 与 2/3 处)时触发——这正是原文档"Pattern breaks at 1/3 and 2/3 positions create engagement peaks"的代码化;
  • 或当前情绪与上一页情绪构成对比对(frustration ↔ hope/reliefhope ↔ frustration/fearfear ↔ hope/relief)时触发。

Full bleed(全幅背景),实现于 should_use_full_bleed

  • 只保留高情绪节拍:hopeurgencyfearcuriosity
  • 位置限定在战略点位 [1, total//3, total//3*2, total-1](首页、1/3、2/3、末页),且绝不连续出现;
  • 注释中写明规则意图:"Premium decks use 2-3 full-bleed slides strategically"。

这两个函数的输入来自哪里?来自 slide-layout-logic.csvgoal 给出的情绪与版式,例如:

goal emotion layout_pattern visual_weight break_pattern
hook curiosity split-hero 70-visual false
problem frustration card-grid balanced false
agitation fear full-bleed-stat 100-text true
solution relief split-feature 50-50 false
social connection quote-hero 80-text true

可以看到 agitation(激化痛点)与 social proof(社会认同)两页被标记为 break_pattern=true,对应 Sparkline 中的痛点峰值与信任峰值;情绪再由 slide-color-logic.csv 映射到色彩处理,例如 hope → accent-bleed / use_full_bleed=trueurgency → gradient / cta-button / use_full_bleed=truefrustration → dark-surface / subtle-border。最终 search_with_context() 把这些结果连同动画类(如 cta → animate-pulsetraction → animate-chart animate-count)打包返回(search_with_context 实现)。一次典型调用:

python .claude/skills/design-system/scripts/search-slides.py "problem slide" --context --position 2 --total 9
python .claude/skills/design-system/scripts/search-slides.py "cta" --context --position 9 --total 9 --prev-emotion frustration

第二条命令的语义是:"第 9 页是 CTA 页,上一页情绪是 frustration",系统据此判定 should_break_pattern=YES(frustration→hope 构成对比对),并给出 CTA 的版式、字号、色彩与 animate-pulse 动画建议。

场景到策略的匹配规则

原文档最后一节给出 Context → Strategy 的匹配表,完整继承如下:

Context Recommended Strategy
Raising money YC Seed, Series A, Guy Kawasaki
Selling product Sales Pitch, Product Demo
Internal update QBR, All-Hands, Board Meeting
Public speaking Conference Talk, Workshop
Proving value Case Study, Competitive Analysis
Lead generation Webinar

这张表实际上是 strategy 域检索结果的"人工兜底":当 BM25 检索的 Top-N 与场景意图不符时(例如 "internal update" 同时命中 QBR 与 All-Hands 的 audience 字段),用该表做最终裁决。结合 CSV 中各策略的 key_metrics 字段(如 Sales Pitch 关注 ROI case study metrics,QBR 关注 KPIs OKRs progress %),选型时还应同步确认"这套结构要求你拿出什么数据"——结构选错了,往往是数据备不齐。

落地流程小结:从策略到 HTML 幻灯片

综合 slides SKILL.mddesign-system SKILL.md,围绕本文策略知识库的完整工作流为:

  1. 选型:按场景匹配表(或 search-slides.py -d strategy)确定 Deck 策略,确认页数范围、逐页结构与 emotion_arc
  2. 节拍展开:用 CSV 中的 sparkline_beats 把每页标记为 hook / what-is / what-could-be / proof / trust / action 等叙事角色;
  3. 逐页决策:对每页执行 --context 检索,按 goal 查版式逻辑(含 break_pattern)、字体比例、情绪色彩与背景图配置,1/3 与 2/3 位置的页面优先做视觉模式切换,高情绪节拍(hope/urgency/fear/curiosity)在战略点位考虑 full-bleed 背景;
  4. 生成与验证:用 html-template.mdlayout-patterns.md 提供的 CSS 结构生成 HTML,图表使用 Chart.js(不用纯 CSS 条形图),并导入 design-tokens.css 使用 var(--color-primary) 等 CSS 变量而非硬编码色值,最后用 slide-token-validator.py 校验 token 合规性。

需要说明的适用前提:以上脚本均以仓库根目录为工作目录运行(search-slides.py 通过 Path(__file__).parent.parent / "data" 定位 CSV 数据,相对脚本位置解析,与当前工作目录无关,因此从仓库根目录或其他位置调用均可命中同一份 data 目录);而策略、版式、文案、图表四个域的知识全部以 CSV 为准,Markdown 参考文档(含本文主体 slide-strategies.md)是面向人的阅读视图。若你维护或扩展该技能,建议以 CSV 为单一事实源(single source of truth)更新,再同步 Markdown 表格。

登录后查看全文
热门项目推荐
相关项目推荐

项目优选

收起
kernelkernel
deepin linux kernel
C
33
18
ops-transformerops-transformer
本项目是CANN提供的transformer类大模型算子库,实现网络在NPU上加速计算。
C++
1.12 K
2.72 K
kernelkernel
openEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。
C
527
590
ops-nnops-nn
本项目是CANN提供的神经网络类计算算子库,实现网络在NPU上加速计算。
C++
904
1.82 K
pytorchpytorch
作为 Ascend for PyTorch 社区的核心组件,TorchNPU 是昇腾专为 PyTorch 打造的深度学习适配插件,使 PyTorch 框架能够直接调用昇腾 NPU,为开发者提供昇腾 AI 处理器的超强算力。
Python
854
1.34 K
docsdocs
暂无描述
Markdown
889
5.78 K
jiuwenswarmjiuwenswarm
JiuwenSwarm 是一款基于openJiuwen开发的智能AI Agent,它能够将大语言模型的强大能力,通过你日常使用的各类通讯应用,直接延伸至你的指尖。
Python
3.52 K
1.01 K
ops-mathops-math
本项目是CANN提供的数学类基础计算算子库,实现网络在NPU上加速计算。
C++
1.33 K
1.45 K
cann-learning-hubcann-learning-hub
CANN 学习中心仓,支持在线互动运行、边学边练,提供教程、示例与优化方案,一站式助力昇腾开发者快速上手。
Jupyter Notebook
981
502
AscendNPU-IRAscendNPU-IR
AscendNPU-IR是基于MLIR(Multi-Level Intermediate Representation)构建的,面向昇腾亲和算子编译时使用的中间表示,提供昇腾完备表达能力,通过编译优化提升昇腾AI处理器计算效率,支持通过生态框架使能昇腾AI处理器与深度调优
C++
540
384