Agent Skills by ALSEL
Anthropic Claudeビジネス・経営⭐ リポ 0品質スコア 50/100

pptx-generator

PowerPointのPPTXファイルをプログラムで作成・編集するスキルです。プレゼンテーションの生成、PPTXテンプレートの修正、スライドコンテンツの抽出、サムネイルプレビューの作成、PowerPoint作業の自動化が必要な場合に活用されます。ブランドガイドラインに沿ったテンプレートベースの生成と、ゼロからの新規作成の両方に対応しています。

description の原文を見る

Create and manipulate PowerPoint PPTX files programmatically. Use when the user needs to generate presentations, modify PPTX templates, extract slide content, create thumbnail previews, or automate PowerPoint workflows. Supports both template-based generation (for branding compliance) and from-scratch creation. Keywords: PowerPoint, PPTX, presentation, slides, template, deck, slideshow, corporate, branding.

SKILL.md 本文

PPTX ジェネレータ

このスキルを使用する場合

このスキルを使用してください:

  • データまたは仕様からプログラムでプレゼンテーションを作成する
  • ブランド化されたテンプレートに動的コンテンツを入力しながら企業スタイルを保持する
  • 既存の PPTX ファイルからテキストと構造を抽出して分析する
  • 承認されたテンプレートのライブラリからスライドを組み合わせる
  • プレゼンテーション生成ワークフローを自動化する

このスキルを使用しないでください:

  • ユーザーがプレゼンテーションを開く/表示したい場合(ネイティブ PowerPoint またはビューアを使用)
  • 複雑なアニメーションまたはトランジションが必要な場合(サポートが限定的)
  • 古い .ppt 形式を使用している場合(PPTX のみ対応)

