# lecture-slides > テキスト、ファイル、Webサイト等の内容から、講演・プレゼンテーション用のPowerPoint資料(.pptx)を作成します。テンプレート指定、スピーカーノートの自動生成に対応しています。 - Author: JS2IIU - Repository: JS2IIU-MH/agent-skills - Version: 20260201123153 - Stars: 0 - Forks: 0 - Last Updated: 2026-02-06 - Source: https://github.com/JS2IIU-MH/agent-skills - Web: https://mule.run/skillshub/@@JS2IIU-MH/agent-skills~lecture-slides:20260201123153 --- --- name: lecture-slides description: テキスト、ファイル、Webサイト等の内容から、講演・プレゼンテーション用のPowerPoint資料(.pptx)を作成します。テンプレート指定、スピーカーノートの自動生成に対応しています。 --- # Lecture Slides Generation Skill (講演資料作成スキル) このスキルは、ユーザーから提供された情報(テキスト、ファイル、Webサイト)をもとに、講演やプレゼンテーションに適したPowerPointファイルを作成するための手順を提供します。 ## 主な機能 1. **コンテンツ分析と構成**: 入力内容を読み解き、聞き手に伝わりやすいプレゼンテーション構成(タイトル、目次、各章、まとめ)を設計します。 2. **スライド生成**: 要点を箇条書きにしたスライドを作成します。 3. **スピーカーノート(台本)作成**: 「講演スタイル」の要件に基づき、スライドごとの発表原稿(スピーカーノート)を詳細に記述します。これには、スライドの要点を補足する説明や、話し言葉による解説が含まれます。 4. **テンプレート適用**: ユーザーが指定したテンプレートファイル(.pptx)がある場合、そのデザインレイアウトを適用します。 ## 依存関係 スクリプトの実行には `python-pptx` が必要です。 使用する環境にインストールされていない場合は、以下のコマンドでインストールしてください。 ```bash pip install python-pptx ``` ## ワークフロー ### 1. 情報の収集と分析 まず、ユーザーが指定した情報源(ファイルパスやURL)の内容を確認します。 - URLの場合: `read_url_content` などを適宜使用。 - ファイルの場合: `view_file` などを使用。 ### 2. スライド構成データの作成 (JSON) 分析した内容をもとに、以下のJSONフォーマットでスライド構成を作成し、`slides.json` として保存します。 **注意**: - `content` はスライド上に表示される箇条書きリストです。簡潔なキーワードや短い文にしてください。 - `notes` は発表者が話すための原稿です。具体的な説明、具体例、接続詞などを用いた自然な話し言葉で記述してください。 ```json { "slides": [ { "title": "プレゼンテーションのタイトル", "content": [ "発表者の名前", "日付" ], "notes": "本日は、〇〇についてお話しします。..." }, { "title": "導入: 現状の課題", "content": [ "課題1: 手作業によるコスト増", "課題2: ヒューマンエラーのリスク", "市場の変化への対応遅れ" ], "notes": "まず、現状の課題について整理します。第一に...。" } ] } ``` ### 3. スライドの生成 作成したJSONデータをもとに、以下のPythonスクリプトを実行して .pptx ファイルを生成します。 ```bash python .github/skills/lecture-slides/scripts/generate_slides.py [--template ] ``` - ``: ステップ2で作成したJSONファイルのパス(例: `slides.json`)。 - ``: 出力するPowerPointファイルのパス(例: `presentation.pptx`)。 - `--template `: (任意) テンプレートファイルのパス。指定しない場合は白紙のデザインになります。 ### 4. ユーザーへの報告 生成が完了したら、ファイルの出力先をユーザーに伝えてください。 ## ヒント - **講演スタイル**: スライドは視覚的な補助資料とし、詳細は口頭(ノート)で説明するスタイルを心がけてください。スライドに文字を詰め込みすぎないようにします。 - **テンプレート**: テンプレートが指定された場合、スクリプトは自動的にタイトルスライド(レイアウト0)とコンテンツスライド(レイアウト1)を使い分けようとします。複雑なテンプレートの場合はレイアウトが意図通りにならない可能性があるため、必要に応じて生成後の確認を推奨してください。