mcpField
F
felo-slides

felo-slides

github.com/felo-incドキュメント2501.0k 回インストール14 週間前に更新
リポジトリ

felo-slides について

felo-slidesは、プロンプトやアウトライン、ローカルファイルからプレゼンテーションを作成するスキルです。Felo PPTのタスクを送信して状態を確認し、共有用リンクを返します。

主な機能

  1. 01テーマやアウトラインからPPTを生成
  2. 02ローカル画像や文書を入力に使用
  3. 03スライド枚数とPPTテーマを指定
  4. 04タスクの確認とタスクIDによる再開
  5. 05PPTまたはLive Docのリンクを返却

活用シーン

  1. 01メモからスライド資料を作成
  2. 02ローカルのPDFや画像からスライドを作成
  3. 03元画像をPPTに挿入
  4. 04タイムアウトした生成タスクを再開

インストール

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

$npx skills add https://github.com/felo-inc/felo-skills --skill felo-slides

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

同梱ファイル

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

clawhub.json
LICENSE
README.md
scripts/
run_ppt_task.mjs

詳細

Felo Slides スキル

使用する場面

プレゼンテーションファイルの作成に関するリクエストでは、このスキルを使用します。

  • トピックやアウトラインからスライドを作成/生成する
  • メモを PPT デッキにまとめる
  • ローカルの画像、PDF、ドキュメントからスライドを作成する
  • アップロードされた元画像を生成する PPT に挿入する
  • ページ数の要件に沿ってプレゼンテーションを作成する
  • プレゼンテーションの内容を共有可能なスライドリンクとしてエクスポートする

トリガーとなるキーワード:

  • スライドやプレゼンテーションの作成に関する中国語のプロンプト
  • 英語:slides、PPT、presentation deck、generate presentation
  • 明示的なコマンド:/felo-slides、"use felo slides"

このスキルを使用しない場面:

  • リアルタイムの情報検索(felo-search を使用)
  • ローカルのコードベースファイルに関する質問
  • スライド生成を必要としないテキストのみのタスク

セットアップ

1. API キーを取得する
  1. felo.ai にアクセスします
  2. Settings -> API Keys を開きます
  3. API キーを作成してコピーします
2. 環境変数を設定する

Linux/macOS:

export FELO_API_KEY="your-api-key-here"

Windows PowerShell:

$env:FELO_API_KEY="your-api-key-here"

実行方法

Bash ツールのコマンドを使用し、次のワークフローに正確に従ってください。

ステップ 1:API キーを事前確認する
if [ -z "$FELO_API_KEY" ]; then
  echo "ERROR: FELO_API_KEY not set"
  exit 1
fi

キーがない場合は、処理を停止してセットアップ手順を案内します。

ステップ 2:Node スクリプトを実行する(作成+ポーリング)

同梱のスクリプトを使用します(jq への依存はありません)。

node felo-slides/scripts/run_ppt_task.mjs \
  --query "USER_PROMPT_HERE" \
  --interval 10 \
  --max-wait 1800 \
  --timeout 60

ユーザーがローカルの画像またはファイルを提供した場合は、絶対パスを --file に渡します。プロンプトには、元のアセットをどのように使用するかを含めてください。例:

node felo-slides/scripts/run_ppt_task.mjs \
  --query "Create exactly 2 slides and place the uploaded original image directly in the PPT" \
  --file "/absolute/path/to/source.jpg" \
  --interval 10 \
  --max-wait 1800 \
  --timeout 60

ユーザーが元のファイルまたは画像を PPT に使用するよう明示的に求めている場合、--file をテキストによる説明に置き換えてはいけません。

特定のテーマを適用するには、まず felo ppt-themes で利用可能なテーマを一覧表示してから、テーマ ID を渡します。

node felo-slides/scripts/run_ppt_task.mjs \
  --query "USER_PROMPT_HERE" \
  --theme "THEME_ID_HERE" \
  --interval 10 \
  --max-wait 1800 \
  --timeout 60