前提条件

  • Deno がインストール済み(https://deno.land/)
  • テンプレートベースの操作用の入力 PPTX ファイル
  • スクラッチ生成用の JSON 仕様

クイックスタート

2つの操作モード

  1. テンプレートモード:既存のブランド化されたテンプレートを修正

    • 分析と置換:{{PLACEHOLDERS}} を見つけてコンテンツに置き換える
    • スライドライブラリ:テンプレートライブラリからスライドを選択して組み合わせる
  2. スクラッチモード:JSON 仕様を使用して最初からプレゼンテーションを作成

使用方法

モード 1:テンプレートベースの生成

ステップ 1a:テンプレートを分析

テキストインベントリを抽出して、何が置き換え可能かを理解します:

deno run --allow-read scripts/analyze-template.ts corporate-template.pptx > inventory.json

出力 (inventory.json):

{
  "filename": "corporate-template.pptx",
  "slideCount": 10,
  "textElements": [
    {
      "slideNumber": 1,
      "shapeId": "shape-2",
      "shapeName": "Title 1",
      "placeholderType": "ctrTitle",
      "position": { "x": 1.5, "y": 2.0, "w": 7.0, "h": 1.2 },
      "paragraphs": [
        { "text": "{{TITLE}}", "fontSize": 44, "bold": true }
      ]
    }
  ]
}

ステップ 1b:置換仕様を作成

replacements.json を作成します:

{
  "textReplacements": [
    { "tag": "{{TITLE}}", "value": "Q4 2024 Results" },
    { "tag": "{{SUBTITLE}}", "value": "Financial Overview" },
    { "tag": "{{DATE}}", "value": "December 2024" },
    { "tag": "{{AUTHOR}}", "value": "Finance Team", "slideNumbers": [1] }
  ]
}

ステップ 1c:出力を生成

deno run --allow-read --allow-write scripts/generate-from-template.ts \
  corporate-template.pptx replacements.json output.pptx

モード 1(別案):スライドライブラリ

ステップ 2a:テンプレートスライドをプレビュー

利用可能なスライドに関する情報を取得します:

deno run --allow-read scripts/generate-thumbnails.ts slide-library.pptx

ビジュアルプレビューについては、サムネイルを抽出します:

deno run --allow-read --allow-write scripts/generate-thumbnails.ts \
  slide-library.pptx --extract-thumb --output-dir ./previews

ステップ 2b:スライドを選択して組み合わせ

selections.json を作成します:

{
  "slideSelections": [
    { "slideNumber": 1 },
    { "slideNumber": 5 },
    { "slideNumber": 12 },
    { "slideNumber": 3 }
  ],
  "textReplacements": [
    { "tag": "{{TITLE}}", "value": "Custom Presentation" }
  ]
}

ステップ 2c:結合したプレゼンテーションを生成

deno run --allow-read --allow-write scripts/generate-from-template.ts \
  slide-library.pptx selections.json custom-deck.pptx

モード 2:スクラッチからの生成

ステップ 3a:仕様を作成

spec.json を作成します:

{
  "title": "Product Launch 2025",
  "author": "Marketing Team",
  "slides": [
    {
      "background": { "color": "003366" },
      "elements": [
        {
          "type": "text",
          "x": 1, "y": 2.5, "w": 8, "h": 1.5,
          "options": {
            "text": "Product Launch 2025",
            "fontSize": 44,
            "bold": true,
            "color": "FFFFFF",
            "align": "center"
          }
        },
        {
          "type": "text",
          "x": 1, "y": 4, "w": 8, "h": 0.5,
          "options": {
            "text": "Revolutionizing the Industry",
            "fontSize": 24,
            "color": "CCCCCC",
            "align": "center"
          }
        }
      ]
    },
    {
      "elements": [
        {
          "type": "text",
          "x": 0.5, "y": 0.5, "w": 9, "h": 0.7,
          "options": {
            "text": "Key Features",
            "fontSize": 32,
            "bold": true,
            "color": "003366"
          }
        },
        {
          "type": "table",
          "x": 0.5, "y": 1.5, "w": 9, "h": 3,
          "options": {
            "rows": [
              ["Feature", "Description", "Benefit"],
              ["Speed", "2x faster processing", "Save time"],
              ["Quality", "HD output", "Better results"],
              ["Integration", "Works with existing tools", "Easy adoption"]
            ],
            "border": { "pt": 1, "color": "CCCCCC" }
          }
        }
      ]
    }
  ]
}

ステップ 3b:プレゼンテーションを生成

deno run --allow-read --allow-write scripts/generate-scratch.ts spec.json output.pptx

例 1:企業四半期報告書

シナリオ:ブランド化されたテンプレートから四半期報告書を生成します。

手順

# 1. 置き換え可能なコンテンツについてテンプレートを分析
deno run --allow-read scripts/analyze-template.ts quarterly-template.pptx --pretty

# 2. Q4 データで replacements.json を作成
# 3. レポートを生成
deno run --allow-read --allow-write scripts/generate-from-template.ts \
  quarterly-template.pptx replacements.json Q4-2024-Report.pptx

例 2:スライドライブラリからカスタムピッチデックを作成

シナリオ:特定のクライアント向けピッチ用に承認済みスライドを組み合わせます。

手順

# 1. 利用可能なスライドを表示
deno run --allow-read scripts/generate-thumbnails.ts pitch-library.pptx

# 2. スライド 1、3、7、12、15 を選択する selections.json を作成
# 3. カスタムデックを生成
deno run --allow-read --allow-write scripts/generate-from-template.ts \
  pitch-library.pptx selections.json acme-pitch.pptx

例 3:データ駆動型プレゼンテーション

シナリオ:JSON データ(例:API レスポンス)からプレゼンテーションを生成します。

手順

# 1. データを spec.json 形式に変換
# 2. プレゼンテーションを生成
deno run --allow-read --allow-write scripts/generate-scratch.ts data-spec.json report.pptx

スクリプトリファレンス

スクリプト目的権限
analyze-template.tsPPTX からテキストインベントリを抽出--allow-read
generate-thumbnails.tsスライド情報を取得してプレビューを抽出--allow-read --allow-write
generate-from-template.tsテンプレートを修正(置換/組み合わせ)--allow-read --allow-write
generate-scratch.tsJSON 仕様から PPTX を作成--allow-read --allow-write

エレメントタイプ(スクラッチモード)

タイプ説明キーオプション
textテキストボックスtextfontSizeboldcoloralign
imageファイルまたは base64 からの画像pathdatasizing
tableデータテーブルrowscolWborderfill
shape幾何学的図形typefilllinetext
chartチャートとグラフtypedatatitleshowLegend

よくある問題と解決方法

問題:テキストが置き換えられていない

症状:出力 PPTX に {{PLACEHOLDER}} タグがまだ含まれています。

解決方法

  1. analyze-template.ts を実行して正確なタグテキストを確認
  2. タグが XML ラン全体に分割されている可能性があります。テンプレートのタグが単一のテキストランに含まれていることを確認
  3. 置換の slideNumbers フィルタをチェック

問題:スライドの順序が正しくない

症状:組み合わせ後にスライドが間違った順序で表示されます。

解決方法

  • スライドは slideSelections で指定された順序で追加されます
  • スライド番号が元のテンプレート(1 から始まる)と一致していることを確認

問題:画像が表示されない

症状:出力のイメージエレメントが空白です。

解決方法

  1. 絶対パスまたは spec.json の位置からの相対パスを使用
  2. イメージファイルが存在し、読み取り可能であることを確認
  3. サポートされている形式をチェック:PNG、JPEG、GIF

OOXML プレースホルダの継承(高度な)

PowerPoint の OOXML 形式がプレースホルダを処理する方法を理解することは、テンプレート開発に重要です。

継承チェーン

PowerPoint は階層的な継承モデルを使用します:

Theme → Slide Master → Slide Layout → Slide
  • Theme:色、フォント、エフェクトを定義
  • Slide Master:デフォルトのプレースホルダの位置とフォーマット(箇条書きを含む)を定義
  • Slide Layout:特定のレイアウトタイプ(例:タイトルスライド、コンテンツ)のマスター設定をオーバーライド
  • Slide:実際のコンテンツを含み、レイアウトからフォーマットを継承

主要な原則

  1. テキストコンテンツは継承されない:スライドは独自のテキストコンテンツを含める必要があります。レイアウト内の {{placeholder}} テキストは、そのレイアウトを使用するスライドに自動的には表示されません。

  2. テキストフォーマットは継承される:スライドシェイプが空の <a:lstStyle/> を持つ場合、レイアウトの <a:lstStyle> からフォーマット(色、サイズ、箇条書き)を継承します。

  3. プレースホルダリンク:スライドは <p:ph type="..." idx="..."/> 経由でレイアウトにリンクします。type(例:「title」、「body」、「ctrTitle」)と idx は一致する必要があります。

  4. 箇条書き抑制:通常マスターの bodyStyle から箇条書きを継承するプレースホルダの箇条書きを防ぐには、レイアウトの lstStyle に <a:buNone/> を追加します。

継承可能なフォーマットの定義

レイアウトプレースホルダで、色を <a:lstStyle>(継承可能)で定義し、<a:rPr>(実行固有)では定義しません:

<!-- Layout: lstStyle の色(良好 - 継承可能) -->
<p:txBody>
  <a:lstStyle>
    <a:lvl1pPr algn="ctr">
      <a:buNone/>  <!-- 箇条書きを抑制 -->
      <a:defRPr sz="4400" b="1">
        <a:solidFill><a:srgbClr val="FFFFFF"/></a:solidFill>
      </a:defRPr>
    </a:lvl1pPr>
  </a:lstStyle>
  <a:p>
    <a:r><a:rPr lang="en-US"/><a:t>{{placeholder}}</a:t></a:r>
  </a:p>
</p:txBody>

スライドシェイプ構造

スライドがレイアウトから適切に継承するには:

<!-- Slide: レイアウトから継承するための空の lstStyle -->
<p:sp>
  <p:nvSpPr>
    <p:cNvPr id="2" name="title 2"/>
    <p:cNvSpPr><a:spLocks noGrp="1"/></p:cNvSpPr>
    <p:nvPr>
      <p:ph type="ctrTitle"/>  <!-- レイアウトプレースホルダにリンク -->
    </p:nvPr>
  </p:nvSpPr>
  <p:spPr/>  <!-- 空 = レイアウトから位置を継承 -->
  <p:txBody>
    <a:bodyPr/>
    <a:lstStyle/>  <!-- 空 = レイアウトからフォーマットを継承 -->
    <a:p>
      <a:r>
        <a:rPr lang="en-US"/>  <!-- 空 = 文字フォーマットを継承 -->
        <a:t>{{placeholder}}</a:t>  <!-- コンテンツはここに配置される必要があります -->
      </a:r>
    </a:p>
  </p:txBody>
</p:sp>

よくある問題

問題原因解決方法
テキストが白ではなく黒として表示される<a:rPr> で色が定義され、<a:lstStyle> ではないレイアウトの <a:lstStyle> 内の <a:defRPr> に色を移動
不要な箇条書きが表示されているマスターの bodyStyle に箇条書きがあり、レイアウトがオーバーライドしていないレイアウトの <a:lvl1pPr><a:buNone/> を追加
プレースホルダテキストが表示されていないテキストのみレイアウトにあり、スライドにないスライドの <p:txBody> にテキストコンテンツを含める
フォーマットが適用されていないスライドに明示的なフォーマットがある空の <a:lstStyle/><a:rPr lang="en-US"/> を使用

リファレンス:プレースホルダタイプ

タイプ用途
ctrTitle中央配置タイトル(タイトルスライド)
title標準タイトル
subTitleサブタイトル
bodyコンテンツ領域(複数の場合は idx を使用)
pic画像プレースホルダ
dt日付/時刻
ftrフッター
sldNumスライド番号

制限事項

  • スライドレンダリングなし:スライドを画像に直接レンダリングできません(このためには LibreOffice を使用)
  • 限定的なアニメーションサポート:スクラッチモードでの基本的なアニメーションのみ
  • マスタースライド編集なし:テンプレートモードではマスターを保持しますが、修正しません
  • PPTX のみ:レガシー .ppt 形式には対応していません
  • テキスト実行分割:テンプレート内の複雑なフォーマットはタグを XML 要素全体に分割する可能性があります

関連スキル

  • pdf-generator:プレゼンテーションの代わりに PDF ドキュメントを作成する場合
  • docx-generator:Word ドキュメントを作成する場合
  • xlsx-generator:Excel スプレッドシートを作成する場合

ライセンス: MIT(寛容ライセンスのため全文を引用しています) · 原本リポジトリ

詳細情報

作者
jwynia
リポジトリ
jwynia/agent-skills
ライセンス
MIT
最終更新
不明

Source: https://github.com/jwynia/agent-skills / ライセンス: MIT

関連スキル

Anthropic Claudeビジネス・経営⭐ リポ 20,903

3-statement-model

3種類の財務諸表テンプレート(損益計算書、貸借対照表、キャッシュフロー計算書)を作成・記入・完成させることができます。モデルテンプレートの記入、既存のモデル枠組みの完成、財務モデルへのデータ入力、部分的に完成した損益/貸借/キャッシュフロー枠組みの完成、または既存テンプレート構造内での統合財務諸表の連携に対応しています。3種類の財務モデルテンプレートの記入、完成、またはデータ入力に関するご依頼で自動的に機能します。

by anthropics
汎用ビジネス・経営⭐ リポ 1,982

strategic-decision

CEO・経営層向けの戦略的意思決定支援です。前提条件に異議を唱え、問題を診断し、確実な戦略を設計できます。4つのモード(AGGRESSIVE:大きな夢を見る、SELECTIVE:基盤を維持しつつ有望な拡張を厳選、DIAGNOSTIC:最大限の厳密性、VALIDATION:本質に絞る)を備えています。創業者、経営幹部、プロダクトリーダーが製品開発、成長戦略、市場戦略、技術選定、リソース配分に関する戦略的判断が必要な場面で活用できます。

by LeoYeAI
汎用ビジネス・経営⭐ リポ 521

value-realization

エンドユーザーが製品アイデアから明確な価値を感じるかどうかを分析します。以下の場面で活用できます:製品コンセプトの議論、機能の評価、製品改善の方向性提示、マーケティング戦略の企画、導入・継続率の問題分析、コピーが価値を伝えているかの検証、機能と利用シーンの対応付け、または製品方向性・ポジショニング・エンドユーザーの需要の有無が不確かな場合(例:「これは良いアイデアか」「この製品をどう思うか」「ユーザーは必要とするか」「この機能は何に役立つのか」「機能の価値をどう説明するか」「このコピーをどう思うか」「利用シーンを作成する手助けが欲しい」「ユーザーが継続利用しない理由は何か」「どうポジショニングすべきか」)。

by Done-0
Anthropic Claudeビジネス・経営⭐ リポ 42,795

creating-financial-models

このスキルは、投資判断に必要な高度な財務モデリング機能を提供します。DCF分析、感度分析、モンテカルロシミュレーション、シナリオプランニングなど、複数の分析手法を組み合わせることで、より正確で信頼性の高い財務予測が可能になります。

by anthropics
汎用ビジネス・経営⭐ リポ 4,194

pestel-analysis

政治的、経済的、社会的、技術的、環境的、法的な外部要因を分析します。市場環境の変化が製品、ロードマップ、または戦略に大きな影響を与える可能性がある場合に活用できます。

by deanpeters
Anthropic Claudeビジネス・経営⭐ リポ 380

chemical_safety_assessment

化学安全性評価 - 化学物質の安全性を評価します。PubChemの化合物情報、FDAの医薬品データ、ADMET予測、ChEMBLの構造警告を活用します。このスキルを使用することで、化合物名から一般情報を取得したり、医薬品名から警告および注意事項を取得したり、分子のADMETを予測したり、化合物の構造警告を検出したりできます。4つのSCPサーバーから4つのツールを統合しています。

by SpectrAI-Initiative
本サイトは GitHub 上で公開されているオープンソースの SKILL.md ファイルをクロール・インデックス化したものです。 各スキルの著作権は原作者に帰属します。掲載に問題がある場合は info@alsel.co.jp または /takedown フォームよりご連絡ください。
原作者: jwynia · jwynia/agent-skills · ライセンス: MIT