mcpField
S
Skywork-ppt

Skywork-ppt

github.com/skyworkaiドキュメント207660 回インストール30 週間前に更新
リポジトリ

Skywork-ppt について

Skywork-pptは、OpenClaw向けのプレゼンテーション作成スキルです。新規作成、既存PPTXのテンプレート化、編集、ローカルでのスライド操作に対応し、リモート生成と編集にはSKYWORK_API_KEYが必要です。

主な機能

  1. 01テーマや参考資料からのプレゼン作成
  2. 02PPTXテンプレートを使った新規作成
  3. 03既存プレゼンの編集
  4. 04スライドの削除・並べ替え・抽出・結合

活用シーン

  1. 01テーマと参考ファイルから資料を作成
  2. 02既存資料のスタイルを使って新規作成
  3. 03自然言語の指示でスライドを修正
  4. 04リモート処理なしでスライドを整理

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/skyworkai/skywork-skills --skill skywork-ppt

インストール後、Claude Code で/skywork-pptを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

workflow_edit.md
workflow_generate.md
workflow_imitate.md
workflow_local.md
references/
apikey-fetch.md
scripts/
constant.py
web_search.py
skywork_auth.py
parse_file.py
local_pptx_ops.py
run_ppt_write.py
upload_files.py

詳細

PPT Write スキル

4 つの機能:生成、テンプレートの模倣、既存の PPT の編集、ローカルファイル操作。


前提条件

API キーの設定(最初に必須)

このスキルを使用するには、OpenClaw で SKYWORK_API_KEY を設定する必要があります。

API キーをまだお持ちでない場合は、次のサイトにアクセスしてください: https://skywork.ai

詳しい設定手順については、次を参照してください: references/apikey-fetch.md


プライバシーとリモート呼び出し(使用前にお読みください)

  • リモートアップロードと処理:レイヤー 1/2/4 では、ローカルファイルをアップロードし、ユーザーのクエリ全文をそのまま Skywork サービスに送信します。リモートサービスとそのデータ取り扱いポリシーを信頼できない場合は、機密情報や秘密情報を含めないでください。
  • ローカルのみの操作:レイヤー 3(ローカル操作)はデバイス上だけで実行され、リモートゲートウェイを呼び出しません。厳密にローカルで処理する必要がある場合は、レイヤー 3 を使用してください。
  • ポーリングの動作:生成/編集のワークフローでは、バックエンドのジョブを待つ間、定期的にステータスをポーリングします(約 5 秒ごと)。これは想定された動作です。

ルーティング — まずユーザーの意図を特定する

ユーザーの意図使用する経路
トピック、要件、または参照ファイルをもとに新しい 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 を生成

手順
  1. 最初に必ず実行 — 他の操作を行う前に、今すぐ workflow_generate.md を読んでください。読み終えたら、正確に ✅ workflow_generate.md loaded. と出力してから次に進んでください。
  2. 環境チェック — 上記のチェックを実行して $PYTHON_CMD を取得します。
  3. 参照ファイルをアップロード(ユーザーがコンテンツソースとしてローカルファイルを提供した場合)— script/parse_file.py のツールでファイルを解析し、結果を --files に渡します。下記の --files に関する注記を参照してください。
  4. ウェブ検索(会話内に関連するコンテンツがない場合は必須)— script 内の web_search ツールを呼び出してトピックを検索し、結果を 2000 語以内の reference-file ファイルにまとめます。
  5. スクリプトを実行:

    重要:exec ツールの yieldMs を 600000(10 分)に設定してください。

  6. 納品 — .pptx の絶対パスとダウンロード URL を提示します。

レイヤー 2 — PPT を模倣(テンプレートベースの生成)