スクリプトの動作:

  • POST https://openapi.felo.ai/v2/ppts でタスクを作成します
  • オプションの --file <path> を使用して、ローカルファイルを 1 つ multipart/form-data でアップロードできます
  • オプションの --theme <id> を使用して、PPT テーマを適用できます(ppt_config.ai_theme_id を送信します)
  • オプションの --livedoc-id <id> を使用して、新しい LiveDoc を自動作成する代わりに既存の LiveDoc を再利用できます
  • オプションの --task-id <id> を使用して、既存のタスクのポーリングを再開できます(作成はスキップします)
  • GET https://openapi.felo.ai/v2/tasks/{task_id}/historical でポーリングします
  • COMPLETED/SUCCESS を成功の終端ステータスとして扱います(大文字と小文字を区別しません)
  • FAILED/ERROR を失敗の終端ステータスとして扱います
  • 終端ステータスになったら、直ちにポーリングを停止します
  • 成功時に ppt_url を出力します(フォールバック:live_doc_url)

オプションのデバッグ出力:

node felo-slides/scripts/run_ppt_task.mjs \
  --query "USER_PROMPT_HERE" \
  --interval 10 \
  --max-wait 1800 \
  --json \
  --verbose

次の内容を含む構造化 JSON を出力します。

  • task_id
  • task_status
  • ppt_url
  • live_doc_url
  • livedoc_short_id
  • ppt_business_id
  • error_message
ステップ 3:終端ステータスを確認する

スクリプトは履歴エンドポイントを自動的にポーリングします。応答する前に、スクリプトの終了を待ってください。

  • 成功:終端ステータスが COMPLETED または SUCCESS で、スクリプトが ppt_url を出力します(フォールバック:live_doc_url)
  • 失敗:終端ステータスが FAILED または ERROR の場合は、以下のエラー形式を返します
  • タイムアウト:task_id を含め、PPT タスクを重複して作成しないよう --task-id で再開するようユーザーに伝えます
ステップ 4:構造化された結果を返す

成功時は、次を返します。

  • ppt_url(スクリプトのデフォルト出力。フォールバックは live_doc_url)
  • --json を使用した場合は、task_id、終端ステータス、任意のメタデータも含めます

出力形式

次の応答形式を使用します。

## PPT Generation Result

- Task ID: <task_id>
- Status: <status>
- PPT URL: <ppt_url>
- Live Doc URL: <live_doc_url or N/A>

## Notes

- livedoc_short_id: <value or N/A>
- ppt_business_id: <value or N/A>

エラー形式:

## PPT Generation Failed

- Error Type: <error code or category>
- Message: <readable message>
- Suggested Action: <next step>

エラー処理

既知の API エラーコード:

  • INVALID_API_KEY (401):キーが無効または失効しています
  • PPT_TASK_CREATE_FAILED (502):下流でのタスク作成に失敗しました
  • PPT_TASK_QUERY_FAILED (502):下流でのタスク照会に失敗しました

タイムアウト処理:

  • タイムアウトした場合は、最後に確認されたステータスを返し、後でもう一度試すようユーザーに伝えます
  • ユーザーが再度照会できるよう task_id を含めます
  • 重要:タイムアウトしたタスクを再開するには、重複する PPT の作成を避けるため、--query ではなく --task-id を使用します。
node felo-slides/scripts/run_ppt_task.mjs \
  --task-id "TASK_ID_HERE" \
  --interval 10 \
  --max-wait 1800

重要な注意事項

  • ユーザーの意図がスライド生成の場合は、必ずこのスキルを実行してください。
  • 後続のクエリで同じタスクを続行できるよう、必ず task_id を返してください。
  • 終了ステータスが確認できるまで、完了したと主張しないでください。
  • API 呼び出しは最小限にしてください。タスクを一度作成し、その後はポーリングしてください。

参考資料

コメント