skywork-ppt
指定されたテーマやテンプレートからPowerPoint資料を作成したり、自然な言葉で既存の資料を編集したり、スライドの削除・並べ替え・結合といったファイル操作を実行したりするSkill。
📜 元の英語説明(参考)
Generate PPTs from topics or templates, edit existing presentations via natural language, or perform local file operations (delete/reorder/merge slides). Trigger on requests to create, modify, or manipulate .pptx files. Built on Nano Banana 2. Requires Python 3.8+.
🇯🇵 日本人クリエイター向け解説
指定されたテーマやテンプレートからPowerPoint資料を作成したり、自然な言葉で既存の資料を編集したり、スライドの削除・並べ替え・結合といったファイル操作を実行したりするSkill。
※ jpskill.com 編集部が日本のビジネス現場向けに補足した解説です。Skill本体の挙動とは独立した参考情報です。
下記のコマンドをコピーしてターミナル(Mac/Linux)または PowerShell(Windows)に貼り付けてください。 ダウンロード → 解凍 → 配置まで全自動。
mkdir -p ~/.claude/skills && cd ~/.claude/skills && curl -L -o skywork-ppt.zip https://jpskill.com/download/20831.zip && unzip -o skywork-ppt.zip && rm skywork-ppt.zip
$d = "$env:USERPROFILE\.claude\skills"; ni -Force -ItemType Directory $d | Out-Null; iwr https://jpskill.com/download/20831.zip -OutFile "$d\skywork-ppt.zip"; Expand-Archive "$d\skywork-ppt.zip" -DestinationPath $d -Force; ri "$d\skywork-ppt.zip"
完了後、Claude Code を再起動 → 普通に「動画プロンプト作って」のように話しかけるだけで自動発動します。
💾 手動でダウンロードしたい(コマンドが難しい人向け)
- 1. 下の青いボタンを押して
skywork-ppt.zipをダウンロード - 2. ZIPファイルをダブルクリックで解凍 →
skywork-pptフォルダができる - 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
- 同梱ファイル
- 8
📖 Skill本文(日本語訳)
※ 原文(英語/中国語)を Gemini で日本語化したものです。Claude 自身は原文を読みます。誤訳がある場合は原文をご確認ください。
PPT作成スキル
4つの機能:生成、テンプレート模倣、既存のPPT編集、ローカルファイル操作。
認証(最初に必須)
このスキルを使用する前に、認証を完了する必要があります。まず認証スクリプトを実行してください。
# 認証: 環境トークン / キャッシュされたトークン / ブラウザログインをチェック
python3 <skill-dir>/scripts/skywork_auth.py || exit 1
トークンの優先順位:
- 環境変数
SKYBOT_TOKEN→ 設定されている場合、直接使用します。 - キャッシュされたトークンファイル
~/.skywork_token→ API経由で検証し、有効な場合は使用します。 - 有効なトークンがない場合 → ログインのためにブラウザを開き、完了するまでポーリングし、トークンを保存します。
重要 - ログインURLの取り扱い: スクリプトの出力に [LOGIN_URL] で始まる行が含まれている場合、そのURLをユーザーにクリック可能なメッセージ(例:「ログインするにはこのリンクを開いてください: <url>」)として直ちに送信しなければなりません。ユーザーはブラウザが自動的に開けない環境にいる可能性があるため、常にログインURLを表示してください。
ルーティング — まずユーザーの意図を特定する
| ユーザーの意図 | パス |
|---|---|
| トピック、要件のセット、または参照ファイルから新しいPPTを生成する | レイヤー1 — 生成 |
| 既存の.pptxをレイアウト/スタイルテンプレートとして使用して新しいプレゼンテーションを作成する | レイヤー2 — 模倣 |
| 既存のPPTを編集する: スライドの変更、スライドの追加、スタイルの変更、分割/結合 | レイヤー4 — 編集 |
| ローカルファイル内のスライドを削除/並べ替え/抽出/結合する(バックエンドなし) | レイヤー3 — ローカル操作 |
環境チェック(常に最初に実行)
このスキルにはPython 3 (>=3.8) が必要です。有効なPythonバイナリを見つけて依存関係をインストールするために、どのスクリプトよりも先に以下を実行してください。
PYTHON_CMD=""
for cmd in python3 python python3.13 python3.12 python3.11 python3.10 python3.9 python3.8; do
if command -v "$cmd" &>/dev/null && "$cmd" -c "import sys; exit(0 if sys.version_info >= (3,8) else 1)" 2>/dev/null; then
PYTHON_CMD="$cmd"
break
fi
done
if [ -z "$PYTHON_CMD" ]; then
echo "ERROR: Python 3.8+ not found."
echo "Install on macOS: brew install python3 or visit https://www.python.org/downloads/"
exit 1
fi
echo "Found Python: $PYTHON_CMD ($($PYTHON_CMD --version))"
$PYTHON_CMD -m pip install -q --break-system-packages python-pptx
echo "Dependencies ready."
このチェックの後、以降のすべてのコマンドで
pythonを検出された$PYTHON_CMD(例:python3) に置き換えてください。
レイヤー1 — PPT生成
ステップ
- 最初に必須のステップ — 他の操作を行う前に、今すぐ workflow_generate.md を読んでください。読み終えたら、正確に
✅ workflow_generate.md loaded.と出力し、次に進んでください。 - 環境チェック — 上記のチェックを実行して
$PYTHON_CMDを取得します。 - 参照ファイルのアップロード(ユーザーがコンテンツソースとしてローカルファイルを提供する場合) —
script/parse_file.pyのツールを使用してファイルを解析し、結果を--filesに渡します。以下の--filesの注記を参照してください。 - Web検索(関連するコンテンツが会話にまだない場合に必須) — スクリプト内の
web_searchツールを呼び出してトピックを検索し、結果を2000語以下のreference-fileファイルに要約します。 - スクリプトの実行:
重要: 実行ツールの
yieldMsを600000(10分) に設定してください。 - 納品 — 絶対
.pptxパスとダウンロードURLを提供します。
レイヤー2 — PPT模倣(テンプレートベースの生成)
ステップ
- 最初に必須のステップ - 何らかの行動を起こす前に、すぐに workflow_imitate.md を読んでください!!!
- 環境チェック — 上記のチェックを実行して
$PYTHON_CMDを取得します。 - テンプレートの特定 — ユーザーのメッセージからローカルの
.pptxの絶対パスを抽出します。不明な場合はユーザーに尋ねてください。 - テンプレートのアップロード — アップロードし、出力から
TEMPLATE_URLを抽出します。 - 参照ファイルのアップロード(ユーザーが追加のローカルファイルをコンテンツソースとして提供する場合) —
script/parse_file.pyのツールを使用してファイルを解析し、結果を--filesに渡します。--filesの注記を参照してください。 - Web検索(関連するコンテンツが会話にまだない場合に必須) — スクリプト内の
web_searchツールを呼び出して新しいトピックを検索し、結果を2000語以下のreference-fileファイルに要約します。 - スクリプトの実行:
重要: 実行ツールの
yieldMsを600000(10分) に設定してください。 - 納品 — 絶対
.pptxパス、ダウンロードURL、および使用されたテンプレートファイル名を提供します。
レイヤー4 — PPT編集(AIによる変更)
ユーザーが自然言語を使用して既存のPPTを変更したい場合にこのレイヤーを使用します。PPTXのOSS/CDN URL(以前の生成またはアップロードによるもの)が必要です。
ステップ
- 詳細なワークフロー - 何らかの行動を起こす前に、すぐに workflow_edit.md を読んでください!!!
- 環境チェック — 上記のチェックを実行して
$PYTHON_CMDを取得します。 - PPTX URLの取得 — ユーザーのメッセージから、またはまずローカルファイルをアップロードします。
--pptx-urlを指定してスクリプトを実行:$PYTHON_CMD scripts/run_ppt_write.py "edit instruction" \ --language Chinese \ --pptx-url "https://cdn.example.com/file.pptx" \ -o /absolute/path/output.pptx重要: 実行ツールの
yieldMsを600000(10分) に設定してください。- 納品 — ダウンロードリンク、ローカルパス、および変更の概要を提供します。
レイヤー3 — ローカルファイル操作
# スライド数とタイトルを検査
$PYTHON_CMD scripts/local_pptx_ops.py info --file my.pptx
# スライドを削除(1ベースのインデックス; 3,5,7-9のような範囲をサポート; -o を省略するとその場で上書き)
$PYTHON_CMD scripts/local_pptx_ops.py delete --file my.pptx --slides 3,5,7-9 -o trimmed.pptx
# スライドを並べ替え(すべてのスライドをリストする必要があり、省略は不可)
$PYTHON_CMD scripts/local_pptx_ops.py reorder --file my.pptx --order 2,1,4,3,5
# スライドのサブセットを新しいファイルに抽出
$PYTHON_CMD scripts/local_pptx_ops.py extract --file my.pptx --slides 1-3 -o subset.pptx
# 複数のファイルを結合
$PYTHON_CMD scripts/local_pptx_ops.py merge --files a.pptx b.pptx -o merged.pptx
何らかの行動を起こす前に、すぐに workflow_local.md を読んでください!!!
📜 原文 SKILL.md(Claudeが読む英語/中国語)を展開
PPT Write Skill
Four capabilities: generate, template imitation, edit existing PPT, and local file operations.
Authentication (Required First)
Before using this skill, authentication must be completed. Run the auth script first:
# Authenticate: checks env token / cached token / browser login
python3 <skill-dir>/scripts/skywork_auth.py || exit 1
Token priority:
- Environment variable
SKYBOT_TOKEN→ if set, use directly - Cached token file
~/.skywork_token→ validate via API, if valid, use it - No valid token → opens browser for login, polls until complete, saves token
IMPORTANT - Login URL handling: If script output contains a line starting with [LOGIN_URL], you MUST immediately send that URL to the user in a clickable message (e.g. "Please open this link to log in: <url>"). The user may be in an environment where the browser cannot open automatically, so always surface the login URL.
Routing — Identify the user's intent first
| User intent | Which path |
|---|---|
| Generate a new PPT from a topic, set of requirements or reference files | Layer 1 — Generate |
| Use an existing .pptx as a layout/style template to create a new presentation | Layer 2 — Imitate |
| Edit an existing PPT: modify slides, add slides, change style, split/merge | Layer 4 — Edit |
| Delete / reorder / extract / merge slides in a local file (no backend) | Layer 3 — Local ops |
Environment check (always run this first)
This skill requires Python 3 (>=3.8). Run the following before any script to locate a valid Python binary and install dependencies.
PYTHON_CMD=""
for cmd in python3 python python3.13 python3.12 python3.11 python3.10 python3.9 python3.8; do
if command -v "$cmd" &>/dev/null && "$cmd" -c "import sys; exit(0 if sys.version_info >= (3,8) else 1)" 2>/dev/null; then
PYTHON_CMD="$cmd"
break
fi
done
if [ -z "$PYTHON_CMD" ]; then
echo "ERROR: Python 3.8+ not found."
echo "Install on macOS: brew install python3 or visit https://www.python.org/downloads/"
exit 1
fi
echo "Found Python: $PYTHON_CMD ($($PYTHON_CMD --version))"
$PYTHON_CMD -m pip install -q --break-system-packages python-pptx
echo "Dependencies ready."
After this check, replace
pythonwith the discovered$PYTHON_CMD(e.g.python3) in all subsequent commands.
Layer 1 — Generate PPT
Steps
- REQUIRED FIRST STEP — Read workflow_generate.md NOW, before taking any other action. After reading, output exactly:
✅ workflow_generate.md loaded.— then proceed. - Environment check — run the check above to get
$PYTHON_CMD. - Upload reference files (if the user provides local files as content source) — parse the file using tool in script/parse_file.py and pass the result to
--files. See the--filesnote below. - Web search (required if no relevant content is already in the conversation) — call web_search tool in script to search the topic and distill results into a
reference-filefile of ≤ 2000 words. - Run the script:
Important: set exec tool
yieldMsto600000(10 minutes). - Deliver — provide the absolute
.pptxpath and the download URL.
Layer 2 — Imitate PPT (template-based generation)
Steps
- REQUIRED FIRST STEP - Read workflow_imitate.md immidiately before any action you do!!!
- Environment check — run the check above to get
$PYTHON_CMD. - Locate the template — extract the absolute path of the local
.pptxfrom the user's message; ask the user if it's unclear. - Upload the template — upload it and extract
TEMPLATE_URLfrom the output. - Upload reference files (if the user provides additional local files as content source) — parse the file using tool in script/parse_file.py and pass the result to
--files. See the--files - Web search (required if no relevant content is already in the conversation) — call web_search tool in script to search the new topic and distill results into a
reference-filefile of ≤ 2000 words. - Run the script:
Important: set exec tool
yieldMsto600000(10 minutes). - Deliver — provide the absolute
.pptxpath, the download URL, and the template filename used.
Layer 4 — Edit PPT (AI-powered modification)
Use this layer when the user wants to modify an existing PPT using natural language. Requires an OSS/CDN URL of the PPTX (from a previous generation or upload).
Steps
- Detailed workflow - Read workflow_edit.md immediately before any action you do!!!
- Environment check — run the check above to get
$PYTHON_CMD. - Get PPTX URL — from the user's message or upload a local file first.
- Run the script with
--pptx-url:$PYTHON_CMD scripts/run_ppt_write.py "edit instruction" \ --language Chinese \ --pptx-url "https://cdn.example.com/file.pptx" \ -o /absolute/path/output.pptxImportant: set exec tool
yieldMsto600000(10 minutes). - Deliver — provide download link, local path, and summary of changes.
Layer 3 — Local file operations
# Inspect slide count and titles
$PYTHON_CMD scripts/local_pptx_ops.py info --file my.pptx
# Delete slides (1-based index; supports ranges like 3,5,7-9; omit -o to overwrite in place)
$PYTHON_CMD scripts/local_pptx_ops.py delete --file my.pptx --slides 3,5,7-9 -o trimmed.pptx
# Reorder slides (must list every slide, no omissions)
$PYTHON_CMD scripts/local_pptx_ops.py reorder --file my.pptx --order 2,1,4,3,5
# Extract a subset of slides into a new file
$PYTHON_CMD scripts/local_pptx_ops.py extract --file my.pptx --slides 1-3 -o subset.pptx
# Merge multiple files
$PYTHON_CMD scripts/local_pptx_ops.py merge --files a.pptx b.pptx -o merged.pptx
Read workflow_local.md immidiately before any action you do!!!
Error Handling
- Insufficient benefit: When calling scripts (generate, imitate, or edit), the script or log may show a message like
Insufficient benefit. Please upgrade your account at {url}, meaning the user's benefit level does not meet the requirement for this skill.
How to reply when benefit is insufficient
When you detect the above, reply in the user's current language — do not echo the English message. Use this pattern:
- Convey: "Sorry, PPT generation failed. This skill requires upgrading your Skywork membership to use." then a single call-to-action link.
- Format: One short sentence in the user's language + a link like
[Upgrade now →](url)or the equivalent in their language . - URL: Extract the upgrade URL from the log/script output (e.g. the
at https://...part).
Dependencies
- Python 3.8+ (required) —
python3/pythonmust be on PATH - Layer 3 local ops:
pip install python-pptx --break-system-packages
(The environment check step installs all required dependencies automatically.)
Which layer to trigger?
| Scenario | Use |
|---|---|
| Generate a PPT from a topic or existing reference files | Layer 1 |
| Imitate the layout/style of an existing .pptx | Layer 2 |
| Edit/modify an existing PPT via natural language | Layer 4 |
| Delete / reorder / extract / merge local .pptx files (no backend) | Layer 3 |
同梱ファイル
※ ZIPに含まれるファイル一覧。`SKILL.md` 本体に加え、参考資料・サンプル・スクリプトが入っている場合があります。
- 📄 SKILL.md (7,851 bytes)
- 📎 scripts/config.py (630 bytes)
- 📎 scripts/local_pptx_ops.py (13,562 bytes)
- 📎 scripts/parse_file.py (6,745 bytes)
- 📎 scripts/run_ppt_write.py (15,431 bytes)
- 📎 scripts/skywork_auth.py (9,872 bytes)
- 📎 scripts/upload_files.py (4,794 bytes)
- 📎 scripts/web_search.py (2,406 bytes)