OpenParable
Skip to content
← Back to skills

Pptx Converter

Documents
pptx-converter

Pptx Converter is an Agent Skill for documents published in the minicoohei/ai-agent-camp repository on GitHub: a SKILL.md instruction file an AI agent can load to do this task.

PPTXテンプレート変換 & ゼロからデッキ生成。テーマ・アニメーション・SmartArtを保持してコンテンツを書き換え。 「PPTX変換」「スライド作成」「パワポ書き換え」「デッキ生成」等のリクエストで発動。

View on GitHub ↗
QUICK START

How to use this skill

Bring this guide into your coding agent with a prompt tailored to the tool you use.

  1. Open your project in Codex.
  2. Copy and paste the prompt below.
  3. Review files and risks before approving any action.
Prompt to paste
Inspect the Agent Skill at https://github.com/minicoohei/ai-agent-camp/blob/HEAD/.claude/skills/pptx-converter/SKILL.md and all supporting files. Report provenance, permissions, scripts, dependencies, and security risks. Propose an exact installation into .agents/skills/pptx-converter, but wait for my approval before writing files or running scripts.

Copying this prompt does not install or run the skill. Review third-party files before use.

トリガーワード

「PPTX変換」「スライド作成」「パワポ書き換え」「デッキ生成」「PowerPoint」

PPTX Converter

PowerPointファイルのテンプレート変換とゼロからのデッキ生成ツール。

機能

1. convert - テンプレート変換(1コマンド完結)

元PPTXをコピーして、全要素をGeminiで意味解析し、新トピックに合わせてコンテンツを自動書き換え。

python skills/pptx-converter/scripts/pptx_converter.py convert \
    source.pptx \
    --topic "2026年Q1営業報告" \
    -o output/slides/q1_report.pptx

保持されるもの: スライドマスター、テーマカラー、フォント定義、アニメーション、トランジション、SmartArt構造、レイアウト配置

2. extract - マッピングYAML生成

元PPTXの全要素を抽出・意味解析し、座標-要素マッピングYAMLを生成。手動確認・編集用。

python skills/pptx-converter/scripts/pptx_converter.py extract \
    source.pptx \
    -o mapping.yaml

3. build - マッピング + データ → PPTX

手動編集したデータYAMLで要素を書き換え。

python skills/pptx-converter/scripts/pptx_converter.py build \
    source.pptx \
    mapping.yaml \
    --data data.yaml \
    -o output.pptx

4. deck - ゼロからデッキ生成

トピックからGeminiでアウトライン生成 → PPTX自動作成。

python skills/pptx-converter/scripts/pptx_converter.py deck \
    --topic "AIエージェント活用提案" \
    --type proposal \
    --style corporate \
    -o output/slides/proposal.pptx

deck オプション:

  • --type: auto / presentation / proposal / report / educational / pitch
  • --style: corporate / creative / minimal / academic
  • --slides N: スライド枚数(0=AI決定)
  • --audience: 対象者
  • --outline-only: アウトラインYAMLのみ出力

対応要素タイプ

タイプ抽出書き換え備考
テキストooスタイル(フォント・色・太字等)完全保持
チャートoochart.replace_data() でデータのみ差し替え
テーブルooセルスタイル保持、行列内容のみ差し替え
画像ooデフォルト保持、個別に差し替え指定可能
図形oo図形内テキストの差し替え
グループoo子要素を再帰的に処理(深さ3まで)
SmartArto部分テキストノードのみXML直接操作で差し替え

マッピングYAML構造

source: "source.pptx"
generated_at: "2026-02-09T15:30:00"
slide_width: 12192000
slide_height: 6858000

slides:
  - slide_number: 1
    layout: "Title Slide"
    elements:
      - id: 2
        name: "Title 1"
        type: text
        role: title
        hint: "メインタイトル。15-25文字。"
        position: { left: 457200, top: 274638, width: 8229600, height: 1143000 }
        style: { font: "Meiryo UI", size: 36, bold: true, color: "2563EB" }
        value: "2025年度 営業戦略"
        placeholder: "{{slide_1_title}}"

placeholders:
  - key: "{{slide_1_title}}"
    type: text
    role: title
    current: "2025年度 営業戦略"

ワークフロー判断

  • テンプレートPPTXがある → convert(1コマンド完結)
  • マッピングを手動確認したい → extract → YAML編集 → build
  • ゼロから作成 → deck

環境変数

  • GEMINI_API_KEY or GOOGLE_API_KEY: Gemini API キー(必須)
  • GEMINI_FLASH_MODEL: テキスト処理モデル(デフォルト: gemini-2.5-flash)