手順
  1. 最初に必ず実行 - 何らかの操作を行う直前に、すぐに workflow_imitate.md を読んでください!!!
  2. 環境チェック — 上記のチェックを実行して $PYTHON_CMD を取得します。
  3. テンプレートを特定 — ユーザーのメッセージからローカル .pptx の絶対パスを抽出します。不明な場合はユーザーに確認してください。
  4. テンプレートをアップロード — アップロードし、出力から TEMPLATE_URL を抽出します。
  5. 参照ファイルをアップロード(ユーザーが追加のローカルファイルをコンテンツソースとして提供した場合)— script/parse_file.py のツールでファイルを解析し、結果を --files に渡します。--files に関する注記を参照してください。
  6. ウェブ検索(会話内に関連するコンテンツがない場合は必須)— script 内の web_search ツールを呼び出して新しいトピックを検索し、結果を 2000 語以内の reference-file ファイルにまとめます。
  7. スクリプトを実行:

    重要:exec ツールの yieldMs を 600000(10 分)に設定してください。

  8. 納品 — .pptx の絶対パス、ダウンロード URL、および使用したテンプレートのファイル名を提示します。

レイヤー 4 — PPT の編集(AI による変更)

自然言語で既存の PPT を変更したい場合は、このレイヤーを使用します。PPTX の OSS/CDN URL(以前に生成したもの、またはアップロードしたもの)が必要です。

手順
  1. 詳細なワークフロー — 何らかの操作を行う直前に、workflow_edit.md を必ず読んでください!!!
  2. 環境の確認 — 上記の確認を実行して $PYTHON_CMD を取得します。
  3. PPTX URL の取得 — ユーザーのメッセージから取得するか、先にローカルファイルをアップロードします。
  4. スクリプトの実行 — --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
    

    重要:exec ツールの yieldMs を 600000(10 分)に設定してください。

  5. 成果物の提供 — ダウンロードリンク、ローカルパス、変更内容の概要を提示します。

レイヤー 3 — ローカルファイルの操作

# 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

操作を行う直前に、workflow_local.md を必ず読んでください!!!


エラー処理

  • 特典不足:スクリプト(generate、imitate、edit)の呼び出し時に、スクリプトまたはログに Insufficient benefit. Please upgrade your account at {url} のようなメッセージが表示される場合があります。これは、このスキルの利用要件をユーザーの特典レベルが満たしていないことを意味します。
特典が不足している場合の返信方法

上記を検出した場合は、ユーザーが現在使用している言語で返信してください。英語のメッセージをそのまま繰り返さないでください。次の形式を使用します。

  • 「申し訳ありません。PPT の生成に失敗しました。このスキルを利用するには、Skywork メンバーシップのアップグレードが必要です。」という内容と、1 つのリンクを提示します。
  • 形式:ユーザーの言語で短い文を 1 つ記述し、[今すぐアップグレード →](url) またはその言語に相当するリンクを付けます。
  • URL:ログまたはスクリプトの出力(例:at https://... の部分)からアップグレード URL を取得します。

注:アップグレードを提案するのは、エラーが Insufficient benefit の場合に限ります。NO_TOKEN/INVALID_TOKEN/401/「invalid API key」などの認証エラーの場合は、エラーコード/生のメッセージをそのまま保持し、ユーザーに SKYWORK_API_KEY の更新を案内してください。メンバーシップのアップグレードを提案してはいけません。


依存関係

  • Python 3.8 以降(必須)— python3/python が PATH 上にある必要があります
  • レイヤー 3 のローカル操作:pip install python-pptx --break-system-packages

(環境確認の手順で、必要な依存関係はすべて自動的にインストールされます。)


どのレイヤーを使用するか?

シナリオ使用するレイヤー
トピックまたは既存の参考ファイルから PPT を生成するレイヤー 1
既存の .pptx のレイアウト/スタイルを模倣するレイヤー 2
自然言語で既存の PPT を編集/変更するレイヤー 4
ローカルの .pptx ファイルを削除/並べ替え/抽出/結合する(バックエンドなし)レイヤー 3

コメント