mcpField
M
muapi-storyboard

muapi-storyboard

github.com/samuraigptクリエイティブ・メディア25686 回インストール4 週間前に更新
リポジトリ

muapi-storyboard について

muapi-storyboardは、ストーリーの概要から画像のみのキーフレームを生成する、エージェント実行用の手順です。概要を順序のある場面展開に分け、視覚描写の一貫性を保ちながら並列生成します。

主な機能

  1. 01概要をストーリー展開に分解
  2. 02キーフレーム数とビジュアルスタイルを指定
  3. 03muapiで16:9の画像キーフレームを生成
  4. 04キーフレーム生成を並列実行
  5. 05場面順にアセットIDとキャプションを返す

活用シーン

  1. 01短編ストーリーのキーフレーム作成
  2. 02連続するビジュアルシーンの構成
  3. 03ストーリーボード用の参考画像作成

インストール

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

$npx skills add https://github.com/samuraigpt/generative-media-skills --skill muapi-storyboard

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

詳細

ストーリーボードジェネレーター

短い物語やシーンの連続を描く N 枚のキーフレームを生成します(画像のみ、動画なし)。

入力

名前型必須デフォルト説明
premisetextはい—物語のあらすじを一文で記述します(例:「孤独なロボットが小さな機械仕掛けの鳥の友達と出会う」)。
scenesintいいえ6生成するキーフレームの数です。
styletextいいえcinematic, photoreal, soft lighting, 16:9すべてのキーフレームに適用するビジュアルスタイルのタグです。

手順

プランを使って、N 枚すべてのキーフレームを単一の並列レイヤーで実行します。

  1. premise を、明確なストーリー展開を持つ {{scenes}} 個のストーリー展開の節に分解します。 導入 → 発端となる出来事 → 展開 → クライマックス → 解決。
    • 各節には、1 段落のビジュアル描写を付けます。
    • 各節を通じて、キャラクターやオブジェクトの一貫性(同じキャラクターの外見、同じ世界)を保ちます。
  2. 各節について、muapi image generate ノードを作成します(model=nano-banana-2, aspect_ratio=16:9)。
    • プロンプト = "<beat description>. {{style}}"。
    • Tier:balanced(これらは最終版ではなく、参照用のキーフレームです)。
    • アスペクト比:16:9。
  3. プランを並列で実行します(キーフレーム間に depends_on を設定しません)。
  4. アセット ID を節の順に、各シーンのキャプションを一行ずつ添えて返します。

メモ

  • アニメーション化、アップスケール、音声の追加はしないでください。このスキルで扱うのはキーフレームのみです。 ユーザーが動画を希望する場合は、その後に music-video スキルを提案してください。
  • 一貫性を保つため、モデルの記憶に頼るのではなく、すべてのプロンプトでキャラクターの説明(「a small rusty humanoid robot with…」)を一字一句そのまま繰り返してください。

トリガーキーワード

storyboard、keyframes、scene sequence、story panels


実行エージェント向けのメモ

  • このレシピは LLM がオーケストレーションします。各フェーズを読み、ユーザーから不足している入力を確認してから、muapi CLI コマンドを呼び出します。MUAPI_API_KEY が未設定の場合は、まず muapi auth configure を使用してください。
  • CLI エイリアスがまだないモデル ID の場合は、curl -X POST https://api.muapi.ai/api/v1/<endpoint> -H "x-api-key: $MUAPI_API_KEY" -H 'content-type: application/json' -d '{...}' で生のエンドポイントにフォールバックし、muapi predict wait <request_id> でポーリングしてください。
  • 各呼び出しの実行前に、{{input_name}} プレースホルダーをユーザーの実際の入力に置き換えてください。

コメント