用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
直接命令不会经过审查 Prompt;运行前请先检查来源。
npx skills add https://github.com/shibayamalicht/apollo-patent-analysis --skill apollo-pptx命令会保持在同一行。复制前请横向滚动并检查完整内容。
想先保存到本地?可下载 SkillsMP 当前能够提供的文件。
正在显示 SKILL.md
| name | apollo-pptx |
| description | APOLLOの分析結果からコンサルティングファーム品質のPowerPointスライドを生成する。PPT作成、スライド作成、プレゼン資料作成で起動。 |
| command | /pptx |
スライド生成時は capcom_schema/templates/slides_spec.md を最優先で参照すること。
slides_spec.md の記述が矛盾する場合、必ず slides_spec.md を採用するslides_spec.md(現行 v5.0、スライドタイプ15種)にあるslides_spec.md 付録「コア関数一覧」/「スライドタイプ一覧」。古い別名(add_process_flow / add_matrix_2x2 / add_kpi_cards / add_pyramid / add_comparison_table / add_timeline / add_footer)を見たら、実在する add_process_slide(縦)・add_arrow_flow_slide(横)・add_matrix_2x2_slide(軸付き2×2・推奨)・add_kpi_slide・add_pyramid_slide・add_table_slide・add_timeline_slide・add_bottom_bar_and_footer 等に読み替えることAPOLLOのCAPCOMセッションデータ(JSON + スナップショット画像)から、python-pptxを使ってコンサルティングファーム品質のPowerPointスライドを自動生成する。
/pptx コマンドを実行capcom_schema/templates/slides_spec.md を仕様書として参照することcapcom_schema/templates/apollo_template.pptx をテンプレートとして使用することpip install python-pptx Pillow が必要_apply_font(run, weight=...) 等で指定(slides_spec §フォント)lang="ja-JP" 明示NAVY: #1B2A4A (タイトル、強調)
BLUE: #2E5090 (セクションヘッダー背景)
ACCENT: #3B7DD8 (アクセントバー)
DARK_GRAY: #333333 (本文)
MEDIUM_GRAY: #666666 (補足)
LIGHT_GRAY: #F2F2F2 (テーブルゼブラ)
KEY_MSG_BG: #E8F0FE (強調ボックス)
RED_ACCENT: #D64545 (マイナス指標)
GREEN_ACCENT:#2E8B57 (ポジティブ指標)
⚠️ 下表の JSON/スナップショットは 「数値」と「図版」の供給源。「何を言うか(主張・論理・要点)」の供給源は完成レポート
reports/report.typ(実装手順②)。下表だけを見て1モジュール1枚で機械的に割り付けず、レポートの論証に沿って束ねること。
| モジュール | スライドタイプ | データソース |
|---|---|---|
| ATLAS | 出願トレンド(棒グラフ+注釈) | atlas_statistics.json |
| ATLAS | 出願人ランキング + HHI/Entropy/Gini | atlas_statistics.json |
| Saturn V | 技術ランドスケープ(スナップショット画像+注釈) | saturnv_clusters.json + snapshots/ |
| Saturn V | クラスタ動態マップ(4象限+注釈) | saturnv_clusters.json の cluster_dynamics |
| Saturn V | ノイズ分析(萌芽テーマ) | saturnv_clusters.json の noise_analysis |
| MEGA | PULSE 4象限(軸別・スナップショット+注釈) | mega_momentum_<軸>.json (applicant/ipc/fterm) + snapshots/ |
| Explorer | 共起ネットワーク(スナップショット+注釈) | snapshots/ |
| Explorer | 急上昇キーワード(テーブル) | explorer_*.json |
| CREW | ネットワーク分析(スナップショット+注釈) | snapshots/ |
| NEBULA | Hype Cycle(スナップショット+注釈) | nebula_hype_cycle.json |
| NEBULA | 学術ランドスケープ(スナップショット+注釈) | nebula_academic_clusters.json |
| NEBULA | 学術クラスタ動態マップ | nebula_academic_clusters.json の cluster_dynamics |
add_process_slide()(縦STEP)または add_arrow_flow_slide()(横向き矢羽根)で短期→中期→長期のフロー ← テキストのみ禁止、ポンチ絵必須以下のスライドタイプは画像がないためテキストのみになりがち。必ず対応するポンチ絵を生成すること:
| スライド | ポンチ絵 | 関数 |
|---|---|---|
| エグゼクティブサマリー | KPIカード行(3-4指標) | add_kpi_slide() |
| 超領域解説(Saturn V) | 2×2マトリクス(成長/成熟ポジション・軸付き) | add_matrix_2x2_slide() |
| ホワイトスペース | ピラミッド(特許化の機会を層別表示) | add_pyramid_slide() |
| 主要発見サマリー | 横向き矢羽根フロー(発見1→2→3→4) | add_arrow_flow_slide() |
| 構成比(クラスタ別件数・出願人シェア) | ドーナツ図 | add_donut_slide() |
| 論点分解(なぜ?の要因分析) | Issue Tree/ロジックツリー | add_issue_tree_slide() |
| 推奨アクション | プロセスフロー(短期→中期→長期) | add_process_slide() / add_arrow_flow_slide() |
| 仮説検証 | 仮説検証テーブル(仮説/判定/根拠) | add_hypothesis_slide() / add_table_slide() |
| NEBULAマクロ環境 | タイムライン(政策イベント時系列) | add_timeline_slide() |
| 競争構造 | 2×2マトリクス(業種×ポジション・軸付き) | add_matrix_2x2_slide() |
| チャート画像 (60%) | テキスト注釈 (40%) |
| snapshots/xxx.png | ■ 要点1 |
| | ■ 要点2 |
| | ■ 要点3 |
| チャート1 (50%) | チャート2 (50%) |
| Before / Patent | After / Academic |
| データテーブル (60%) | テキスト注釈 (40%) |
| タイトル(結論型) |
| ■ サブメッセージ |
| 本文テキスト(箇条書き、最大5項目) |
タイトルとサブメッセージの位置は必ず連動させること。固定座標でハードコードしてはならない。
# ✅ 正しい使い方: タイトルの戻り値でサブメッセージの位置を決める
sub_y = add_title_shape(slide, "上位5クラスタが全体の58%を占有。技術集中化が加速")
content_y = add_sub_message(slide, "クラスタ0「CNF強化ゴム」が最大(48件)...", y=sub_y) # 先頭に■を付けない(自動付与)
# ❌ 間違い: y座標をハードコードするとタイトルとボックスが重なる
add_title_shape(slide, "長いタイトル...")
add_sub_message(slide, "...", y=0.90) # タイトルが長いと重なる
add_title_shape() はタイトルの長さに応じてフォントサイズと高さを動的調整し、サブメッセージの開始y座標を返す。add_sub_message() はボックス下端のy座標を返す。コンテンツ(チャート・テーブル等)はその戻り値を起点に配置する。
capcom_schema/templates/slides_spec.md を設計ガイドとして読み込む(いつ・どのヘルパーを・どんな主張骨格で使うか)。ヘルパー実装は apollo_slides.py を import して使う(コピーしない): 生成スクリプト冒頭で import sys; sys.path.insert(0, "capcom_schema/templates"); from apollo_slides import *reports/report.typ を通読する(最優先) — デッキはレポートの論証の凝縮版であり、evidence の寄せ集めではない。各章の「主張・根拠(数値)・示唆(So what)・章どうしの繋がり」を把握し、スライドの章立て(物語アーク)をレポートの章順に合わせる(slides_spec §0.9)。report_executive.typ があれば要約版の骨子にも使うdata/ と snapshots/ と voyager/mission.json / voyager/context.json を確認
context.json の report_directives.image_slide_instruction を必ず読む: 値があれば「どの画像をどのスライドで使うか」をユーザー指示として最優先で反映する(例:「表紙にクラスタ動態マップ」「権利化率マップはスライド必須」)。空ならAIが最適な画像を選ぶdata/*.json=正確な数値/snapshots/=図版/voyager/*=Missionと画像指示。画像はクリーン版(要点・出典なし)なので スライドには要点(■サブメッセージ)が必須。要点は ②のレポート該当章 から作る(evidence の description だけで埋めない)apollo_slides のヘルパー(add_* 各関数)を呼んで各スライドを生成(slides_spec.md の設計指針=どのヘルパーをどう使うかに従う。ヘルパー実装を本文へ写経しない)reports/ フォルダに apollo_report_YYYYMMDD.pptxadd_bottom_bar_and_footer(slide, page_num)(フッターは「APOLLO」固定)Check 16e FAIL。(出所)NEBULA ハイプサイクル分析 のように 分析モジュール名を出所として掲げない(出どころは分析機能でなくデータ)。モジュール/ブランド機能名(Saturn V TELESCOPE・MEGA PULSE 等)は 本文・サブメッセージ側で「〜分析によれば」と使う。(出所)本分析の特許データセット(日本語公報 N件・期間)。学術/ニュース由来 → (出所)学術論文データ / ニュースデータ。reports/report.typ の脚注/付録C から転記)。同じ出所を全スライドに機械貼りしない。snapshots/ に画像がある場合はfit_image()で優先掲載するslides_spec.mdに6種のポンチ絵パターンのコードが定義されている。以下の基準で使い分けること:
| パターン | 関数名 | 使用場面 |
|---|---|---|
| 縦STEPプロセス | add_process_slide() | 技術進化の段階、ロードマップ(例: 探索期→成長期→成熟期→第二成長期) |
| 横向き矢羽根フロー | add_arrow_flow_slide() | 横方向のプロセス/因果フロー(探索→俯瞰→動態→提言)。コネクタ厳禁・CHEVRON使用 |
| 2×2マトリクス(軸付き) | add_matrix_2x2_slide() | MEGA 4象限の解釈、クラスタ動態の4象限(成長リーダー/新興/成熟/ニッチ)。軸の矢印・象限ラベル自動描画 |
| ドーナツ図 | add_donut_slide() | 構成比(クラスタ別件数・出願人シェア)。BLOCK_ARCで描画(色付き矩形の羅列にしない) |
| Issue Tree/ロジックツリー | add_issue_tree_slide() | 「なぜ?」の要因分解・論証骨格(根→枝)。コネクタ厳禁・RIGHT_ARROW使用 |
| KPIダッシュボード | add_kpi_slide() | エグゼクティブサマリー冒頭、各モジュールの主要数値(件数/CAGR/HHI等) |
| ピラミッド | add_pyramid_slide() | 技術階層(基盤技術→応用技術→萌芽技術)、3段ロケット構造 |
| テーブル+注釈 | add_table_slide() | 出願人TOP5比較、クラスタ間比較(読み取り結論を必ず併記) |
| 仮説検証テーブル | add_hypothesis_slide() | 仮説ID/内容/判定(✅/❌/⚠️)/根拠 |
| タイムライン | add_timeline_slide() | NEBULA政策イベント、技術マイルストーン、出願の転換点 |
ポンチ絵の推奨使用場面(必ず検討すること):
| スライドタイプ | 比率 | 条件 |
|---|---|---|
| チャート+注釈 | 50%以上 | 画像左(60%) + 注釈右(40%) |
| デュアルパネル | 10-15% | 2画像並列比較 |
| テーブル+注釈 | 10-15% | データテーブル + 考察 |
| ナラティブ | 10%以下 | エグゼクティブサマリー・提言のみ |
| セクション区切り | 残り | モジュール名 + 1行説明 |
word_wrap = True を全テキストボックスに設定auto_size = MSO_AUTO_SIZE.NONE でテキストボックスのサイズを固定_apply_kinsoku() を全段落に適用公開されている Anthropic 公式 pptx スキルの知見を APOLLO 用に取り込む。最大の差分は
「生成して終わり」にせず、レンダリング→目視検証→修正→再検証のループを必ず回すこと。
「最初のレンダリングはほぼ必ずどこか崩れている。確認ではなくバグ探しのつもりで臨む。問題ゼロに見えたら、見方が甘い。」
soffice + poppler pdftoppm。無ければ PowerPoint で開いて目視):
soffice --headless --convert-to pdf reports/apollo_report_YYYYMMDD.pptx --outdir reports/
pdftoppm -jpeg -r 150 reports/apollo_report_YYYYMMDD.pdf reports/slide
ls reports/slide-*.jpg # 0埋め桁数は枚数で変わるので実ファイル名を使う
python -m markitdown reports/apollo_report_YYYYMMDD.pptx # 抜け・誤字・順序
python -m markitdown reports/apollo_report_YYYYMMDD.pptx | grep -iE "xxxx|lorem|ipsum|プレースホルダ|ここに記載"
grep がヒットしたら必ず修正してから完成とする。
公開スキルの所在: Anthropic 公式
pptxスキル(html2pptx / OOXML編集 / テンプレート差込の3経路+QA手順)。APOLLO は python-pptx +slides_spec.md実装を正とするが、上記 QA ループと設計指針を必ず併用する。
基于 SOC 职业分类