pitch-deck by anthropics/financial-services-plugins
npx skills add https://github.com/anthropics/financial-services-plugins --skill pitch-deck在开始任何工作之前,请先阅读所有参考文件。 这些文件包含影响你工作方法的关键模式和反模式。不要等到遇到问题才去查阅。
| 文件 | 用途 |
|---|---|
formatting-standards.md | 文本、项目符号、表格、图表、对齐方式 |
slide-templates.md | 常见幻灯片类型的内容映射指南 |
xml-reference.md | 表格、形状、箭头的 PowerPoint XML 模式 |
广告位招租
在这里展示您的产品或服务
触达数万 AI 开发者,精准高效
| 用于验证的财务公式(复合年增长率、共识数据) |
这是什么类型的任务?
┌─ 用源数据填充空模板?
│ └─→ 遵循下面的“模板填充工作流程”
│
├─ 编辑已填充的现有幻灯片?
│ └─→ 提取当前内容,修改,重新验证
│
└─ 修复现有幻灯片的格式问题?
└─→ 参见“常见故障”表格,应用针对性修复
使用 LibreOffice 进行验证,但无法准确渲染 PowerPoint 文件。 它会弄乱字体、渐变、形状位置、文本换行和一些表格格式。
这意味着: 在 LibreOffice 中通过视觉验证的幻灯片,在 Microsoft PowerPoint 中可能仍然存在问题。验证循环可以捕获结构性问题(缺少内容、损坏的表格、保留了占位符格式),但无法捕获字体替换、细微的对齐偏移或渐变问题。
必需操作: 交付输出时始终包含此声明:
"此文件已使用 LibreOffice 进行验证。请在分发前使用 Microsoft PowerPoint 进行审阅,因为可能存在渲染差异。"
复制并跟踪进度:
推介演示文稿进度:
- [ ] 阶段 1:提取并验证源数据
- [ ] 阶段 2:将内容映射到模板部分
- [ ] 阶段 3:使用正确的格式填充幻灯片
- [ ] 阶段 4:验证 → 修复 → 重复直到干净
- [ ] 阶段 5:最终验证
[文件名]_backup.pptx。直接编辑 XML 或意外错误可能导致文件损坏。calculation-standards.md 获取公式slide-templates.md 获取映射指南slide-templates.md 获取解决方案formatting-standards.mdxml-reference.mdxml-reference.md这是一个反馈循环。重复直到所有检查通过或触发升级流程。
# 转换为图像以进行视觉验证
soffice --headless --convert-to pdf presentation.pptx
pdftoppm -jpeg -r 150 presentation.pdf slide
验证清单(检查每张幻灯片图像):
| 或制表符分隔创建虚假列)?修复周期协议:
| 周期 | 操作 |
|---|---|
| 1 | 修复所有已识别的问题,重新验证 |
| 2 | 修复剩余的问题,重新验证 |
| 3 | 如果问题仍然存在,记录剩余问题并升级给用户 |
3 个周期后,如果问题仍然存在:
不要无限期地继续循环。某些问题(字体渲染、复杂形状对齐)可能需要在 PowerPoint 中进行手动干预。
在交付之前,运行最终质量检查清单。
| 上下文 | 符号 | 用法 |
|---|---|---|
| 包含/正面 | ✓ | 范围内的项目,存在的功能 |
| 排除/负面 | × | 范围外的项目,缺失的功能 |
| 中性列表 | • | 一般枚举,评论 |
| 编号序列 | 1. 2. 3. | 流程步骤,排名 |
| 子项目符号 | – | 主要项目符号下的次要点 |
这些是典型范围——根据模板规范进行调整:
| 层级 | 示例 | 典型大小 | 样式 |
|---|---|---|---|
| 标题 | 幻灯片标题 | 40-48pt | 粗体 |
| 副标题 | 市场定义,幻灯片描述符 | 18-22pt | 粗体 |
| 部分标题 | "关键预测"、"评论" | 14-16pt | 常规 |
| 区块标签 | "包含的细分市场"、"定义"侧边栏 | 12-14pt | 常规 |
| 区块内容 | 项目符号点,正文文本 | 11-14pt | 常规 |
| 表格标题 | 列标题 | 10-12pt | 粗体 |
| 表格正文 | 单元格内容 | 9-11pt | 常规 |
| 脚注 | 来源,注释 | 8-9pt | 斜体 |
相同层级的框必须使用完全相同的字体大小:
| 相同层级 | 必须与以下匹配 |
|---|---|
| "包含的细分市场" | "排除的细分市场" |
| "定义" | "范围理由" |
| 左列项目符号 | 右列项目符号 |
| 所有区块标签 | 彼此 |
| 所有部分标题 | 彼此 |
这些是典型惯例——根据数值大小和模板样式进行调整:
| 数值类型 | 典型四舍五入 | 示例 |
|---|---|---|
| 大型市场规模($100亿+) | 最接近的 $10亿 | 18.5 → $190亿 |
| 较小市场规模(<$100亿) | 最接近的 $5亿 或 $1亿 | 2.3 → $25亿 |
| 规模范围 | 匹配来源的精度 | 14.9-22.1 → $150-220亿 |
| 复合年增长率 | 整数 % 或 0.5% | 16.4% → 16% 或 16.5% |
| 市场份额 | 最接近的 5% 或匹配来源 | 21.4% → 20% |
| 倍数 | 1 位小数 | 9.69 → 9.7x |
原则: 四舍五入不应实质性地改变数字。对于较小的值,使用更精细的精度。
垂直堆叠的框必须具有相同的:
水平相邻的框必须具有相同的:
当相同的数据出现在多张幻灯片上时:
无论模板如何,这些要求都是不可协商的:
| 要求 | 详情 |
|---|---|
| 文本可读性 | 所有文本必须与背景有足够的对比度。示例:深蓝色、深绿色、黑色背景上的白色/浅色文本;白色、浅灰色、浅黄色背景上的黑色/深色文本。 |
| 实际表格对象 | 表格数据必须是表格对象,而不是制表符分隔的文本。参见 xml-reference.md。 |
| 正确的图表/表格尺寸 | 粘贴的视觉元素必须填满指定区域。参见 formatting-standards.md。 |
| 一致的格式 | 部分内的项目符号必须匹配(符号、大小、缩进)。相同层级的框必须使用相同的字体大小。 |
| 内容边界 | 所有内容必须保持在幻灯片边缘内。脚注框宽度:16:9 比例约为 32.5 厘米,4:3 比例约为 24 厘米。 |
| 无占位符格式 | 移除彩色说明框。正文:根据模板,浅色背景上的深色文本。 |
当占位符格式被误认为是输出格式时,就会发生这些故障。识别这些模式至关重要。
发生的情况: 模板有包含指导文本的彩色说明框(黄色、橙色等)。模型用实际数据替换指导文本,但保留了彩色框。
为什么这是错误的: 彩色框本身就是占位符。它告诉你那里应该放什么内容。输出应该有不同的格式——通常是白色/浅色背景上的深色文本,或者正确样式的形状。
识别测试: 如果你填充的幻灯片有填充了数据文本的大型彩色矩形,那么你就是复制了占位符格式而不是替换了它。
关键区别——两种类型的“占位符”:
| 类型 | 如何识别 | 该怎么做 |
|---|---|---|
| 说明框 | 亮色(黄色、橙色),包含指导文本,如"在此插入 X",彩色背景上的白色/浅色文本 | 删除整个形状,然后使用生产格式创建新内容 |
| 布局占位符 | 幻灯片母版/布局的一部分,中性颜色匹配模板主题,"单击以添加文本" | 保留形状,仅替换文本内容 |
如果不确定:检查该形状是否存在于同一模板的空幻灯片上。布局占位符会保留;说明框是常规形状。
发生的情况: 模型使用分隔符字符(|、制表符、空格)创建类似表格的内容,而不是实际的表格对象。
为什么这是错误的: 这不是表格。列永远不会正确对齐,无法保持一致的格式,而且看起来不专业。
识别测试: 如果你在输入 | 字符或依赖空格/制表符来创建列,那么你就是在创建文本,而不是表格。
必须验证: 创建任何表格后,验证它是否是实际的表格对象。参见 xml-reference.md 获取验证方法。
发生的情况: 占位符使用彩色背景上的浅色文本(例如,黄色上的白色)。模型填充数据但保留此配色方案,导致输出难以阅读。
为什么这是错误的: 占位符颜色特意设计得与众不同,以表示“替换我”。生产幻灯片通常在正文内容区域使用浅色背景上的深色文本。
识别测试: 如果你填充的内容在正文区域(不是标题)有亮色背景上的浅色/白色文本,那么你就继承了占位符格式。
正确方法: 应用生产格式——对于正文内容,通常是白色或浅色背景上的深色文本(#000000 或 #333333)。标题和强调区域可能使用品牌颜色。
| 元素 | 占位符(输入) | 生产(输出) |
|---|---|---|
| 说明框 | 彩色背景,指导文本 | 已移除或重新格式化 |
| 数据区域 | "[在此插入数据]" 文本 | 具有干净格式的实际数据 |
| 表格 | 描述表格应包含的内容 | 具有行/列的实际表格对象 |
| 正文文本 | 彩色背景上的浅色文本 | 浅色背景上的深色文本 |
占位符告诉你创建什么,而不是如何格式化它。
有关最关键故障的详细说明,请参见上面的关键反模式。
| 故障 | 解决方案 | 参考 |
|---|---|---|
| 非结构化文本转储 | 分解为项目符号(✓, ×, •) | formatting-standards.md |
| 管道符/制表符分隔的“表格” | 创建实际的表格对象——带分隔符的文本不是表格 | xml-reference.md |
| 文本/背景对比度差 | 审核每个文本元素 | — |
| 粘贴的图表太小 | 调整大小以填满区域,仅粘贴图表 | formatting-standards.md |
| 图表附带源数据粘贴 | 复制前仅选择图表对象 | — |
| 数据倾倒到占位符框中 | 删除彩色说明框,创建新的正确格式化的内容 | 反模式 |
| 不一致的项目符号 | 定义一次样式,应用于所有 | formatting-standards.md |
| 跨框字体不一致 | 标准化相同层级的框 | formatting-standards.md |
| 内容溢出 | 设置明确的框宽度(脚注:16:9 为 32.5 厘米,4:3 为 24 厘米) | — |
| 缺少徽标 | 使用任务文件中的徽标;如果未提供,则向用户标记 | — |
残留的 [括号] | 搜索并替换所有占位符 | — |
| 文本箭头(→, ⟹) | 使用 PowerPoint 形状对象 | xml-reference.md |
如果 PDF/图像转换失败:
which sofficelibreoffice --headless --convert-to pdf presentation.pptx如果源数据存在不一致或冲突:
如果计算与来源预测不匹配:
创建表格时(必须是实际的表格对象):
列对齐:
标题行:
共识/总计行:
宽度: 完全填满指定部分的宽度。
有关 XML 实现,请参见 xml-reference.md。
格式:
来源:[来源 1](年份),[来源 2](年份)。
注释:(1) [第一条注释];(2) [第二条注释]。
示例:
来源:Grand View Research (2024), Mordor Intelligence (2024), Markets and Markets (2023)。
注释:(1) 不包括硬件收入;(2) 包括 B2B 和 B2C 细分市场。
幻灯片正文中的所有上标数字(¹, ², ³)必须有相应的注释条目。
有关每种幻灯片类型的详细数据要求、格式原则和示例列标题,请参见 slide-templates.md。
涵盖的常见幻灯片类型:市场定义、市场规模/总可寻址市场、竞争格局、财务摘要、交易可比公司。
在交付填充的模板之前,请验证:
calculation-standards.md)[括号] 占位符文本每周安装次数
51
仓库
GitHub 星标数
5.6K
首次出现
13 天前
安全审计
安装于
opencode50
gemini-cli50
github-copilot50
amp50
codex50
kimi-cli50
Read all reference files at task start before beginning any work. These contain critical patterns and anti-patterns that will affect your approach. Do not wait until you encounter issues.
| File | Purpose |
|---|---|
formatting-standards.md | Text, bullets, tables, charts, alignment |
slide-templates.md | Content mapping guidance for common slide types |
xml-reference.md | PowerPoint XML patterns for tables, shapes, arrows |
calculation-standards.md | Financial formulas for verification (CAGR, consensus) |
What type of task is this?
┌─ Populating empty template with source data?
│ └─→ Follow "Template Population Workflow" below
│
├─ Editing existing populated slides?
│ └─→ Extract current content, modify, revalidate
│
└─ Fixing formatting issues on existing slides?
└─→ See "Common Failures" table, apply targeted fixes
LibreOffice is used for validation but DOES NOT render PowerPoint files accurately. It will mangle fonts, gradients, shape positions, text wrapping, and some table formatting.
What this means: A slide that passes visual validation in LibreOffice may still have issues in Microsoft PowerPoint. The validation loop catches structural issues (missing content, broken tables, placeholder formatting retained) but cannot catch font substitution, subtle alignment shifts, or gradient problems.
Required action: Always include this statement when delivering output:
"This file was validated using LibreOffice. Please review in Microsoft PowerPoint before distribution, as rendering differences may exist."
Copy and track progress:
Pitch Deck Progress:
- [ ] Phase 1: Extract and validate source data
- [ ] Phase 2: Map content to template sections
- [ ] Phase 3: Populate slides with proper formatting
- [ ] Phase 4: Validate → Fix → Repeat until clean
- [ ] Phase 5: Final verification
[filename]_backup.pptx. Direct XML editing or unexpected errors can corrupt files.calculation-standards.md for formulasslide-templates.md for mapping guidanceslide-templates.md for resolutionformatting-standards.mdxml-reference.mdxml-reference.mdThis is a feedback loop. Repeat until all checks pass OR escalation is triggered.
# Convert to images for visual validation
soffice --headless --convert-to pdf presentation.pptx
pdftoppm -jpeg -r 150 presentation.pdf slide
Validation checklist (check each slide image):
| or tab separators creating fake columns)?Fix cycle protocol:
| Cycle | Action |
|---|---|
| 1 | Fix all identified issues, re-validate |
| 2 | Fix remaining issues, re-validate |
| 3 | If issues persist, document remaining problems and escalate to user |
After 3 cycles, if issues remain:
Do not continue cycling indefinitely. Some issues (font rendering, complex shape alignment) may require manual intervention in PowerPoint.
Run through the Final Quality Checklist before delivering.
| Context | Symbol | Usage |
|---|---|---|
| Included/Positive | ✓ | Items within scope, features present |
| Excluded/Negative | × | Items outside scope, features absent |
| Neutral list | • | General enumeration, commentary |
| Numbered sequence | 1. 2. 3. | Process steps, rankings |
| Sub-bullets | – | Secondary points under main bullets |
These are typical ranges—adjust based on template specifications:
| Level | Examples | Typical Size | Style |
|---|---|---|---|
| Title | Slide title | 40-48pt | Bold |
| Subtitle | Market definition, slide descriptor | 18-22pt | Bold |
| Section Header | "Key Projections", "Commentary" | 14-16pt | Regular |
| Block Label | "Segments Included", "Definition" sidebar | 12-14pt | Regular |
| Block Content | Bullet points, body text | 11-14pt | Regular |
| Table Header | Column headers | 10-12pt | Bold |
| Table Body | Cell content | 9-11pt | Regular |
Boxes at the same hierarchy level MUST use identical font sizes:
| Same Level | Must Match With |
|---|---|
| "Segments Included" | "Segments Excluded" |
| "Definition" | "Scope Rationale" |
| Left column bullets | Right column bullets |
| All block labels | Each other |
| All section headers | Each other |
These are typical conventions — adjust based on the magnitude of values and template style:
| Value Type | Typical Rounding | Example |
|---|---|---|
| Large market sizes ($10bn+) | Nearest $1bn | 18.5 → $19bn |
| Smaller market sizes (<$10bn) | Nearest $0.5bn or $0.1bn | 2.3 → $2.5bn |
| Size ranges | Match precision of sources | 14.9-22.1 → $15-22bn |
| CAGR | Whole % or 0.5% | 16.4% → 16% or 16.5% |
| Market share | Nearest 5% or match source | 21.4% → 20% |
| Multiples | 1 decimal | 9.69 → 9.7x |
Principle: Rounding should not materially change the figure. For smaller values, use finer precision.
Vertically stacked boxes must have identical:
Horizontally adjacent boxes must have identical:
When the same data appears on multiple slides:
These requirements are non-negotiable regardless of template:
| Requirement | Details |
|---|---|
| Text Readability | All text MUST have sufficient contrast with background. Examples: white/light text on dark blue, dark green, black backgrounds; black/dark text on white, light gray, light yellow backgrounds. |
| Actual Table Objects | Tabular data MUST be table objects, not tab-separated text. See xml-reference.md. |
| Proper Chart/Table Sizing | Pasted visuals MUST fill designated area. See formatting-standards.md. |
| Consistent Formatting | Bullets within section MUST match (symbol, size, indent). Same-level boxes MUST use same font size. |
| Content Boundaries | All content MUST stay within slide edges. Footnote box width: ~32.5cm for 16:9, ~24cm for 4:3. |
These failures occur when placeholder formatting is mistaken for output formatting. Recognizing these patterns is essential.
What happens: Template has colored instruction boxes (yellow, orange, etc.) with guidance text. Model replaces the guidance text with actual data BUT KEEPS THE COLORED BOX.
Why it's wrong: The colored box IS the placeholder. It tells you what content goes there. The output should have different formatting — typically dark text on white/light background, or properly styled shapes.
Recognition test: If your populated slide has large colored rectangles filled with data text, you have copied the placeholder format instead of replacing it.
Critical distinction — two types of "placeholders":
| Type | How to identify | What to do |
|---|---|---|
| Instruction boxes | Bright colors (yellow, orange), contains guidance text like "Insert X here", white/light text on colored background | DELETE the entire shape, then create new content with production formatting |
| Layout placeholders | Part of slide master/layout, neutral colors matching template theme, "Click to add text" | KEEP the shape, REPLACE the text content only |
If uncertain: check if the shape exists on an empty slide from the same template. Layout placeholders persist; instruction boxes are regular shapes.
What happens: Model creates table-like content using separator characters (|, tabs, spaces) instead of actual table objects.
Why it's wrong: This is NOT a table. Columns will never align properly, it cannot be formatted consistently, and it looks unprofessional.
Recognition test: If you're typing | characters or relying on spaces/tabs to create columns, you're creating text, not a table.
MUST verify: After creating any table, verify it is an actual table object. See xml-reference.md for verification methods.
What happens: Placeholder uses light text on colored background (e.g., white on yellow). Model populates data but keeps this color scheme, resulting in hard-to-read output.
Why it's wrong: Placeholder colors are deliberately distinct to signal "replace me." Production slides typically use dark text on light backgrounds for body content.
Recognition test: If your populated content has light/white text on bright colored backgrounds in body areas (not headers), you've inherited placeholder formatting.
Correct approach: Apply production formatting — typically dark text (#000000 or #333333) on white or light backgrounds for body content. Headers and accent areas may use brand colors.
| Element | Placeholder (Input) | Production (Output) |
|---|---|---|
| Instruction boxes | Colored background, guidance text | Removed or reformatted |
| Data areas | "[Insert data here]" text | Actual data with clean formatting |
| Tables | Description of what table should contain | Actual table object with rows/columns |
| Body text | Light text on colored background | Dark text on light background |
The placeholder tells you WHAT to create, not HOW to format it.
For detailed explanations of the most critical failures, see Critical Anti-Patterns above.
| Failure | Solution | Reference |
|---|---|---|
| Unstructured text dumps | Break into bullets (✓, ×, •) | formatting-standards.md |
| Pipe/tab-separated "tables" | Create actual table objects — text with separators is NOT a table | xml-reference.md |
| Poor text/background contrast | Audit every text element | — |
| Tiny pasted charts | Resize to fill area, paste chart only | formatting-standards.md |
If PDF/image conversion fails:
which sofficelibreoffice --headless --convert-to pdf presentation.pptxIf source data has inconsistencies or conflicts:
If calculations don't match source projections:
When creating tables (MUST be actual table objects):
Column Alignment:
Header Row:
Consensus/Total Row:
Width: Fill designated section width completely.
For XML implementation, see xml-reference.md.
Format:
Sources: [Source 1] (Year), [Source 2] (Year).
Notes: (1) [First note]; (2) [Second note].
Example:
Sources: Grand View Research (2024), Mordor Intelligence (2024), Markets and Markets (2023).
Notes: (1) Excludes hardware revenue; (2) Includes both B2B and B2C segments.
All superscript numbers (¹, ², ³) in slide body MUST have corresponding Notes entries.
For detailed data requirements, formatting principles, and example column headers for each slide type, see slide-templates.md.
Common slide types covered: Market Definition, Market Sizing/TAM, Competitive Landscape, Financial Summary, Transaction Comparables.
Before delivering the populated template, verify:
calculation-standards.md)[bracket] placeholder text remainingWeekly Installs
51
Repository
GitHub Stars
5.6K
First Seen
13 days ago
Security Audits
Gen Agent Trust HubPassSocketPassSnykWarn
Installed on
opencode50
gemini-cli50
github-copilot50
amp50
codex50
kimi-cli50
Skills CLI 使用指南:AI Agent 技能包管理器安装与管理教程
33,600 周安装
| Footnotes | Sources, notes | 8-9pt | Italic |
| No Placeholder Formatting | Remove colored instruction boxes. Main body: dark text on light background per template. |
| Source data pasted with charts | Select only chart object before copy | — |
| Data dumped into placeholder boxes | Delete colored instruction boxes, create new properly formatted content | Anti-Patterns |
| Inconsistent bullets | Define style once, apply to all | formatting-standards.md |
| Inconsistent fonts across boxes | Standardize same-level boxes | formatting-standards.md |
| Content overflow | Set explicit box widths (footnotes: 32.5cm for 16:9, 24cm for 4:3) | — |
| Missing logo | Use logo from task files; if not provided, flag to user | — |
Remaining [brackets] | Search and replace all placeholders | — |
| Text arrows (→, ⟹) | Use PowerPoint shape objects | xml-reference.md |