ppt-orchestra-skill
PowerPoint資料を最初から作成する際に、各スライドの種類を分類し、視覚的な多様性や文字の体裁を整え、内容の品質チェックを行うことで、完成度の高い資料作成を計画・実行するSkill。
📜 元の英語説明(参考)
Plan and orchestrate multi-slide PowerPoint creation from scratch. Use before generating a full deck with subagents: classify each slide type, enforce visual variety, set typography/spacing rules, and run text-based QA to catch content issues.
🇯🇵 日本人クリエイター向け解説
PowerPoint資料を最初から作成する際に、各スライドの種類を分類し、視覚的な多様性や文字の体裁を整え、内容の品質チェックを行うことで、完成度の高い資料作成を計画・実行するSkill。
※ jpskill.com 編集部が日本のビジネス現場向けに補足した解説です。Skill本体の挙動とは独立した参考情報です。
下記のコマンドをコピーしてターミナル(Mac/Linux)または PowerShell(Windows)に貼り付けてください。 ダウンロード → 解凍 → 配置まで全自動。
mkdir -p ~/.claude/skills && cd ~/.claude/skills && curl -L -o ppt-orchestra-skill.zip https://jpskill.com/download/19706.zip && unzip -o ppt-orchestra-skill.zip && rm ppt-orchestra-skill.zip
$d = "$env:USERPROFILE\.claude\skills"; ni -Force -ItemType Directory $d | Out-Null; iwr https://jpskill.com/download/19706.zip -OutFile "$d\ppt-orchestra-skill.zip"; Expand-Archive "$d\ppt-orchestra-skill.zip" -DestinationPath $d -Force; ri "$d\ppt-orchestra-skill.zip"
完了後、Claude Code を再起動 → 普通に「動画プロンプト作って」のように話しかけるだけで自動発動します。
💾 手動でダウンロードしたい(コマンドが難しい人向け)
- 1. 下の青いボタンを押して
ppt-orchestra-skill.zipをダウンロード - 2. ZIPファイルをダブルクリックで解凍 →
ppt-orchestra-skillフォルダができる - 3. そのフォルダを
C:\Users\あなたの名前\.claude\skills\(Win)または~/.claude/skills/(Mac)へ移動 - 4. Claude Code を再起動
⚠️ ダウンロード・利用は自己責任でお願いします。当サイトは内容・動作・安全性について責任を負いません。
🎯 このSkillでできること
下記の説明文を読むと、このSkillがあなたに何をしてくれるかが分かります。Claudeにこの分野の依頼をすると、自動で発動します。
📦 インストール方法 (3ステップ)
- 1. 上の「ダウンロード」ボタンを押して .skill ファイルを取得
- 2. ファイル名の拡張子を .skill から .zip に変えて展開(macは自動展開可)
- 3. 展開してできたフォルダを、ホームフォルダの
.claude/skills/に置く- · macOS / Linux:
~/.claude/skills/ - · Windows:
%USERPROFILE%\.claude\skills\
- · macOS / Linux:
Claude Code を再起動すれば完了。「このSkillを使って…」と話しかけなくても、関連する依頼で自動的に呼び出されます。
詳しい使い方ガイドを見る →- 最終更新
- 2026-05-18
- 取得日時
- 2026-05-18
- 同梱ファイル
- 1
📖 Skill本文(日本語訳)
※ 原文(英語/中国語)を Gemini で日本語化したものです。Claude 自身は原文を読みます。誤訳がある場合は原文をご確認ください。
[Skill 名] ppt-orchestra-skill
スライドページの種類(標準)
スライドごとの生成(スライドごとに1つのJSファイル)の場合、すべてのスライドをこれら5つのページタイプのいずれか1つに分類してください。これにより、構造の一貫性が保たれ、「ランダムなレイアウトのずれ」が防止されます。
- 表紙
- 用途: 開始 + トーン設定
- 内容: 大きなタイトル、サブタイトル/発表者、日付/機会、印象的な背景/モチーフ
- 目次
- 用途: ナビゲーション + 期待設定(3~5セクション)
- 内容: セクションリスト(オプションでアイコン/ページ番号)
- セクション区切り
- 用途: 主要な部分間の明確な移行
- 内容: セクション番号 + タイトル(+ オプションで1~2行の導入文)
- コンテンツページ(サブタイプを選択)
- テキスト: 箇条書き/引用/短い段落(アイコン/図形も追加)
- 複合メディア: 2カラム / ハーフブリード画像 + テキストオーバーレイ
- データビジュアライゼーション: チャート + 1~3つの主要なポイント + 出典
- 比較: 並列カラム/カード(A対B、長所/短所)
- タイムライン/プロセス: 矢印付きのステップ、ジャーニー、フェーズ
- 画像ショーケース: ヒーロー画像、ギャラリー、またはビジュアル優先のレイアウト
- 要約/締めページ
- 用途: まとめ + アクション
- 内容: 主要なポイント、CTA/次のステップ、連絡先/QR、感謝の言葉
レイアウトオプション:
- 2カラム(左にテキスト、右にイラスト)
- アイコン + テキスト行(色付きの円にアイコン、太字の見出し、その下に説明)
- 2x2または2x3グリッド(片側に画像、もう片側にコンテンツブロックのグリッド)
- ハーフブリード画像(左右どちらかの全面)とコンテンツオーバーレイ
データ表示:
- 大きな統計コールアウト(60-72ptの大きな数字と、その下に小さなラベル)
- 比較カラム(前後、長所/短所、並列オプション)
- タイムラインまたはプロセスフロー(番号付きステップ、矢印)
視覚的な洗練:
- セクション見出しの横に小さな色付きの円に入ったアイコン
- 主要な統計やタグラインのイタリック体アクセントテキスト
タイポグラフィ
魅力的なフォントの組み合わせを選択してください — Arialをデフォルトにしないでください。個性のある見出しフォントを選び、クリーンな本文フォントと組み合わせてください。
| 見出しフォント | 本文フォント |
|---|---|
| Georgia | Calibri |
| Arial Black | Arial |
| Calibri | Calibri Light |
| Cambria | Calibri |
| Trebuchet MS | Calibri |
| Impact | Arial |
| Palatino | Garamond |
| Consolas | Calibri |
| 要素 | サイズ |
|---|---|
| スライドタイトル | 36-44pt 太字 |
| セクション見出し | 20-24pt 太字 |
| 本文 | 14-16pt |
| キャプション | 10-12pt ミュート |
スペーシング
- 最小マージン 0.5インチ
- コンテンツブロック間 0.3-0.5インチ
- ゆとりを持たせる — すべてのスペースを埋めない
避けるべきこと(よくある間違い)
- 同じレイアウトを繰り返さない — スライド全体でカラム、カード、コールアウトを変化させる
- 本文を中央揃えにしない — 段落とリストは左揃えにする。タイトルのみ中央揃え
- サイズのコントラストを軽視しない — タイトルは14-16ptの本文から際立つために36pt以上必要
- 青をデフォルトにしない — 特定のトピックを反映する色を選択する
- スペーシングをランダムに混ぜない — 0.3インチまたは0.5インチのギャップを選択し、一貫して使用する
- 1つのスライドだけを装飾し、残りを素朴にしない — 完全にコミットするか、全体を通してシンプルに保つ
- テキストのみのスライドを作成しない — 画像、アイコン、チャート、または視覚要素を追加する。単なるタイトル + 箇条書きは避ける
- テキストボックスのパディングを忘れない — 行や図形をテキストの端に揃える場合、テキストボックスの
margin: 0を設定するか、パディングを考慮して図形をオフセットする - 低コントラストの要素を使用しない — アイコンとテキストの両方が背景に対して強いコントラストを持つ必要がある。明るい背景に明るいテキスト、または暗い背景に暗いテキストは避ける
- タイトルの下にアクセントラインを絶対に使用しない — これらはAI生成スライドの特徴です。代わりに空白または背景色を使用する
スライドのコンパイル
すべてのスライドJSファイルが slides/ に生成された後、それらを単一のPPTXにコンパイルするために slides/compile.js を作成します。
// slides/compile.js
const pptxgen = require('pptxgenjs');
const pres = new pptxgen();
pres.layout = 'LAYOUT_16x9';
const theme = {
primary: "22223b", // dark color for backgrounds/text
secondary: "4a4e69", // secondary accent
accent: "9a8c98", // highlight color
light: "c9ada7", // light accent
bg: "f2e9e4" // background color
};
for (let i = 1; i <= 12; i++) { // adjust count as needed
const num = String(i).padStart(2, '0');
const slideModule = require(`./slide-${num}.js`);
slideModule.createSlide(pres, theme);
}
pres.writeFile({ fileName: './output/presentation.pptx' });
実行方法: cd slides && node compile.js
QA(必須)
問題があることを前提としてください。それらを見つけるのがあなたの仕事です。
最初のレンダリングが正しいことはほとんどありません。QAはバグ探しとして取り組み、確認ステップとしてではありません。最初の検査で問題がゼロだった場合、十分に注意深く見ていなかったことになります。
コンテンツQA
python -m markitdown output.pptx
コンテンツの欠落、誤字脱字、順序の間違いを確認してください。
テンプレートを使用している場合、残っているプレースホルダーテキストを確認してください:
python -m markitdown output.pptx | grep -iE "xxxx|lorem|ipsum|this.*(page|slide).*layout"
grepが結果を返した場合、成功を宣言する前にそれらを修正してください。
検証ループ
- スライドを生成 →
python -m markitdown output.pptxでテキストを抽出 → コンテンツをレビュー - 見つかった問題をリストアップする(見つからなかった場合は、より批判的に再度確認する)
- 問題を修正する
- 影響を受けたスライドを再検証する — 1つの修正が別の問題を引き起こすことがよくあります
- 完全なパスで新しい問題が見つからなくなるまで繰り返す
少なくとも1回の修正と検証のサイクルを完了するまで、成功を宣言しないでください。
依存関係
pip install "markitdown[pptx]"- テキスト抽出npm install -g pptxgenjs- ゼロからの作成
📜 原文 SKILL.md(Claudeが読む英語/中国語)を展開
Slide Page Types (Standard)
For slide-by-slide generation (one JS file per slide), classify every slide as exactly one of these 5 page types. This keeps structure consistent and prevents "random layout drift".
- Cover Page
- Use for: opening + tone setting
- Content: big title, subtitle/presenter, date/occasion, strong background/motif
- Table of Contents
- Use for: navigation + expectation setting (3–5 sections)
- Content: section list (optional icons / page numbers)
- Section Divider
- Use for: clear transitions between major parts
- Content: section number + title (+ optional 1–2 line intro)
- Content Page (pick a subtype)
- Text: bullets/quotes/short paragraphs (still add icons/shapes)
- Mixed media: two-column / half-bleed image + text overlay
- Data visualization: chart + 1–3 key takeaways + source
- Comparison: side-by-side columns/cards (A vs B, pros/cons)
- Timeline / process: steps with arrows, journey, phases
- Image showcase: hero image, gallery, or visual-first layout
- Summary / Closing Page
- Use for: wrap-up + action
- Content: key takeaways, CTA/next steps, contact/QR, thank-you
Layout options:
- Two-column (text left, illustration on right)
- Icon + text rows (icon in colored circle, bold header, description below)
- 2x2 or 2x3 grid (image on one side, grid of content blocks on other)
- Half-bleed image (full left or right side) with content overlay
Data display:
- Large stat callouts (big numbers 60-72pt with small labels below)
- Comparison columns (before/after, pros/cons, side-by-side options)
- Timeline or process flow (numbered steps, arrows)
Visual polish:
- Icons in small colored circles next to section headers
- Italic accent text for key stats or taglines
Typography
Choose an interesting font pairing — don't default to Arial. Pick a header font with personality and pair it with a clean body font.
| Header Font | Body Font |
|---|---|
| Georgia | Calibri |
| Arial Black | Arial |
| Calibri | Calibri Light |
| Cambria | Calibri |
| Trebuchet MS | Calibri |
| Impact | Arial |
| Palatino | Garamond |
| Consolas | Calibri |
| Element | Size |
|---|---|
| Slide title | 36-44pt bold |
| Section header | 20-24pt bold |
| Body text | 14-16pt |
| Captions | 10-12pt muted |
Spacing
- 0.5" minimum margins
- 0.3-0.5" between content blocks
- Leave breathing room—don't fill every inch
Avoid (Common Mistakes)
- Don't repeat the same layout — vary columns, cards, and callouts across slides
- Don't center body text — left-align paragraphs and lists; center only titles
- Don't skimp on size contrast — titles need 36pt+ to stand out from 14-16pt body
- Don't default to blue — pick colors that reflect the specific topic
- Don't mix spacing randomly — choose 0.3" or 0.5" gaps and use consistently
- Don't style one slide and leave the rest plain — commit fully or keep it simple throughout
- Don't create text-only slides — add images, icons, charts, or visual elements; avoid plain title + bullets
- Don't forget text box padding — when aligning lines or shapes with text edges, set
margin: 0on the text box or offset the shape to account for padding - Don't use low-contrast elements — icons AND text need strong contrast against the background; avoid light text on light backgrounds or dark text on dark backgrounds
- NEVER use accent lines under titles — these are a hallmark of AI-generated slides; use whitespace or background color instead
Compiling Slides
After all slide JS files are generated in slides/, create slides/compile.js to compile them into a single PPTX:
// slides/compile.js
const pptxgen = require('pptxgenjs');
const pres = new pptxgen();
pres.layout = 'LAYOUT_16x9';
const theme = {
primary: "22223b", // dark color for backgrounds/text
secondary: "4a4e69", // secondary accent
accent: "9a8c98", // highlight color
light: "c9ada7", // light accent
bg: "f2e9e4" // background color
};
for (let i = 1; i <= 12; i++) { // adjust count as needed
const num = String(i).padStart(2, '0');
const slideModule = require(`./slide-${num}.js`);
slideModule.createSlide(pres, theme);
}
pres.writeFile({ fileName: './output/presentation.pptx' });
Run with: cd slides && node compile.js
QA (Required)
Assume there are problems. Your job is to find them.
Your first render is almost never correct. Approach QA as a bug hunt, not a confirmation step. If you found zero issues on first inspection, you weren't looking hard enough.
Content QA
python -m markitdown output.pptx
Check for missing content, typos, wrong order.
When using templates, check for leftover placeholder text:
python -m markitdown output.pptx | grep -iE "xxxx|lorem|ipsum|this.*(page|slide).*layout"
If grep returns results, fix them before declaring success.
Verification Loop
- Generate slides → Extract text with
python -m markitdown output.pptx→ Review content - List issues found (if none found, look again more critically)
- Fix issues
- Re-verify affected slides — one fix often creates another problem
- Repeat until a full pass reveals no new issues
Do not declare success until you've completed at least one fix-and-verify cycle.
Dependencies
pip install "markitdown[pptx]"- text extractionnpm install -g pptxgenjs- creating from scratch